【发布时间】:2013-06-13 23:26:15
【问题描述】:
我们最近升级了安全扫描器,它报告了一个新问题。
推荐的修复方法是什么? (我们恰好在 ACF9 上。)
(另外,如果你有一个针对 CF 的漏洞利用示例,我将不胜感激。)
Unicode 转换问题
严重性
高
类型配置
按模块报告脚本(XSS.script)
描述此页面易受各种 Unicode 转换问题的影响 例如 Best-Fit Mappings、Overlong 字节序列、Ill-formed 序列。
最佳拟合映射发生在字符 X 转换为 一个完全不同的字符 Y。一般来说,最适合的映射 当字符在 Unicode 和另一个字符之间进行转码时发生 编码。
超长字节序列(非最短形式) - UTF-8 允许 也有更短的字符的不同表示 形式。出于安全原因,UTF-8 解码器不得接受 长度超过对字符进行编码所需的 UTF-8 序列。例如,字符 U+000A(行 feed) 必须从 UTF-8 流中接受,格式为 0x0A,但不在以下五种可能的超长中 表格:
0xC0 0x8A
0xE0 0x80 0x8A
0xF0 0x80 0x80 0x8A
0xF8 0x80 0x80 0x80 0x8A
0xFC 0x80 0x80 0x80 0x80 0x8A
UNICODE 3.0 要求的格式错误的子序列,并在 Unicode 技术报告 #36,如果前导字节后跟一个 无效的后继字节,那么它不应该消耗它。
影响出现最佳匹配映射时会出现软件漏洞。为了 例如,可以操纵字符以绕过字符串处理 过滤器,例如跨站点脚本 (XSS) 或 SQL 注入过滤器, WAF 和 IDS 设备。过长的 UTF-8 序列可能被滥用于 绕过只寻找最短可能的 UTF-8 子字符串测试 编码。
推荐确定这些 Unicode 转换问题的根源并修复它们。 有关详细信息,请参阅下面的网络参考。
参考UTF-8 and Unicode FAQ for Unix/Linux
A couple of unicode issues on PHP and Firefox
Unicode Security Considerations
影响项目/mysite-portal/
详情
URL 编码的 POST 输入 linkServID 设置为 acu5955%EF%BC%9Cs1%EF%B9%A5s2%CA%BAs3%CA%B9uca5955
问题列表:
Unicode 字符 U+02B9 MODIFIER LETTER PRIME(编码为 %CA%B9) 被转化为 U+0027 APOSTROPHE (')
Unicode 字符 U+02B9 MODIFIER LETTER PRIME(编码为 %CA%B9) 被transf ...(行被截断)
请求标头
获取
/mysite-portal/?display=login&status=failed&rememberMe=0&contentid=&LinkServID=acu5955%1 cs1es2%BAs3%B9uca5955&returnURL=https://stage-cms.mysite.com/mysite-portal/ HTTP/1.1 引用者:https://stage-cms.mysite.com:443/
连接:保持活动状态
接受编码:gzip,deflate
用户代理:Mozilla/5.0(兼容;MSIE 9.0;Windows NT 6.1;WOW64; 三叉戟/5.0)
接受:*/*
主机:stage-cms.mysite.com
【问题讨论】:
-
了解您拥有的 9.0x 版本会很有用
标签: security unicode coldfusion coldfusion-9 unicode-normalization