对windows explorer的一点探讨

这里纪录的是历程...有点乱,发现什么就写了什么,没啥顺序,建议直接看行使思绪

想法来自于用clsid修改文件夹从而获得一个新图标的应用时,好比接纳站.{645FF040-5081-101B-9F08-00AA002F954E}会获得一个接纳站,但查看文件夹属性的时刻照样可以看到它的名称为我们命名的名称,最先很疑惑,最近com接触的对照多,举行了点剖析,也许懂发生了什么。

automaticDestinations-ms

“跳转列表”在Windows 7中引入的文件类型,包罗最近打开的项目的快捷方式,可能是一个文字处置器最近接见的文档,用于图像编辑器或其他最近使用的项目的图像文件,可以从接见牢靠的应用程序在义务栏上近期部门(右键单击牢靠项目和浏览近期部门)。
AUTOMATICDESTINATIONS -MS文件被保留到C:\Users\用户名\AppData\Roaming\Microsoft\Windows\Recent\AutomaticDestinations

explorer的运行似乎很依赖于注册表,

先是查找了这两个注册表项
HKCU\Software\Classes\CLSID\{645FF040-5081-101B-9F08-00AA002F954E}
盘算机\HKEY_CLASSES_ROOT\CLSID\{645FF040-5081-101B-9F08-00AA002F954E}

判断是文件夹后还用了以下下令去提前获取目录下所有文件

  • queryopen 文件
  • querydirectory 文件夹 列出了文件夹下文件

另有个679F85CB-0220-4080-B29B-5540CC05AAB6似乎是牢靠到主菜单的com组件

然后有一段复读queryopenkey去找不存在的键值,找不到就queryclosekey,然后隔一段又继续复读,真受不了windows程序员了...

然后四处找相关的内容,好比name,instance,command,inprocserver32之类的,像是爆破目录一样,确定这个clsid有什么作用以及执行的方式

顺藤摸瓜找到了它在寻找的器械

  • {a015411a-f97d-4ef3-8425-8a38d022aebc} ---clsid find-executable ----我的电脑
  • {48527bb3-e8de-450b-8910-8c4099cb8624} ---Empty Recycle Bin verb invocation ----接纳站

凭证名字预测应该是某种寻找欲执行的clsid的器械

打开则与这个有关

  • 盘算机\HKEY_CLASSES_ROOT\Folder\shell\opennewprocess\command
  • 盘算机\HKEY_CLASSES_ROOT\Folder\shell\opennewtab\command

都指向这个com组件

  • {11DBB47C-A525-400B-9E80-A54615A090C0} --CLSID_ExecuteFolder ---explorer

然后在注册表中explorer的功效点

  • 盘算机\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\这是在我的电脑中显示的内容
  • 找到个百度网盘的clsid,{679F137C-3162-45da-BE3C-2F9C3D093F64}
  • 盘算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FolderTypes\存了文件类型
  • ::{031E4825-7B94-4dc3-B131-E946B44C8DD5} ParsingName
  • Master Control.{ED7BA470-8E54-465E-825C-99712043E01C}
  • 盘算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Desktop\NameSpace\桌面显示

在看接纳站的注册表时,惊讶的发现接纳站的注册内外有第三方软件的器械?!要知道接纳站等系统组件的权限到了Trustinstaller,纵然提到system人家也不认,于是力争百度,找到了前人写的修改Trustinstaller注册表的代码,读了一遍,才想起拿到SeBackupPrivilege,SeRestorePrivilege就具备了修改本盘算机上所有文件的权限...事实注册表也算是文件目录。不能活学活用就会遗忘...

以是实在提到admin,开启两个特权,应该就能最先胡作非为了。

行使思绪

explorer能自动执行是预测的,由于之前在修改文件名为谁人有问题的clsid后(dlna,貌似在win10被 *** 了,以是在启动时会导致溃逃),不仅是打开会溃逃,加载当前目录,或者上级目录,也会导致溃逃(详细几级目录会溃逃纷歧定),以是预测是为了提升加载速率提前加载目录下的文件

其次,它原本想自动执行是由于这些clsid对应的实在算是特殊文件夹,通过::{645FF040-5081-101B-9F08-00AA002F954E}这种花样就能执行,详细参照微软文档说明 微软文档传送门。然则我们也能这样去执行我们的dll。

以是思绪就回到了若何执行我们的dll身上,也就是要让它能剖析我们的恶意dll的clsid,我稍微查了一下::{clsid}这种花样的下令有什么用,它来自于IShellFolder的ParseDisplayName,用于剖析这种::{clsid}路径。

我们说是需要挪用函数自己造一个shellfolder,但实在我们对比注册表的同异,发现多的就是clsid下一个shellfolder的项,通用的是内里有个attributes的值,虽然每个shellfolder的attributes值都差异,但我们随便选了一个填了个相同的,就能够剖析了。

,

usdt支付接口

菜宝钱包(www.caibao.it)是使用TRC-20协议的Usdt第三方支付平台,Usdt收款平台、Usdt自动充提平台、usdt跑分平台。免费提供入金通道、Usdt钱包支付接口、Usdt自动充值接口、Usdt无需实名寄售回收。菜宝Usdt钱包一键生成Usdt钱包、一键调用API接口、一键无实名出售Usdt。

,

总结步骤:

  1. 盘算机\HKEY_CLASSES_ROOT\CLSID\下确立一个唯一无二的clsid(就相当于regsvr32注册clsid,然则用regsvr32注册还得自己找)
  2. 确立InProcServer32(注册表貌似没有巨细写区别,然则最好照样按尺度来),默认值填我们dll的路径,再天生一个字符串值ThreadingModelApartiment(另有个值是Both,暂不清晰区别)
  3. 确立ShellFolder项,和一个Attributes值。Attributes随便填一个
  4. 复制这些注册表项到HKCU\Software\Classes\CLSID\下(似乎会默认复制已往,修改一边另一边也会同步修改保持一致,若是没有照样自己手动改一下,搜索键值的时刻会优先搜索这个注册表目录)
  5. 通过几个方式执行clsid来执行我们的恶意dll

注册表项

几种执行方式

  • 新建文件夹,后缀改为.{对应clsid},就会在点击文件夹的时刻用rundll32执行我们的dll


找到了我们指定的clsid


用rundll32执行dll

  • explorer路径栏输入shell:::{clsid}或者直接在启动中输入explorer.exe /e,::{clsid}

  • library-ms,windows库文件

结构如下,是个xml花样文件

修改或者增添一个这个区域

<searchConnectorDescription>
      <description>@shell32.dll,-34577</description>
      <isDefaultSaveLocation>true</isDefaultSaveLocation>
      <isSupported>true</isSupported>
      <simpleLocation>
        <url>shell:::{00000000-0000-0000-0000-000000000002}</url>
      </simpleLocation>
    </searchConnectorDescription>

放在目录下就能自动加载了

  • 添加到盘算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace下,它就会在explorer首页泛起这个目录

效果如下,然则不能和shellfolder重合,也就是没有shellfolder这个项才会显示

  • 再狠一点可以挪用IKnownFolderManager::RegisterFolder造一个knownfolder

这是个com组件,提供了RegisterFolder挪用方式,可以造一个目录放在explorer的侧边栏,同样也可以指向我们的dll,我猜也可以自己改注册表到达效果,但还没研究历程。

综上,我以为这种这种权限维持的方式照样有点意思的,一是能自动执行,二是图标和目录名都能自己控制,三是能放在一样平凡人不上心或者不太小心的位置。

注重,由于explorer默认权限是用户权限,以是explorer加载后门dll时用的也是用户权限,照样需要一步提权步骤。

虽然rundll32执行了,然则我自己在dll_process_attachdll_thread_attach中写的winexec执行cmd和calc都没有弹窗出来..不知道发生了啥,然则确实能够执行,还能找到由explorer.exe天生的dllhost.exe历程。

rundll32直接执行我的dll也不会弹窗...要跟一个参数才气弹窗,感受是自己编写的dll的问题,暂时不知道怎么修改。rundll32另有-sta {clsid}参数可以自动搜索注册表中对应的clsid的localserver32和InProcServer32中的dll地址执行。

其他想法

有一说一这个思绪有点像dll挟制,然则也差异,事实是确立自己的目录,行使它来加载。

但我做的时刻看到其他文件就在想,挟制已存在的不也可以么

事实证实确实可以,修改对应的com组件的InProcServer32为我们的就行了。然则最好不要挟制常用组件,好比上文经常用到的接纳站recycle bin,最好选择一些冷门的组件来挟制。

所需要的com组件都在HKCU下修改即可,以是本机用户都有权限修改,更别说可以提权到system来执行系列操作了。

想法plus:既然explorer加载的com可以挟制,那么其他应用加载的com组件也可以挟制,好比我看到有项目挟制outlook的,也就是义务栏常驻的谁人邮箱。照样那句话,剧本是死的,方式是活的;明白变通。

IPFS矿机挖矿

IPFS矿机挖矿官网(www.ipfs8.vip)是FiLecoin致力服务于使用FiLecoin存储和检索数据的官方权威平台。IPFS官网实时更新FiLecoin(FIL)行情、当前FiLecoin(FIL)矿池、FiLecoin(FIL)收益数据、各类FiLecoin(FIL)矿机出售信息。并开放FiLecoin(FIL)交易所、IPFS云矿机、IPFS矿机出售、租用、招商等业务。

Allbet Gaming声明:该文看法仅代表作者自己,与本平台无关。转载请注明:filecoin交易所(www.ipfs8.vip):通过explorer.exe的后渗透权限维持
发布评论

分享到:

Allbet Gaming

Allbet Gaming微信:8888

被马云丢球「我一天赚191亿,你呢?」 周星驰回答彼此差异超绝!
1 条回复
  1. USDT不用实名
    USDT不用实名
    (2021-05-27 00:00:57) 1#

    环玮康健科技董事长邱平然(左)接任警友会大甲做事处主任。 无聊了看这个呗

发表评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。