Golang
从零开始学习AWS黑客技术,成为专家 htARTE(HackTricks AWS Red Team Expert)!
支持HackTricks的其他方式:
如果您想看到您的公司在HackTricks中做广告或下载PDF格式的HackTricks,请查看订阅计划!
加入 💬 Discord群 或 电报群 或 关注我们的Twitter 🐦 @carlospolopm。
通过向HackTricks和HackTricks Cloud github仓库提交PR来分享您的黑客技巧。
CONNECT方法
在Go编程语言中,处理HTTP请求时的常见做法,特别是使用net/http库时,是将请求路径自动转换为标准格式。这个过程包括:
以斜杠(
/)结尾的路径,如/flag/,会被重定向到它们的非斜杠对应路径,即/flag。包含目录遍历序列的路径,如
/../flag,会被简化并重定向到/flag。以句点结尾的路径,如
/flag/.,也会被重定向到干净的路径/flag。
然而,在使用CONNECT方法时存在一个例外。与其他HTTP方法不同,CONNECT不会触发路径规范化过程。这种行为为访问受保护资源打开了一个潜在的途径。通过在curl中使用--path-as-is选项,结合CONNECT方法,可以绕过标准路径规范化,潜在地访问受限区域。
以下命令演示了如何利用这种行为:
curl --path-as-is -X CONNECT http://gofs.web.jctf.pro/../flag从零开始学习AWS黑客技术,成为专家 htARTE(HackTricks AWS Red Team Expert)!
支持HackTricks的其他方式:
如果您想看到您的公司在HackTricks中做广告或下载PDF格式的HackTricks,请查看订阅计划!
加入 💬 Discord群 或 电报群 或 关注我们的Twitter 🐦 @carlospolopm。
通过向HackTricks和HackTricks Cloud github仓库提交PR来分享您的黑客技巧。
最后更新于