You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Firefox中请求包含../的URL以测试Flask网站的目录遍历防护逻辑?

如何在Firefox中请求包含../的URL以测试Flask网站的目录遍历防护逻辑?

我太懂这种烦恼了——浏览器出于友好自动帮你简化URL,偏偏测试安全逻辑的时候就成了阻碍。下面几个实用方法能帮你绕过Firefox的自动URL规范化,成功发送带../的请求:

方法一:用开发者工具直接新建自定义请求

这是最稳妥的方式,完全避开地址栏的自动解析:

  • 按下F12或Ctrl+Shift+I打开开发者工具,切换到网络面板
  • 点击面板左上角的「新建请求」按钮(就是那个带加号的图标)
  • 在弹出的请求编辑界面里,直接把目标URL(比如localhost/foo/../bar)填到URL输入框,选择对应的请求方法(GET/POST等),然后点击「发送」
  • 这里要注意:不要先从地址栏跳转再重放请求,一定要直接新建,这样才能保留原始的../路径

方法二:临时修改Firefox的URL规范化设置

如果你想直接通过地址栏发送请求,可以临时关闭Firefox的路径自动优化:

  • 在地址栏输入about:config,点击「接受风险并继续」进入配置页面
  • 在搜索框里找到network.url.path.normalization,把它的默认值true改成false
  • 现在你在地址栏输入localhost/foo/../bar,Firefox就不会自动把它转换成localhost/bar了
  • 划重点:测试完成后一定要把这个设置改回true!不然日常浏览时,某些依赖路径规范化的网站可能会出现加载异常

额外提醒

另外要注意,Flask框架本身在处理请求时也会自动规范化路径。所以即使你成功发送了带../的请求,也要确认你的防护逻辑是在Flask解析路径之前生效的——比如可以通过自定义WSGI中间件来拦截原始的请求路径,而不是依赖Flask路由处理后的路径来做校验。

备注:内容来源于stack exchange,提问作者Dragon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.23 08:52:36