Currently, the development of IoT firmware heavily depends on third-party components (TPCs) to improve development efficiency. Nevertheless, TPCs are not secure, and the vulnerabilities in TPCs will influence the security of IoT firmware. Existing works pay less attention to the vulnerabilities caused by TPCs, and we still lack a comprehensive understanding of the security impact of TPC vulnerability against firmware. To fill in the knowledge gap, we design and implement FirmSec, which leverages syntactical features and control-flow graph features to detect the TPCs in firmware, and then recognizes the corresponding vulnerabilities. Based on FirmSec, we present the first large-scale analysis of the security risks raised by TPCs on $34,136$ firmware images. We successfully detect 584 TPCs and identify 128,757 vulnerabilities caused by 429 CVEs. Our in-depth analysis reveals the diversity of security risks in firmware and discovers some well-known vulnerabilities are still rooted in firmware. Besides, we explore the geographical distribution of vulnerable devices and confirm that the security situation of devices in different regions varies. Our analysis also indicates that vulnerabilities caused by TPCs in firmware keep growing with the boom of the IoT ecosystem. Further analysis shows 2,478 commercial firmware images have potentially violated GPL/AGPL licensing terms.
翻译:目前,IoT固态软件的开发严重依赖第三方组成部分(TPC)来提高发展效率,然而,TPC并不安全,而TPC的脆弱性将影响IoT固态软件的安全。现有的工程对TPC造成的脆弱性重视较少,我们仍然对TPC对固态软件造成的安全影响缺乏全面了解。为了填补知识差距,我们设计和实施Sec公司,它利用综合策略特征和控制流图特征来利用固态软件探测TPC,然后承认相应的弱点。根据Sec公司,我们对TPC公司以34,136美元固态软件图像对安全风险进行的首次大规模分析。我们成功地检测了584 TPC公司造成的弱点,并查明了429CVes造成的128,757个弱点。我们的深入分析显示,在固态软件中存在各种安全风险,发现一些众所周知的脆弱性仍然植根于固态软件。此外,我们探索了脆弱装置的地理分布,并确认不同区域的装置的安全情况。基于CSEPL公司不断变换的GPL软件风险。我们的分析还表明,公司在不断变换的GPL软件软件中表现出了不断增长的弱点。