内网渗透之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模块时,笔者观察到有几个弊端。

1session 很容易died

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

3无法利用成功

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

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

参考资料:

萌新初试MS17-010方程式漏洞

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

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

对于windows server 2008 ,msfvenom生成x64dll文件

msf配置

将该x64dll替换到方程式利用工具下面。

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

对于windows server 2003 ,msfvenom生成x86dll文件

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,读取管理员密码。

自从powershell在windows开始预装之后,就成为Windows内网渗透的好帮手,好处多多:天生免杀、无文件落地、 无日志(雾) 。

于是老外开发了 empire 框架,毕竟 cobalt strike 要收费的不是?

功能模块丰富,老外把内网[域]渗透中能用到的都整合进去了:内网探测,提权,凭据获取,横向移动,权限维持。模块那么多,不懂就 searchmodule 或者[tab]两下。

基于 debian 系的,如kali或者ubuntu都可以安装。

git clone >

攻击机:kali 2020(192168107129)

DC:Windows Server 2012 R2(192168107137)

msf已成功通过msf获取到DC的shell

刚获取的shell为普通用户权限,需要进行提权,然后获取hash

直接使用getsystem失败,使用ps命令查看当前进程及运行用户权限

可以看到所运行的进程皆为普通用户权限

这里为了方便,直接使用msf提供的模块,用于快速识别系统中可能被利用的漏洞:

具体原理参考: BypassUAC------使用EVENTVWREXE和注册表劫持实现“无文件”UAC绕过

成功绕过UAC获取shell:

通过进程注入获取system权限,并获取hash

原理:

哈希传递攻击是基于NTLM认证的一种攻击方式。哈希传递攻击的利用前提是我们获得了某个用户的密码哈希值,但是解不开明文。这时我们可以利用NTLM认证的一种缺陷,利用用户的密码哈希值来进行NTLM认证。在域环境中,大量计算机在安装时会使用相同的本地管理员账号和密码。因此,如果计算机的本地管理员账号密码相同,攻击者就能使用哈希传递攻击登录内网中的其他机器。

哈希传递攻击适用情况:

在工作组环境中:

在域环境中:

Metasploit下面有3个psexec模块都可以进行Hash传递利用

第一个模块(auxiliary/admin/smb/psexec_command):

缺点:只能运行单条命令,不支持网段格式批量验证

优点:奇怪的是其他普通用户的hash也可以执行系统命令,这个模块可能不属于hash传递的范畴?这个坑以后再来解,我太菜了,望大佬指点~

设置命令的时候可以配合exploit/multi/script/web_delivery从而获取meterpreter

在上面进行Hash传递的时候,只要后面的NTLM Hash是正确的,前面填写什么都是可以顺利登陆成功的。

第二个模块(exploit/windows/smb/psexec):

利用条件:

优点:该模块支持网段格式批量验证,成功后可直接获取meterpreter且为system权限,在实战中优先使用

第三个模块(exploit/windows/smb/psexec_psh):

使用powershell作为payload。这个模块也支持网段批量验证,这里就不再赘述了

当我们获得了内网中一台主机的NTLM哈希值,我们可以利用mimikatz对这个主机进行哈希传递攻击,执行命令成功后将会反d回cmd窗口

mimikatz中pth功能的原理:

windows会在lsass中缓存hash值,并使用它们来ntlm认证,我们在lsass中添加包含目标账号hash的合法数据结构,就可以使用类似dir这些命令进行认证

目标主机:192168107140

domain:SWS-PC

执行后会d出cmd,执行以下命令即可远程连接:

创建计划任务反dshell:

理论上来说是可行的,win7复现的时候,任务一直在运行,就是没结束,我也是醉了

当然这里使用powershell远程加载也是可以的,但由于环境因素无法复现

前提条件:获取到的beacon为system权限,user中带有号的用户

在得到一个beacon的基础上,先在该网段portscan,探测存活主机后

选择View-->Target-->Login-->psexec,可批量选择主机pth

个人觉得还是Msf好用,成功率更高一些

项目地址: >

以上就是关于内网渗透之ms17-010全部的内容,包括:内网渗透之ms17-010、用Powershell框架Empire进行内网域渗透(一)、Windows之hash利用小结等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址:https://54852.com/web/9490737.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存