Static Analysis Tools (SATs) are central to security engineering activities, as they enable early identification of code weaknesses without requiring execution. However, their effectiveness is often limited by high false-positive rates and incomplete coverage of vulnerability classes. At the same time, developers frequently document security-related shortcuts and compromises as Self-Admitted Technical Debt (SATD) in software artifacts, such as code comments. While prior work has recognized SATD as a rich source of security information, it remains unclear whether -and in what ways- it is utilized during SAT-aided security analysis. OBJECTIVE: This work investigates the extent to which security-related SATD complements the output produced by SATs and helps bridge some of their well-known limitations. METHOD: We followed a mixed-methods approach consisting of (i) the analysis of a SATD-annotated vulnerability dataset using three state-of-the-art SATs and (ii) an online survey with 72 security practitioners. RESULTS: The combined use of all SATs flagged 114 of the 135 security-related SATD instances, spanning 24 distinct Common Weakness Enumeration (CWE) identifiers. A manual mapping of the SATD comments revealed 33 unique CWE types, 6 of which correspond to categories that SATs commonly overlook or struggle to detect (e.g., race conditions). Survey responses further suggest that developers frequently pair SAT outputs with SATD insights to better understand the impact and root causes of security weaknesses and to identify suitable fixes. IMPLICATIONS: Our findings show that such SATD-encoded information can be a meaningful complement to SAT-driven security analysis, while helping to overcome some of SATs' practical shortcomings.


翻译:静态分析工具(SATs)是安全工程活动的核心,因其能够在无需执行代码的情况下实现早期缺陷识别。然而,其有效性常受限于较高的误报率以及对漏洞类别覆盖的不完整性。与此同时,开发者常在软件制品(如代码注释)中将与安全相关的临时方案和妥协记录为自承技术债务(SATD)。尽管已有研究认识到SATD是安全信息的丰富来源,但尚不清楚在SAT辅助的安全分析过程中是否——以及以何种方式——利用了这些信息。目标:本研究旨在探究与安全相关的SATD能在多大程度上补充SATs的输出结果,并帮助弥合其某些已知局限。方法:我们采用混合方法,包括(i)使用三种前沿SAT工具对SATD标注的漏洞数据集进行分析,以及(ii)对72位安全从业者开展在线调查。结果:所有SAT工具联合使用共标记出135个安全相关SATD实例中的114个,涵盖24个不同的通用缺陷枚举(CWE)标识符。对SATD注释的人工映射揭示了33种独特的CWE类型,其中6类对应SAT工具通常忽略或难以检测的漏洞类别(例如竞争条件)。调查反馈进一步表明,开发者经常将SAT输出与SATD信息结合使用,以更深入理解安全缺陷的影响与根本原因,并确定合适的修复方案。启示:我们的研究结果表明,此类SATD编码信息能够有效补充SAT驱动的安全分析,同时有助于克服SATs在实际应用中的某些缺陷。

0
下载
关闭预览

相关内容

【ETHZ博士论文】机器学习代码: 安全性与可靠性
专知会员服务
19+阅读 · 2024年10月25日
专知会员服务
37+阅读 · 2021年10月16日
深度学习文本分类方法综述(代码)
中国人工智能学会
28+阅读 · 2018年6月16日
【干货】深入理解自编码器(附代码实现)
【干货】一文读懂什么是变分自编码器
专知
12+阅读 · 2018年2月11日
tensorflow系列笔记:流程,概念和代码解析
北京思腾合力科技有限公司
30+阅读 · 2017年11月11日
国家自然科学基金
6+阅读 · 2017年12月31日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
19+阅读 · 2015年12月31日
国家自然科学基金
20+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
1+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
VIP会员
相关基金
国家自然科学基金
6+阅读 · 2017年12月31日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
19+阅读 · 2015年12月31日
国家自然科学基金
20+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
1+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
Top
微信扫码咨询专知VIP会员