What Can Self-Admitted Technical Debt Tell Us About Security? A Mixed-Methods Study

被引:0
作者
Ferreyra, Nicolas E. Diaz [1 ]
Shahin, Mojtaba [2 ]
Zahedi, Mansooreh [3 ]
Quadri, Sodiq [1 ]
Scandariato, Riccardo [1 ]
机构
[1] Hamburg Univ Technol, Hamburg, Germany
[2] RMIT Univ, Melbourne, Vic, Australia
[3] Univ Melbourne, Melbourne, Vic, Australia
来源
2024 IEEE/ACM 21ST INTERNATIONAL CONFERENCE ON MINING SOFTWARE REPOSITORIES, MSR | 2024年
关键词
self-admitted technical debt; software security; software engineering; technical debt identification;
D O I
10.1145/3643991.3644909
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
Self-Admitted Technical Debt (SATD) encompasses a wide array of sub-optimal design and implementation choices reported in software artefacts (e.g., code comments and commit messages) by developers themselves. Such reports have been central to the study of software maintenance and evolution over the last decades. However, they can also be deemed as dreadful sources of information on potentially exploitable vulnerabilities and security flaws. Objective: This work investigates the security implications of SATD from a technical and developer-centred perspective. On the one hand, it analyses whether security pointers disclosed inside SATD sources can be used to characterise vulnerabilities in Open-Source Software (OSS) projects and repositories. On the other hand, it delves into developers' perspectives regarding the motivations behind this practice, its prevalence, and its potential negative consequences. Method: We followed a mixed-methods approach consisting of (i) the analysis of a preexisting dataset containing 8,812 SATD instances and (ii) an online survey with 222 OSS practitioners. Results: We gathered 201 SATD instances through the dataset analysis and mapped them to different Common Weakness Enumeration (CWE) identifiers. Overall, 25 different types of CWEs were spotted across commit messages, pull requests, code comments, and issue sections, from which 8 appear among MITRE's Top-25 most dangerous ones. The survey shows that software practitioners often place security pointers across SATD artefacts to promote a security culture among their peers and help them spot flaky code sections, among other motives. However, they also consider such a practice risky as it may facilitate vulnerability exploits. Implications: Our findings suggest that preserving the contextual integrity of security pointers disseminated across SATD artefacts is critical to safeguard both commercial and OSS solutions against zero-day attacks.
引用
收藏
页码:704 / 715
页数:12
相关论文
共 42 条
  • [1] [Anonymous], 2018, ISO/IEC 29147:2018
  • [2] "Think secure from the beginning": A Survey with Software Developers
    Assal, Hala
    Chiasson, Sonia
    [J]. CHI 2019: PROCEEDINGS OF THE 2019 CHI CONFERENCE ON HUMAN FACTORS IN COMPUTING SYSTEMS, 2019,
  • [3] Bavota G, 2016, 13TH WORKING CONFERENCE ON MINING SOFTWARE REPOSITORIES (MSR 2016), P315, DOI [10.1109/MSR.2016.040, 10.1145/2901739.2901742]
  • [4] Do Bugs Foreshadow Vulnerabilities? A Study of the Chromium Project
    Camilo, Felivel
    Meneely, Andrew
    Nagappan, Meiyappan
    [J]. 12TH WORKING CONFERENCE ON MINING SOFTWARE REPOSITORIES (MSR 2015), 2015, : 269 - 279
  • [5] Coding In-depth Semistructured Interviews: Problems of Unitization and Intercoder Reliability and Agreement
    Campbell, John L.
    Quincy, Charles
    Osserman, Jordan
    Pedersen, Ove K.
    [J]. SOCIOLOGICAL METHODS & RESEARCH, 2013, 42 (03) : 294 - 320
  • [6] An empirical study of developers' discussions about security challenges of different programming languages
    Croft, Roland
    Xie, Yongzheng
    Zahedi, Mansooreh
    Babar, M. Ali
    Treude, Christoph
    [J]. EMPIRICAL SOFTWARE ENGINEERING, 2022, 27 (01)
  • [7] Identifying self-admitted technical debt through code comment analysis with a contextualized vocabulary
    de Freitas Farias, Mario Andre
    de Mendonca Neto, Manoel Gomes
    Kalinowski, Marcos
    Spinola, Rodrigo Oliveira
    [J]. INFORMATION AND SOFTWARE TECHNOLOGY, 2020, 121
  • [8] Edbert Joshua Aldrich, 2023, P 76 ACM IEEE INT S
  • [9] Developers Need Protection, Too: Perspectives and Research Challenges for Privacy in Social Coding Platforms
    Ferreyra, Nicolas E. Diaz
    Inane, Abdessamad
    Vidoni, Melina
    Scandariato, Riccardo
    [J]. 2023 IEEE/ACM 16TH INTERNATIONAL CONFERENCE ON COOPERATIVE AND HUMAN ASPECTS OF SOFTWARE ENGINEERING, CHASE, 2023, : 105 - 110
  • [10] GitGuardian, 2022, The State of Secrets Sprawl 2022