Unicode输入危险

M. *_* F. 1 security unicode gwt input

用户输入unicode是否存在任何真正的危险,用户代理/浏览器等无法处理?

显然,从服务器到客户端,有欺骗的真正威胁,但我试图找出什么具体的"攻击"(如果有的话)或不满处理Unicode输入时,我应该知道.

问题是语言不可知,但我在考虑GWT应用程序的安全隐患时提出这个问题.

dec*_*eze 5

任何用户输入的最大危险是在具有"特殊字符"的上下文中使用该输入.即,天真地将其连接到SQL查询或将其输出到HTML中.如果应用程序的部分行为是由字符串(如SQL查询或HTML页面)控制的,并且用户可以控制这些字符串并且可以注入自己的命令,则存在危险.

然而,在这方面,Unicode与其他编码没有什么特别之处.您环境中的特殊字符已明确定义,您只需要对任何用户输入进行转义,过滤或清理,以便将这些特殊字符呈现为非特殊字符.对于任何其他编码,您也需要这样做.您需要注意您的转义/过滤/清理功能是否知道正确的编码,以便他们可以正常工作.

除此之外,Unicode编码的文本只是文本.当你中性包含任何特殊字符并正确处理编码时,只有文本没有危险.除了你的用户sbuıɥʇpɹıǝʍbuıʇıɹʍ或为某些特定目的利用相似的角色,但这不再是关于普遍的危险.