【发布时间】:2012-10-15 18:34:55
【问题描述】:
我最近了解到 overlong encodings cause a security risk 在未正确验证时。从前面提到的帖子中的答案:
例如字符
还有:
如果您接受此输入并以基于 Unicode 忽略字节的方式处理它 工具,那么在该工具中使用的任何字符处理步骤都可以 被避开。
意思是如果我在使用超长编码的字符串上使用htmlspecialchars,那么输出仍然可能包含标签。我还假设您可以发布类似的字符(如" 或;),这些字符也可用于 SQL 注入。
也许是我,但我相信这是一个相对较少人考虑甚至知道的安全风险。我已经编码多年,现在才发现这一点。
无论如何,我的问题是:我可以使用哪些工具来发送编码过长的数据? 熟悉此风险的人:您如何在网站上执行测试?我想在我的网站上发布一堆过长的字符,但我不知道该怎么做。
在我的情况下,我主要使用 PHP 和 MySQL,但我真正想知道的是测试工具,所以我想后端情况并不重要。
【问题讨论】: