Neon空字符CA SSL证书校验安全绕过漏洞

漏洞起因
设计错误
 
影响系统
Neon Neon 0.28.5
Neon Neon 0.28.3
Neon Neon 0.28.2
Neon Neon 0.28.1
Neon Neon 0.28
Neon Neon 0.28
Neon Client Library 0.26.3
Neon Client Library 0.26.2
Neon Client Library 0.26.1
Neon Client Library 0.26
Neon Client Library 0.24.6
Neon Client Library 0.24.5
Neon Client Library 0.24.4
Neon Client Library 0.24.3
Neon Client Library 0.24.2
Neon Client Library 0.24.1
Neon Client Library 0.24
Neon Client Library 0.23.8
Neon Client Library 0.23.7
Neon Client Library 0.23.6
Neon Client Library 0.23.5
Neon Client Library 0.23.4
Neon Client Library 0.23.3
Neon Client Library 0.23.2
Neon Client Library 0.23.1
Neon Client Library 0.23
Neon Client Library 0.19.3
 
不受影响系统
Neon 0.28.6
 
危害
远程攻击者可以利用漏洞通过中间人攻击获得敏感信息。
 
攻击所需条件
攻击者必须访问Neon。
 
漏洞信息
Neon是一款HTTP和WebDAV客户端库。
Neon处理包含在部分字段中空字符的证书存在问题,远程攻击者可以利用漏洞进行中间人攻击,获得敏感信息。
neon没有正确地处理X.509证书主题通用名称(CN)字段域名中的空字符(\0),在遇到空字符的证书字段时会直接把空字符作为截止字符处理,因此只会简单验证空字符前的部分如:
    example.com\0.haxx.se
如上证书是发布给haxx.se的,但neon错误的认为是属于example.com,可导致用户错误的认为证书合法而被欺骗。
 
测试方法
 
厂商解决方案
用户可参考如下供应商提供的升级程序:
http://lists.manyfish.co.uk/pipermail/neon/2009-August/001044.html
 
漏洞提供者
Joe Orton