Morpheus: Bringing The (PKCS) One To Meet the Oracle

Morpheus: Bringing The (PKCS) One To Meet the Oracle
复制标题

DOI:
10.1145/3460120.3485382
复制
发表时间:
2021-11
期刊:
Proceedings of the 2021 ACM SIGSAC Conference on Computer and Communications Security
影响因子:
--
通讯作者:
Moosa Yahyazadeh;Sze Yiu Chau;Li Li-Li;Man Hong Hue;Joyanta Debnath;Sheung Chiu Ip;Chun Ngai Li;Md. Endadul Hoque;Omar Chowdhury
Moosa Yahyazadeh;Sze Yiu Chau;Li Li-Li;Man Hong Hue;Joyanta Debnath;Sheung Chiu Ip;Chun Ngai Li;Md. Endadul Hoque;Omar Chowdhury
中科院分区:
其他
文献类型:
--
作者:
Moosa Yahyazadeh;Sze Yiu Chau;Li Li-Li;Man Hong Hue;Joyanta Debnath;Sheung Chiu Ip;Chun Ngai Li;Md. Endadul Hoque;Omar Chowdhury

文献摘要

被引文献

相似文献

本文致力于开发一种名为Morpheus的自动黑盒测试方法,以检查执行PKCS#1-v1.5签名验证的库是否符合PKCS#1-v1.5标准。不合规不仅会使实现容易受到Bleichenbacher式的RSA签名伪造攻击,还会导致互操作性问题。为了检查不合规性,Morpheus自适应地生成有趣的测试用例,然后利用Oracle(正式验证的PKCS#1-v1.5签名标准的正确实现)来检测被测试实现中的不合规性。我们使用Morpheus测试了45个PKCS#1-v1.5签名验证实现,发现其中6个实现易受Bleichenbacher风格的低公开指数RSA签名伪造攻击的变体,1个实现存在缓冲区溢出,33个实现存在不兼容问题,8个实现存在轻微宽松。我们的发现已经被负责任地披露出来,并得到了开发人员的肯定。
This paper focuses on developing an automatic, black-box testing approach called Morpheus to check the non-compliance of libraries implementing PKCS#1-v1.5 signature verification with the PKCS#1-v1.5 standard. Non-compliance can not only make implementations vulnerable to Bleichenbacher-style RSA signature forgery attacks but also can induce interoperability issues. For checking non-compliance, Morpheus adaptively generates interesting test cases and then takes advantage of an oracle, a formally proven correct implementation of PKCS#1-v1.5 signature standard, to detect non-compliance in an implementation under test. We have used Morpheus to test 45 implementations of PKCS#1-v1.5 signature verification and discovered that 6 of them are susceptible to variants of the Bleichenbacher-style low public exponent RSA signature forgery attack, 1 implementation has a buffer overflow, 33 implementations have incompatibility issues, and 8 implementations have minor leniencies. Our findings have been responsibly disclosed and positively acknowledged by the developers.