奇怪的网站行为 - 具有特定值的 GET 参数导致网站重定向到 403

Posted

技术标签:

【中文标题】奇怪的网站行为 - 具有特定值的 GET 参数导致网站重定向到 403【英文标题】:Strange website behaviour - GET parameter with a specific value is causing the website to redirect to 403 【发布时间】:2012-06-17 21:03:41 【问题描述】:

我有一个运行Joomla! 的网站(它不是我的,所以我不知道它是如何构建的)。

我遇到了一个非常奇怪的问题:当我使用phpMyAdmin 并想编辑表格中的条目时,我收到错误403。如果我复制按钮 Edit 的链接位置并将其放在新选项卡中 - 我得到相同的结果。通过反复试验,我发现,如果我将where_clause GET 参数的值部分%60id%60 替换为其他任何内容(例如%60foo%60id) - 一切都会按预期工作。

您有什么想法,什么会导致这种奇怪的行为?为什么id?为什么这么特别?

附: %60 代表`

【问题讨论】:

闻起来像 modsecurity.org 阻止请求的网站/webapp 防火墙。 @ScottSaunders phpMyAdmin - 最新的 3.5.1,但这不相关 @hakre 你认为这是某种反 SQL 注入技术吗? 不,我不这么认为,但 webapp 防火墙“这么认为”。所谓的误报。 好的,因为我没有访问 CP 的权限,所以我不得不使用替代方法。韭菜,我猜…… 【参考方案1】:

几乎每次我发现这种奇怪的行为时,服务器中都有某种安全模块,在web server level 或PHP level。托管服务提供商通常甚至没有意识到这一点,可能是因为它是他们控制面板的默认组件。

您唯一的机会可能是找出确切的模块并阅读文档以确定您是否可以更改设置。

【讨论】:

感谢一些具体的例子!我现在没有任何问题(使用 Chive),但如果我愿意 - 我会尝试进一步调查并在此处发布结果。

以上是关于奇怪的网站行为 - 具有特定值的 GET 参数导致网站重定向到 403的主要内容,如果未能解决你的问题,请参考以下文章

具有联接表和来自 GET 参数的多个值的高级查询

PHP stream_get_contents() 从数据库读取 LOB 的行为很奇怪

获取从抽象类继承并在属性中具有特定值的类的实例

iPhone浏览器在特定网站上保持错误

奇怪的编译器行为 - 可选参数

ExtJS 4 奇怪的树加载行为