内网渗透之ms17-010

内网渗透之ms17-010,第1张

在内网渗透时,通常挂上代理后。在内网首先会打啵ms17-010。在实战中,使用msf的ms17-010模块,数次没有反d成功。基于此,到底如何成功利用ms17-010

在msf成功接收session之后,添加路由

然后使用ms17-010相关的模块进行探测是否存在该漏洞

尝试利用

LHOST配置为公网IP

可以看到success。漏洞是可以利用的,但始终没有session。不知道什么原因。

参考资料: 利用公网Msf+MS17010跨网段攻击内网

笔者在本地搭建环境,也是同样的结果。尝试更改payload为

bind_tcp攻击者去连接,容易被防火墙和杀毒发现

可以成功生成session,但并不稳定,且在run的过程中非常容易导致本来的session died

在实际使用msf的ms17_010_eternalblue模块时,笔者观察到有几个弊端。

1.session 很容易died

2.ms17_010_eternalblue模块利用起来非常耗时

3.无法利用成功

有大佬推荐使用原始的fb.py。但配置起来感觉麻烦一些。

所以。笔者从i春秋上找到一个轻便的方程式漏洞利用工具。

参考资料: 萌新初试MS17-010方程式漏洞

工具使用起来很简单。只需要msfvenom生成一个x64或x86的dll文件,替换该工具下的x64.dll或x86.dll 。再依次点击Eternalblue、Doublepulsar 的Attack即可。在Attack的时候,调用x64.dll动态链接库,反d到公网IP。原理和fb.py一样。

笔者通过ew代理进内网后,在跳板机上上传了方程式漏洞利用工具、网安永恒之蓝检测工具。两者结合,威力巨大。成功利用ms17-010

对于windows server 2008 ,msfvenom生成x64.dll文件

msf配置

将该x64.dll替换到方程式利用工具下面。

只需要更换目标的IP,就可以获取session。

对于windows server 2003 ,msfvenom生成x86.dll文件

msf配置

进一步利用的一些命令

实际测试发现这种session非常稳定。不会轻易go die

实际测试server 2003的ms17-010时,有时候多次执行后msf就接收不到session,而且ms17-010利用时,脆弱的server 2003非常容易蓝屏。

所以笔者选择一种稳定可靠一些的办法。

先通过ms17_010_commend模块执行系统命令添加用户至管理员。再指定SMBPass和SMBUser来建立windows可访问命名管道[accessible named pipe]

参考资料 Metasploit 「永恒之蓝」两种模块的利弊

system的权限可以直接激活guest用户添加管理员组。

注意:使用ms17_010_psexec需要指定管理员的用户名、密码,否则没有session

同样的 *** 作,载入mimikatz,读取管理员密码。

Nmap :端口扫描探测工具,用于探测端口开放情况,本次使用其端口扫描和漏洞扫描功能

mestasploit :开源的渗透测试框架软件、综合型漏洞利用工具,本次实验使用其漏洞利用模块、meterpreter组件

漏洞原理简述

MS17-010漏洞出现在Windows SMB v1中的内核态函数 srv!SrvOs2FeaListToNt 在处理 FEA (File Extended Attributes)转换时,在大非分页池(Large Non-Paged Kernel Pool)上存在缓冲区溢出。

函数 srv!SrvOs2FeaListToNt 在将 FEA list转换成 NTFEA (Windows NT FEA) list前会调用 srv!SrvOs2FeaListSizeToNt 去计算转换后的FEA lsit的大小,因计算大小错误,而导致缓冲区溢出。

曾经NSA工具箱泄露时,我们已经对永恒之蓝这个工具的使用做过讲解! 【NSA黑客工具包】Windows 0day验证实验 。

然而,该工具的使用环境比较苛刻,而且 *** 作较为复杂,现在msf已经加入该系列工具,使用方法更便捷。接下来,就开始 *** 作吧!

打开Kali终端,使用Nmap对目标机开放端口进行扫描

目标机开放了 135 139 445 3389 等端口,且目标机系统为Windows7,

我们使用用扫描模块,判断该漏洞是否可利用

终端内输入

打开 metasploite 命令行客户端,使用 search 命令查找ms17-010漏洞的相关模块

如下是相关可用模块

使用 use 命令选择我们要使用的扫描模块

在运行该模块之前,需要设置相关选项,我们使用 show options 查看配置信息

需要设置目标地址,设置命令:

设置完成后,执行 run 或 exploit 命令,等待执行结果

从上一步骤可以看出,该漏洞是可被利用的,接下来,我们祭出漏洞利用模块

步骤同上,查看配置信息,并设置标记为yes的属性

show options

目标机host地址:172.16.12.2

set RHOST 172.16.12.2

之后,选择载荷 payload ,也就是 shellcode ,此处我们选择回连至控制端 shell 的 payload

同样,载荷也需要进行配置, show options 查看配置信息

配置中缺少本地主机 RHOST,设置一下

完成配置后,运行 exploit 或者 run ,开始执行漏洞利用模块

成功获取来自目标主机的Session会话

我们已经成功的获取Session会话了,本次我们继续介绍meterpreter后渗透模块的其他功能

运行 sysinfo 查看目标机器相关信息

执行 help 命令可以帮助我们了解meterpreter有哪些功能

接下来,我们获取目标机hash值

执行 hashdump

mimikatz 是一个知名的密码提取神器。它支持从Windows系统内存中提取明文密码、哈希、PIN码和Kerberos凭证等, meterpreter 中正集成了这款工具。

执行 load mimikatz 即可加载该工具,其命令与 mimikatz 一样

运行命令 msv ,导出hash

然后执行 kerberos 即可获得目标机账号密码

获取了目标机的账号密码,我们结合nmap的扫描结果,可以远程登陆目标机 但是现实中,防火墙一般会拦截外来3389端口的访问请求,这种情况下该怎么解决呢?

我们可以使用端口转发工具,将端口转发到访问者本地机器的某个端口,从而进行连接

运行命令

此处,我们将远程目标的3389端口,转发到本机 172.16.11.2的3389上

如此,我们只要执行

即可登陆远程目标机器

通过本次实验,我们熟悉了从发现漏洞、到验证漏洞、再到利用漏洞这一过程,并进一步学习了Metasploit的后渗透模块的其他使用案例。

通过结合实例去学习MSF的使用,反复训练,相信大家一定能熟能生巧,彻底掌握这一工具。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11836342.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存