2021 · 14 citations · 71 references
ComputingComputer ScienceCybersecurityComputer SecuritySecure Software DevelopmentSoftware EngineeringApi SecurityApplication Programming InterfacesSecure System DesignSecurity AwarenessSoftware Security EngineeringApi DesignApi UsabilityApplication Programming Interface SecurityCritical AssumptionsDeveloper Security TrainingSecure Development Life CycleSecure Software DesignSecurity Usability
Developers struggle to program securely. Prior works have reviewed the methods used to run user-studies with developers, systematized the ancestry of security API usability recommendations, and proposed research agendas to help understand developers’ knowledge, attitudes towards security and priorities. In contrast we study the research to date and abstract out categories of challenges, behaviors and interventions from the results of developer-centered studies. We analyze the abstractions and identify five misplaced beliefs or tropes about developers embedded in the core design of APIs and tools. These tropes hamper the effectiveness of interventions to help developers program securely. Increased collaboration between developers, security experts and API designers to help developers understand the security assumptions of APIs alongside creating new useful abstractions—derived from such collaborations—will lead to systems with better security.
71
Using Static Analysis to Find Bugs
Nathaniel Ayewah, William Pugh, David Hovemeyer et al. · IEEE Software · 2008 · 522 citations
Computing, Computer Science, Secure Software Development +14
Why eve and mallory love android
Sascha Fahl, Marian Harbach, Thomas Muders et al. · 2012 · 491 citations
The most dangerous code in the world
Martin Georgiev, Subodh Iyengar, Suman Jana et al. · 2012 · 414 citations