GnuTLS和Apple证书验证的bugs并非为同一个

路人甲 2014-03-07 10:37:00

GnuTLS的bug与Apple goto fail的bug都导致了验证TLS和SSL证书问题,但是他们两个实际上并非是同一个,虽然都是把假的证书也当成有效的证书。

霍普金斯大学的一位密码学教授说:“GnuTLS是一个编码错误,返回了错误的变量,而苹果可能是一个剪切和粘贴的失误。”

goto命令在这两个bug当中都出现了,goto fail语句是C语言遇到错误的时候一个标准执行流程。判断证书是否有效的代码应该返回一个true或者false的布尔值。但是这个GnuTLS的bug,返回的是一个负数的特殊错误代码。

这个bug就是当其中的一个函数返回一个负数的错误代码,这个错误代码当做一个布尔型,而不是真正的一个数字,但是布尔型的判断当中,只要是非0就是true,因此,这个错误在布尔判断中当成了真,形成了这个bug。

这个GnuTLS的bug是被Red Hat审计出来的,GnuTLS 是一个安全通讯库,实现了 SSL、TLS 和 DTLS 协议和相关技术。提供了简单的 C 语言编程接口用来访问这些安全通讯协议,提供解析和读写 X.509、PKCS #12、OpenPGP 和其他相关结构。特点是可移植性和高效。使用并没有OpenSSL广泛,也没有部署在iOS设备上,但是在Linux和很多开源程序当中有使用。

原文:http://threatpost.com/goto-aside-gnutls-and-apple-bugs-are-not-the-same/104626

评论

路人甲

真正的路人甲.

twitter weibo github wechat

随机分类

IoT安全 文章:29 篇
前端安全 文章:29 篇
Python安全 文章:13 篇
安全管理 文章:7 篇
无线安全 文章:27 篇

扫码关注公众号

WeChat Offical Account QRCode

最新评论

Article_kelp

因为这里的静态目录访功能应该理解为绑定在static路径下的内置路由,你需要用s

N

Nas

师傅您好!_static_url_path那 flag在当前目录下 通过原型链污

Z

zhangy

你好,为什么我也是用windows2016和win10,但是流量是smb3,加密

K

k0uaz

foniw师傅提到的setfge当在类的字段名成是age时不会自动调用。因为获取

Yukong

🐮皮

目录