kleiton0x00/ppmap

GitHub: kleiton0x00/ppmap

基于 Go 的客户端原型链污染扫描工具,自动检测并利用已知 gadget 链实现 XSS 攻击。

Stars: 519 | Forks: 74

# ppmap ![markdown_statistic](https://img.shields.io/github/downloads/kleiton0x00/ppmap/total) 一个用 GO 编写的简单扫描/利用工具,通过自动利用已知且现有的 gadgets(检查全局上下文中的特定变量)来执行 XSS via Prototype Pollution。注意:该程序仅利用已知的 gadgets,不涉及代码分析或任何高级的 Prototype Pollution 利用,这可能包括自定义 gadgets。 ## 环境要求 确保已安装 Chromium。不用担心,**setup.sh** 会自动为您安装。 ## 安装说明 - 运行以下命令克隆仓库: ``` git clone https://github.com/kleiton0x00/ppmap.git ``` - 切换到 ppmap 目录并执行 **setup.sh**: ``` cd ppmap/ && bash setup.sh ``` 搞定。尽情使用 ppmap 吧! - 注意:如果您在手动编译或安装过程中(出于某些原因)遇到错误,可以下载预编译的版本: - 在此处下载已编译的二进制文件 [here](https://github.com/kleiton0x00/ppmap/releases) - 赋予其执行权限 ```chmod +x ppmap``` ## 使用方法 使用该程序非常简单,您可以: - 扫描一个目录/文件(甚至只是网站本身): ```echo 'https://target.com' | ppmap``` - 或 endpoint: ```echo 'http://target.com/something/?page=home' | ppmap``` 批量扫描: ``` cat url.txt | ppmap``` 其中 **url.txt** 按列包含所有 url。 ## 演示 ![](https://i.imgur.com/05nvfwX.gif) 请随意在以下网站上测试该工具,作为演示的一部分,并以此检查软件是否正常工作: https://msrkp.github.io/pp/2.html https://ctf.nikitastupin.com/pp/known.html https://grey-acoustics.surge.sh ## 工作流程 - 通过启发式扫描(经由 location.hash 和 location.search)识别网站是否存在 Prototype Pollution 漏洞 - Fingerprint 已知的 gadgets(检查全局上下文中的特定变量) - 显示可被利用的最终 XSS payload ## 致谢 非常感谢 @Tomnomnom 带来的灵感:https://www.youtube.com/watch?v=Gv1nK6Wj8qM&t=1558s 该程序的工作流程很大程度上基于这篇文章:https://infosecwriteups.com/javascript-prototype-pollution-practice-of-finding-and-exploitation-f97284333b2 Fingerprint javascript 文件基于此 git:https://gist.github.com/nikitastupin/b3b64a9f8c0eb74ce37626860193eaec ## 新闻报道 - 14/06/21: [Intigriti Bug Bytes #131](https://blog.intigriti.com/2021/07/14/bug-bytes-131-credential-stuffing-in-bug-bounty-hijacking-shortlinks-hacker-shows/) - 本周工具 - 26/06/21: [Hackin9](https://hakin9.org/ppmap-a-scanner-exploitation-tool/) - 文章 - 23/09/21: [GeeksForGeeks](https://www.geeksforgeeks.org/ppmap-a-scanner-or-exploitation-tool-written-in-go/) - 文章 - 22/10/21: [Hacktricks](https://book.hacktricks.xyz/pentesting-web/deserialization/nodejs-proto-prototype-pollution/client-side-prototype-pollution) - Client Side Prototype Pollution - 04/06/22 [BlackArch Linux](https://github.com/BlackArch/blackarch-site/commit/68696c40be1629095cd547559ce078a4c77a7073) - 正式加入 BlackArch Linux :tada:
标签:Chromium, CISA项目, EVTX分析, EVTX分析, EVTX分析, Gadget利用, Github安全, Golang, Go语言, Web安全, XSS, 加密, 原型污染, 安全编程, 客户端攻击, 无服务器架构, 日志审计, 漏洞情报, 漏洞扫描器, 程序破解, 自动化分析, 蓝队分析, 跨站脚本