It's the psychology stupid: how heuristics explain software vulnerabilities and how priming can illuminate developer's blind spots

作者: Daniela Oliveira Marissa Rosenthal , Nicole Morin , Kuo-Chuan Yeh , Justin Cappos , Yanyan Zhuang

DOI: 10.1145/2664243.2664254

关键词:

摘要: Despite the security community's emphasis on importance of building secure software, number new vulnerabilities found in our systems is increasing. In addition, that have been studied for years are still commonly reported vulnerability databases. This paper investigates a hypothesis software blind spots developer's heuristic-based decision-making processes. Heuristics simple computational models to solve problems without considering all information available. They an adaptive response short working memory because they require less cognitive effort. Our as represent corner cases exercise unusual flows, tend be left out from repertoire heuristics used by developers during their programming tasks.To validate this we conducted study with 47 using psychological manipulation. each developer worked approximately one hour six vulnerable scenarios. The sessions progressed providing no about possibility vulnerabilities, priming unexpected results, and explicitly mentioning existence code. results show (i) not priority development environments, (ii) part mindset while coding, (iii) assume common code, (iv) thinking requires effort, (v) education helps, but can difficulties correlating particular learned or current task, (vi) cueing on-the-spot powerful mechanism make aware potential vulnerabilities.

参考文章(56)
John W. Payne, James R. Bettman, Eric J. Johnson, The adaptive decision maker: Frontmatter ,(1993) , 10.1017/CBO9781139173933
Gerd Gigerenzer, Ralph Hertwig, Thorsten Pachur, None, Heuristics: The Foundations of Adaptive Behavior ,(2015)
Su Zhang, Doina Caragea, Xinming Ou, An Empirical Study on Using the National Vulnerability Database to Predict Software Vulnerabilities Lecture Notes in Computer Science. pp. 217- 231 ,(2011) , 10.1007/978-3-642-23088-2_15
Willemien Visser, Jean-Michel Hoc, Expert Software Design Strategies Psychology of Programming. pp. 235- 249 ,(1990) , 10.1016/B978-0-12-350772-3.50020-3
Frederick J. Gravetter, Larry B. Wallnau, Statistics for the Behavioral Sciences ,(1985)
R. Anderson, Why information security is hard - an economic perspective annual computer security applications conference. pp. 358- 365 ,(2001) , 10.1109/ACSAC.2001.991552
Neil Daswani, Anita Kesavan, Christoph Kern, Foundations of Security: What Every Programmer Needs to Know ,(2007)
Derick Wood, Theory of computation ,(1986)
Matt Bishop, David Bailey, A Critical Analysis of Vulnerability Taxonomies Defense Technical Information Center. ,(1996) , 10.21236/ADA453251