An Approach to Cognitive Root Cause Analysis of Software Vulnerabilities

被引:0
作者
Hytopoulos, Theo [1 ]
Chan, Marvin [1 ]
Roth, Keegan [1 ]
Wasson, Rylan [1 ]
Huang, Fuqun [1 ]
机构
[1] Western Washington Univ, Bellingham, WA 98225 USA
来源
PRODUCT-FOCUSED SOFTWARE PROCESS IMPROVEMENT, PROFES 2024 | 2025年 / 15452卷
关键词
Root cause analysis; Software vulnerability; Cognitive analysis; Human error; Software process improvement; AGREEMENT; TAXONOMY;
D O I
10.1007/978-3-031-78386-9_2
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Understanding the root causes of software vulnerabilities is crucial for designing and implementing preventative measures. Given that software development is inherently a human activity, developers' cognitive errors stand out as a significant contributor to software vulnerabilities. While existing studies on vulnerability analysis focus on software faults associated with vulnerabilities or types of vulnerabilities, there exists a gap in understanding how software vulnerabilities stem from developers cognitive errors. This paper proposes a novel method, Cognitive Analysis for Software Vulnerabilities (CASV), aimed at identifying the cognitive mechanisms of how software vulnerabilities are introduced by software developers. CASV includes a set of cognitive patterns established in psychology and a modeling approach to bridge the gaps between patterns and software development contexts. Two empirical studies conducted to apply and assess the CASV method. The studies involved four analysts performing root cause analysis on 152 software vulnerabilities. The results indicate that CASV was able to explain the cognitive mechanisms behind 70% (106 out of the 152) software vulnerabilities. Furthermore, CASV significantly improves the reliability of vulnerability root cause analysis. It achieved an agreement level of 0.63 among four analysts within the range of Substantial Agreement, compared to 0.29 when using a root cause taxonomy. The implications of this study are far-reaching, particularly in terms of raising developers' awareness and enhancing their cognitive skills to proactively prevent software vulnerabilities.
引用
收藏
页码:11 / 26
页数:16
相关论文
共 30 条
  • [1] [Anonymous], 1990, IEEE Standard 610.12-1990, P1, DOI DOI 10.1109/IEEESTD.1990.101064
  • [2] Development of a human error taxonomy for software requirements: A systematic literature review
    Anu, Vaibhav
    Hu, Wenhua
    Carver, Jeffrey C.
    Walia, Gursimran S.
    Bradshaw, Gary
    [J]. INFORMATION AND SOFTWARE TECHNOLOGY, 2018, 103 : 112 - 124
  • [3] Assal H., Security in the software development lifecycle
  • [4] Byrne MD, 1997, COGNITIVE SCI, V21, P31, DOI 10.1016/S0364-0213(99)80018-4
  • [5] Machine Learning Methods for Software Vulnerability Detection
    Chernis, Boris
    Verma, Rakesh
    [J]. IWSPA '18: PROCEEDINGS OF THE FOURTH ACM INTERNATIONAL WORKSHOP ON SECURITY AND PRIVACY ANALYTICS, 2018, : 31 - 39
  • [6] Fleiss JL, 2003, Wiley Series in Probability and Statistics, P1940, DOI [10.1002/0471445428, DOI 10.1002/0471445428]
  • [7] Mapping Software Faults with Web Security Vulnerabilities
    Fonseca, Jose
    Vieira, Marco
    [J]. 2008 IEEE INTERNATIONAL CONFERENCE ON DEPENDABLE SYSTEMS & NETWORKS WITH FTCS & DCC, 2008, : 257 - +
  • [8] Interrater agreement and interrater reliability: Key concepts, approaches, and applications
    Gisev, Natasa
    Bell, J. Simon
    Chen, Timothy F.
    [J]. RESEARCH IN SOCIAL & ADMINISTRATIVE PHARMACY, 2013, 9 (03) : 330 - 338
  • [9] Glaser B., 1967, DISCOV GROUNDED THEO, DOI DOI 10.4324/9780203793206
  • [10] Huang AFQ, 2012, PROCEEDINGS 18TH ISSAT INTERNATIONAL CONFERENCE ON RELIABILITY & QUALITY IN DESIGN, P44