CRYPTODY: Cryptographic Misuse Analysis of IoT Firmware via Data-flow Reasoning

被引:1
作者
Wang, Jianing [1 ]
Guo, Shanqing [2 ]
Diao, Wenrui [2 ]
Liu, Yue [3 ,4 ]
Duan, Haixin [5 ,6 ,7 ]
Liu, Yichen [8 ]
Liang, Zhenkai [1 ]
机构
[1] Natl Univ Singapore, Singapore, Singapore
[2] Shandong Univ, Jinan, Peoples R China
[3] Southeast Univ, Nanjing, Peoples R China
[4] QI ANXIN Grp, Beijing, Peoples R China
[5] Tsinghua Univ, Beijing, Peoples R China
[6] Zhongguancun Lab, Beijing, Peoples R China
[7] Quancheng Lab, Jinan, Peoples R China
[8] Indiana Univ Bloomington, Bloomington, IN USA
来源
PROCEEDINGS OF 27TH INTERNATIONAL SYMPOSIUM ON RESEARCH IN ATTACKS, INTRUSIONS AND DEFENSES, RAID 2024 | 2024年
基金
中国国家自然科学基金; 新加坡国家研究基金会;
关键词
Cryptographic misuse; IoT firmware; Data-flow analysis;
D O I
10.1145/3678890.3678914
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Cryptographic techniques form the foundation of the security and privacy of computing solutions. However, if cryptographic APIs are not invoked correctly, they can result in significant security problems. In this paper, we abstract the intricate crypto misuse detection problem as a data-flow reasoning task. Towards this end, we propose CrypTody, a novel logic-inference-based framework for detecting crypto misuses via reasoning about data flows on multi-architecture IoT firmware images. It carries out cross-architecture analysis, with detection strategies to reduce false positives and false negatives, such as cross-flow misuse inference. To evaluate the effectiveness of CrypTody, we conducted a large-scale experiment on 1,431 firmware images from 16 vendors. Our evaluation shows that 46% of the firmware images have high-risk misuses and 95% have at least one cryptographic misuse. In total, we find 6,624 potential crypto misuses, with 760 being cross-flow misuses that are not detected by existing solutions. We have responsibly disclosed portions of our findings to the relevant vendors. From the feedback, we note that CrypTody has a low false-positive rate for the confirmed misuses. Some typical cases have been assigned CVEs and fixed by the vendors.
引用
收藏
页码:579 / 593
页数:15
相关论文
共 57 条
  • [31] MITRE Corporation, 2009, CWE- 780: Use of RSA Algorithm without OAEP
  • [32] MITRE Corporation, 2006, CWE- 337: Predictable Seed in PseudoRandom Number Generator (PRNG)
  • [33] "Jumping Through Hoops": Why do Java']Java Developers Struggle With Cryptography APIs?
    Nadi, Sarah
    Krueger, Stefan
    Mezini, Mira
    Bodden, Eric
    [J]. 2016 IEEE/ACM 38TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE), 2016, : 935 - 946
  • [34] National Institute of Standards and Technology (NIST), 2017, Juliet Test Suite: A collection of test cases in the C/C++ language
  • [35] National Security Agency (NSA), 2019, PCode Reference Manual
  • [36] National Security Agency (NSA), 2019, Ghidra: A Software Reverse Engineering (SRE) Suite of Tools Developed by NSA
  • [37] Piccolboni L, 2021, P IEEE S SECUR PRIV, P1972, DOI 10.1109/SP40001.2021.00010
  • [38] Qi Zhenxiao, 2022, P 2022 NETW DISTR SY
  • [39] CryptoGuard: High Precision Detection of Cryptographic Vulnerabilities in Massive-sized Java']Java Projects
    Rahaman, Sazzadur
    Xiao, Ya
    Afrose, Sharmin
    Shaon, Fahad
    Tian, Ke
    Frantz, Miles
    Kantarcioglu, Murat
    Yao, Danfeng
    [J]. PROCEEDINGS OF THE 2019 ACM SIGSAC CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY (CCS'19), 2019, : 2455 - 2472
  • [40] KARONTE: Detecting Insecure Multi-binary Interactions in Embedded Firmware
    Redini, Nilo
    Machiry, Aravind
    Wang, Ruoyu
    Spensky, Chad
    Continella, Andrea
    Shoshitaishvili, Yan
    Kruegel, Christopher
    Vigna, Giovanni
    [J]. 2020 IEEE SYMPOSIUM ON SECURITY AND PRIVACY (SP 2020), 2020, : 1544 - 1561