今天这一篇原创文章
来自蚁景网安学院Web安全工程师特训班中
一名优秀的同学
从网络安全爱好者到原创作者的蜕变
优秀真就是一点点认真累积
QQ:1272460312
黑客与极客相关,互联网安全领域里的热点话题
漏洞、技术相关的调查或分析
为原创者提供平台
稿件通过并发布还能收获200-800元不等的稿酬
介绍
-
Burp代理CLI的流量 -
让CLI信任Burp的 CA证书(或忽略信任)
例一 代理wget或者curl
-
http_proxy
-
https_proxy
export http_proxy=localhost:8080
export https_proxy=localhost:8080
curl ifconfig.io
wget -O /dev/null ifconfig.io
## or ##
http_proxy=localhost:8080 https_proxy=localhost:8080 curl ifconfig.io
http_proxy=localhost:8080 https_proxy=localhost:8080 wget -O /dev/null ifconfig.io
-
禁用信任核查 -
将我们的操作系统配置为信任Burp CA
禁用信任核查
curl
使用-k
或wget
使用--no-check-certificate
参数:http_proxy=localhost:8080 https_proxy=localhost:8080 curl -k https://ifconfig.io
http_proxy=localhost:8080 https_proxy=localhost:8080 wget -O /dev/null --no-check-certificate https://ifconfig.io
使操作系统信任代理证书
~/certs
。mkdir ~/certs
wget -O ~/certs/burpca.der http://localhost:8080/cert
cd ~/certs
openssl x509 -inform DER -in burpca.der -out burpca.crt
mitmproxy
,则证书已经在~/.mitmproxy
目录下了。MAC OS
WINDOWS
LINUX
/usr/share/ca-certificates
。将burpca.crt
文件复制到/usr/share/ca-certificates
,然后运行:sudo update-ca-certificates
例二 代理java jar
java -jar acli-9.1.0.jar -s https://greenshot.atlassian.net -a getServerInfo
Jira version: 1001.0.0-SNAPSHOT, build: 100119, time: 2/6/20, 6:26 AM, description: Greenshot JIRA, url: https://greenshot.atlassian.net
-
http.proxyHost
-
http.proxyPort
-
https.proxyHost
-
https.proxyPort
-
http.nonProxyHosts
java -Dhttp.nonProxyHosts= -Dhttp.proxyHost=127.0.0.1 -Dhttp.proxyPort=8080 -Dhttps.proxyHost=127.0.0.1 -Dhttps.proxyPort=8080 -jar acli-9.1.0.jar -s https://greenshot.atlassian.net -a getServerInfo
将证书添加到Java密钥库
$JAVA_HOME/lib/security/cacerts
。如果您没有设置$JAVA_HOME
环境变量,您也可以使用java
命令快速找到它:java -XshowSettings:properties -version 2>&1 > /dev/null | grep 'java.home'
java.home = /Users/RonnieFlathers/.sdkman/candidates/java/11.0.3-zulu
keytool
程序,该工具包含在$JAVA_HOME/bin/keytool
中。要导入Burp证书,我们必须将PEM格式的文件导入到受信任的CA证书中:$JAVA_HOME/bin/keytool -import -alias burpsuite -keystore $JAVA_HOME/lib/security/cacerts -file $HOME/certs/burpca.crt -trustcacerts
changeit
。然后指定“是”以信任证书:例三 代理Python请求
$ az group list
[
{
"id": "/subscriptions/300b646c-f573-49d4-96d5-c01efe36c282/resourceGroups/ropnoptest",
"location": "centralus",
"managedBy": null,
"name": "ropnoptest",
"properties": {
"provisioningState": "Succeeded"
},
"tags": {},
"type": "Microsoft.Resources/resourceGroups"
}
]
$ HTTPS_PROXY=http://localhost:8080 az group list
request failed: Error occurred in request., SSLError: HTTPSConnectionPool........
向python添加证书
$ head `which az`
#!/usr/bin/env bash
/usr/local/Cellar/azure-cli/2.0.74/libexec/bin/python -m azure.cli "$@"
az
它会调用自己内置的Python解释器,该解释器已在homebrew上安装。certifi
并运行certifi.where()
命令。$ /usr/local/Cellar/azure-cli/2.0.74/libexec/bin/python -c "import certifi; print(certifi.where())"
/usr/local/Cellar/azure-cli/2.0.74/libexec/lib/python3.7/site-packages/certifi/cacert.pem
cacert.pem
文件是PEM格式的所有受信任的CA证书列表。要添加Burp CA,我们只需将PEM附加到该文件中即可:cat ~/certs/burpca.pem >> /usr/local/Cellar/azure-cli/2.0.74/libexec/lib/python3.7/site-packages/certifi/cacert.pem
$ HTTPS_PROXY=http://localhost:8080 az group list
例四 代理Node js
npm i -g now@latest
$ HTTPS_PROXY=http://localhost:8080 now list
$ which now
/Users/RonnieFlathers/.nvm/versions/node/v12.15.0/bin/now
$ head -c100 `which now`
#!/usr/bin/env node
require('./sourcemap-register.js');module.exports=function(e,t){"use strict";var%
$ node /Users/RonnieFlathers/.nvm/versions/node/v12.15.0/bin/now -v
Now CLI 17.0.3
17.0.3
$ mkdir nodeproxy
$ cd nodproxy/
$ npm install global-agent
$ export GLOBAL_AGENT_HTTP_PROXY=http://127.0.0.1:8080
$ node -r 'global-agent/bootstrap' `which now`
为Node添加证书
export NODE_EXTRA_CA_CERTS=$HOME/certs/burpca.crt
export GLOBAL_AGENT_HTTP_PROXY=http://127.0.0.1:8080
node -r 'global-agent/bootstrap' `which now`
例五 代理Go程序
$ hub ci-status
success
$ https_proxy=127.0.0.1:8080 hub ci-status
Error fetching statuses: Get https://api.github.com/repos/ropnop/blog.ropnop.com/commits/89c7759ac344d5a412dc63ce3f053fc3f06d09a0/status: x509: certificate signed by unknown authority
设置GO的信任证书
$ https_proxy=127.0.0.1:8080 hub ci-status
success
总结
本文始发于微信公众号(合天智汇):你没见过的Burpsuite骚操作——拦截CLI工具的流量
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论