玩转Metasploit系列(第六集)


发布人:admin分类:网络安全浏览量:47发布时间:2017-12-12

首先感谢大家对公开课的支持~公开课将持续更新,希望能给大家带来帮助~

Msfpayload和Msfvenom两个都是payload的生成器,但是msfpayload将会被Metasploit团队放弃研发和更新,转而对msfvenom进行研发。所以说,msfvenom是一个比msfpayload更高级的payload生成器。但是在中国,有大量的msfpayload的用户,所以我今天两个生成器都会讲到。 

Msfpayload

O参数

‍‍这个参数显示payload的一些信息。但是我这里居然出现了乱码。。。不过这个参数也没多大用处。‍‍‍‍

 

输出原始数据参数

‍‍大家看看下面这行代码。如果要输出原始的exe数据,那么就需要用到E参数。如果要输出原始的python数据,那么就需要用到N参数。这么说大部分可能还不太理解。我再说的通俗一点。如果你生成的payload后缀为py,那么肯定属于python类型的payload。那么在对payload进行编译的时候,就需要用到N参数。

‍‍如果是‍‍PHP类型的payload,那么需要用到R参数。可能有人就会问了,R参数不是应该对应RAW类型的payload么。RAW的意思就是未经过处理的代码,一般来说,R参数是个万能参数,既可以用在php上,也可以用在exe上等等。如果你后期还要对payload进行多次的编辑,那么建议你使用R参数‍‍。

‍‍大家对应下面的编码查找就行了。‍‍‍‍‍‍

[H]arp
[P]erl
Rub[Y]
[R]aw
[J]s
e[X]e
[D]ll
[V]BA
[W]ar
Pytho[N]

Msfencode

‍‍这个可不是什么payload生成器,这个属于编码器,并且要和msfpayload配合使用。

‍‍先说说参数部分。‍‍‍‍

-a 这个主要是说编码过程中对于操作系统的位数进行精密的编码。如果我要把生成的payload适用于32位操作系统,那么就输入 –a x86

-b 输入这个参数可以在生成payload当中去掉一些空代码或者是错误代码。比如-b \x00\xff。
 
-c 这个属于编码的次数。有时候,我们会用这个参数进行多次编码达到免杀的效果。
 
-d 这个东西我还真不知道。。。它的意思是在从一个目录中使用一个exe程序的模版。应该在生成exe类型的payload的时候会使用到,知道的麻烦告诉一声。
 
-e 这个参数的意思就是使用编码器。
 
-i 这个参数的意思是把payload附加到一个可执行文件。如果你已经生成一个payload,那么你可以使用-i参数把你的payload移植到一个正常的程序。比如:msfencode -i shell.exe –x qq.exe 这个命令就是说我把一个叫做shell.exe的后门添加到了一个叫做qq.exe的软件里面。
 
‍‍-k 如果你使用了-x和-k参数。当你的payload运行后,它会从原始的主文件中分离出来,单独创建一个进程,并且运行。这个也是一个免杀的思路。
 ‍‍
‍‍-l 这个可以查看你目前可以使用哪些编码器
 ‍‍
‍‍-m 这个我不知道。。。。。。知道的麻烦告诉一声。‍‍

-n 这个主要是显示编码器的一些信息。‍‍‍‍
 
‍‍-o 这个是输出payload的位置
 
‍‍‍‍-p 这个是写一下payload是在什么平台上运行,比如说是windows还是linux。‍‍
 ‍‍
‍‍-s 这个可以写一下payload生成的时候最大是多少,比如20KB,还是30KB之类的。‍‍
 
‍‍-t 这个是输出的格式。‍‍
 
‍‍-v  这个是增加代码的冗长,主要还是用在免杀。‍‍
 
‍‍-x 这个是对某一个软件附加payload的选项。比如msfencode -i shell.exe –x qq.exe 这个命令就是说我把一个叫做shell.exe的后门添加到了一个叫做qq.exe的软件里面。

‍‍‍Msfpayload和Msfencode配合生成payload‍‍‍

‍‍‍‍

msfpayload windows/x64/meterpreter_bind_tcp R | msfencode -a x64 -e cmd/powershell_base64 -c 10 -t exe -x /1.exe -k -o 2.exe

 这个是我生成payload的一个指令,大家可以分析一下。

‍‍‍

1.       首先是使用msfpayload 选择了一个payload,这个payload是windows/x64/meterpreter_bind_tcp。
2.       随后使用了R参数把这个payload进行原始化的输出。
3.       之后又添加了一个|转到msfencode。
4.       使用-a x64让这个payload可以在64位系统里运行。
5.       再使用-e 选择一个编码器,我选择的是cmd/powershell_base64。
6.       随后使用-c 10,让这个编码器对原始的payload进行10次编码。
7.       随后使用-t exe确定输出的payload为exe格式。
8.       再使用-x /1.exe,让payload附加在一个1.exe的正常软件上。
9.       随后在使用-k参数。当payload执行之后,会自动创建一个教程,与原本被绑定的软件的教程分离开。
10.   最后使用-o 2.exe,把这个payload保存为一个叫做2.exe的可执行文件。

‍‍‍‍‍‍‍‍我随后把payload上传到了window平台进行测试。‍‍

‍‍在前面3分钟的时间里,不管我怎么扫描都没有任何反应。当我使用metasploit进行连接时,立马就被杀了。。。。看来360有时候还是可靠的,应该是采用了行为查杀技术‍‍。

 

Msfvenom

‍‍‍‍‍‍这个是Metasploit官方团队推出的全新的payload生成器。个人感觉比msfpayload和msfencode好用多了。Msfvenom不仅把msfpayload和msfencode进行了结合,还添加了很多东西。还是老样子,先说说参数部分。‍‍‍‍‍‍

-p 这个是选择你要加载的payload
 
-l 列出所有的payload,encoder和nops。
 
-n 设置nopsled的大小,常用于ROP类型的payload。这种payload可以绕过操作系统的DEP保护。
 
-f 这个和msfencode里面的-t参数相同,但是比msfencode强大多了。Msfvenom提供两种格式的输出。

第一种是可执行格式(Executable formats):‍‍这个格式包括:

asp, aspx, aspx-exe, dll, elf, elf-so, exe, exe-only, exe-service, exe-small, loop-vbs, macho, msi, msi-nouac, osx-app, psh, psh-net, psh-reflection, psh-cmd, vba, vba-exe, vbs, war。

‍‍

第二种是可转换格式(Transform formats):‍‍这个格式包括:

bash, c, csharp, dw, dword, hex, java, js_be, js_le, num, perl, pl, powershell, ps1, py, python, raw, rb, ruby, sh, vbapplication, vbscript

‍‍‍‍‍

Msfvenom不仅增加了更多的输出的格式,同时也把这些格式做了分类。

-e 这个参数的意思就是使用编码器。
‍‍ 
-a这个主要是说编码过程中对于操作系统的位数进行精密的编码。如果我要把生成的payload适用于32位操作系统,那么就输入 –a x86
 
--‍‍platform这个是写一下payload是在什么平台上运行,比如说是windows还是linux。
‍‍ 
‍‍-s这个可以写一下payload生成的时候最大是多少,比如20KB,还是30KB之类的。
‍‍ 
‍‍-b输入这个参数可以在生成payload当中去掉一些空代码或者是错误代码。比如-b \x00\xff。
 ‍‍
‍‍-i这个参数属于编码的次数。有时候,我们会用这个参数进行多次编码达到免杀的效果。‍‍
 
-c 这个参数可添加一个win32的payload到一个你正在创建的payload当中。
 
‍‍-x这个是对某一个软件附加payload的选项。这个和msfencode里面的-x相同。
 
‍‍‍‍-k如果你使用了-x和-k参数。当你的payload运行后,它会从原始的主文件中分离出来,单独创建一个进程,并且运行。这个也是一个免杀的思路。
 
‍‍‍‍-o 输出payload的位置‍‍
 
-v 这个是对输出格式的自定义变量设置。个人建议不要进行使用,除非你要大批量生成payload。

‍‍‍‍我在这里看到一个人写的关于使用msfvenom 做免杀,感觉思路很不错,大家可以看看。链接1,链接2

附上作者微博账号:Arthur  ‍欢迎美女和汉子们关注私信~

* 作者/Arthur,整理/FreeBuf小编banish,应作者要求,未经允许!


被黑站点统计 - 文章版权1、本主题所有言论和图片纯属会员个人意见,与本文章立场无关
2、本站所有主题由该文章作者发表,该文章作者与被黑站点统计享有文章相关版权
3、其他单位或个人使用、转载或引用本文时必须同时征得该文章作者和被黑站点统计的同意
4、文章作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任
5、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
6、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
7、被黑站点统计管理员有权不事先通知发贴者而删除本文

免责声明

本站主要通过网络搜集国内被黑网站信息,统计分析数据,为部署安全型网络提供强有力的依据.本站所有工作人员均不参与黑站,挂马或赢利性行为,所有数据均为网民提供,提交者不一定是黑站人,所有提交采取不记名,先提交先审核的方式,如有任何疑问请及时与我们联系.

admin  的文章


微信公众号

微信公众号


Copyright © 2012-2022被黑网站统计系统All Rights Reserved
页面总访问量:21464040(PV) 页面执行时间:89.43(MS)
  • xml
  • 网站地图