Pown CDB 是一个 Chrome 调试协议工具。该工具的主要目标是自动化常见任务,帮助从命令行调试 Web 应用,并主动监控和拦截 HTTP 请求与响应。这在渗透测试及其他类型的安全评估与调查中尤为有用。
| 截图 |
|---|
本工具是 secapps.com 开源计划的一部分。
___ ___ ___ _ ___ ___ ___
/ __| __/ __| /_\ | _ \ _ \/ __|
\__ \ _| (__ / _ \| _/ _/\__ \
|___/___\___/_/ \_\_| |_| |___/
https://secapps.com
本工具旨在作为 Pown.js 的一部分使用,但也可以作为独立工具单独调用。
首先照常安装 Pown:
$ npm install -g pown@latest
直接从 Pown 调用:
$ pown cdb
将本模块本地安装到项目根目录:
$ npm install @pown/cdb --save
完成后,调用 pown cli:
$ POWN_ROOT=. ./node_modules/.bin/pown-cli cdb
你也可以使用全局的 pown 来本地调用该工具:
$ POWN_ROOT=. pown cdb
警告:此 pown 命令目前正在开发中,因此可能会有重大变更。
pown cdb <command>
Chrome Debug Protocol Tool
Commands:
pown cdb launch 启动服务器应用(如 chrome、firefox、opera 和 edge) [别名: start]
pown cdb navigate <url> 跳转到指定的 URL [别名: goto, go]
pown cdb network Chrome 调试协议网络监视器 [别名: net, sniff, proxy, mon, monitor]
pown cdb cookies 转储当前页面的 cookies [别名: cookie]
pown cdb screenshot <file> 截取当前页面的屏幕截图 [别名: capture, shoot, shot]
Options:
--version 显示版本号 [boolean]
--help 显示帮助信息 [boolean]
pown cdb launchpown cdb launch
启动服务器应用(如 chrome、firefox、opera 和 edge)
Options:
--version 显示版本号 [boolean]
--help 显示帮助信息 [boolean]
--port, -p 远程调试端口 [number] [默认: 9222]
--xss-auditor, -x 开启/关闭 XSS 审计器 [boolean] [默认: true]
--certificate-errors, -c 开启/关闭证书错误 [boolean] [默认: true]
--pentest, -t 以渗透测试首选设置启动 [boolean] [默认: false]
pown cdb navigatepown cdb navigate <url>
跳转到指定的 URL
Options:
--version 显示版本号 [boolean]
--help 显示帮助信息 [boolean]
--host, -H 远程调试主机 [string] [默认: "localhost"]
--port, -p 远程调试端口 [number] [默认: 9222]
--secure, -s HTTPS/WSS 前端 [boolean] [默认: false]
pown cdb networkpown cdb network
Chrome 调试协议网络监视器
Options:
--version 显示版本号 [boolean]
--help 显示帮助信息 [boolean]
--host, -H 远程调试主机 [string] [默认: "localhost"]
--port, -p 远程调试端口 [number] [默认: 9222]
--secure, -s HTTPS/WSS 前端 [boolean] [默认: false]
--output, -o 输出目录/文件 [array] [默认: []]
--blessed, -b 启动 blessed UI 界面 [boolean] [默认: false]
pown cdb cookiespown cdb cookies
转储当前页面的 cookies
Options:
--version 显示版本号 [boolean]
--help 显示帮助信息 [boolean]
--host, -H 远程调试主机 [string] [默认: "localhost"]
--port, -p 远程调试端口 [number] [默认: 9222]
--secure, -s HTTPS/WSS 前端 [boolean] [默认: false]
pown cdb screenshotpown cdb screenshot <file>
截取当前页面的屏幕截图
Options:
--version 显示版本号 [boolean]
--help 显示帮助信息 [boolean]
--host, -H 远程调试主机 [string] [默认: "localhost"]
--port, -p 远程调试端口 [number] [默认: 9222]
--secure, -s HTTPS/WSS 前端 [boolean] [默认: false]
让我们探索如何在典型的 Web 应用安全参与中使用 Pown CDB。
首先,确保已安装最新的 pown:
$ npm install -g pown
如果已安装 pown,请确保拥有最新版本:
$ pown update
要开始使用 Pown CDB,我们需要一个已启用 Chrome 调试远程接口并监听 localhost 的 Chrome 浏览器实例(也支持其他浏览器):
$ pown cdb launch --port 9333
Chrome 浏览器实例运行后,使用 pown cdb 网络实用工具连接到它:
$ pown cdb network --port 9333 -b
-b 标志用于启动带有基于 curses 的用户界面的 Pown CDB:
截图
使用组合键 shift + ? 获取可用快捷键列表:
截图
一旦开始使用浏览器,Pown CDB 将记录并显示用户界面中的流量。要拦截请求,使用组合键 ctrl + t:
截图
请求被捕获并打开在默认的 shell 编辑器($EDITOR)中。进行所需更改,保存并退出。原始请求将被你的更改替换。