Security in the Software Development Lifecycle Hala Assal and Sonia Chiasson, Carleton University

Security in the Software Development Lifecycle Hala Assal and Sonia Chiasson, Carleton University

Security in the Software Development Lifecycle Hala Assal and Sonia Chiasson, Carleton University https://www.usenix.org/conference/soups2018/presentation/assal This paper is included in the Proceedings of the Fourteenth Symposium on Usable Privacy and Security. August 12–14, 2018 • Baltimore, MD, USA ISBN 978-1-939133-10-6 Open access to the Proceedings of the Fourteenth Symposium on Usable Privacy and Security is sponsored by USENIX. Security in the Software Development Lifecycle Hala Assal Sonia Chiasson School of Computer Science School of Computer Science Carleton University Carleton University Ottawa, ON Canada Ottawa, ON Canada [email protected] [email protected] ABSTRACT blamed for security vulnerabilities [27, 58]. However, sim- We interviewed developers currently employed in industry ply expecting developers to keep investing more efforts in to explore real-life software security practices during each security is unrealistic and unlikely to be fruitful [14]. stage of the development lifecycle. This paper explores steps Usable security research focusing on developers and the hu- taken by teams to ensure the security of their applications, man factors of software security{a new area that has not how developers' security knowledge influences the process, been sufficiently investigated{has the potential for a widespread and how security fits in (and sometimes conflicts with) the positive influence on security [14, 27]. Towards guiding re- development workflow. We found a wide range of approaches search in this area, Acar et al. [14] proposed a research to software security, if it was addressed at all. Furthermore, agenda for usable security for developers where they high- real-life security practices vary considerably from best prac- light important research questions. tices identified in the literature. Best practices often ignore factors affecting teams' operational strategies. Division of Our work is a step towards addressing one of the prominent labour is one example, whereby complying with best prac- research areas outlined by Acar et al.'s research agenda [14]. tices would require some teams to restructure and re-assign This paper explores steps that teams are taking to ensure tasks|an effort typically viewed as unreasonable. Other the security of their applications, how developers' security influential factors include company culture, security knowl- knowledge influences the process, and how security fits in edge, external pressure, and experiencing a security incident. (and sometimes conflicts with) the development workflow. We interviewed 13 developers who described their tasks, 1. INTRODUCTION their priorities, as well as tools they use. During the data Software security focuses on the resistance of applications to analysis we recognized that our participants' practices and malicious attacks resulting from the exploitation of vulnera- attitudes towards security formed two groups, each with bilities. This is different from security functions, which can trends distinguishable from the other group. On comparing be expressed as functional requirements, such as authentica- real-life security practices to best practices, we also found tion [60]. With increasing connectivity and progress towards significant deviations. the Internet of Things (IoT), threats have changed [30]. In addition to vulnerabilities in traditional computing systems This paper makes the following contributions. (e.g., Heartbleed [21]), vulnerabilities are found in devices • We present a qualitative study looking at real-life prac- and applications that are not necessarily considered security tices employed towards software security. sensitive, such as cars [28], and medical devices [43]. More- • We amalgamate software security best practices ex- over, the threat is no longer limited to large enterprises; tracted from the literature into a concise list to assist Small and Medium Enterprises (SMEs) are increasingly be- further research in this area. coming targets of cyberattacks [50]. • We reflect on how well current security practices follow With increasing threats, addressing security in the Soft- best practices, identify significant pitfalls, and explore ware Development Lifecycle (SDLC) is critical [25, 54]. De- why these occur. spite initiatives for implementing a secure SDLC and avail- • Finally, we discuss opportunities for future research. able literature proposing tools and methodologies to assist 2. RELATED WORK in the process of detecting and eliminating vulnerabilities Green and Smith [27] discussed how research addressing (e.g. [16, 18, 20, 48]), vulnerabilities persist. Developers are the human factors of software security is generally lack- often viewed as \the weakest link in the chain" and are ing, and that developers are often viewed as \the weakest link"|mirroring the early attitude towards end-users before usable security research gained prominence. While develop- ers are more technically experienced than typical end-users, they should not be mistaken for security experts [14, 27]. They need support when dealing with security tasks, e.g., Copyright is held by the author/owner. Permission to make digital or hard through developer-friendly security tools [58] or program- copies of all or part of this work for personal or classroom use is granted ming languages that prevent security errors [27]. To this without fee. USENIX Symposium on Usable Privacy and Security (SOUPS) 2018. end, Acar et al. [14] outlined a research agenda towards un- August 12–14, 2018, Baltimore, MD, USA. derstanding developers' attitudes and security knowledge, USENIX Association Fourteenth Symposium on Usable Privacy and Security 281 exploring the usability of available security development tools, eral development activities, attitude towards security, se- and proposing tools and methodologies to support develop- curity knowledge, security processes, and software testing ers in building secure applications. We now discuss relevant activities (see Appendix A for interview script). To re- research addressing such human aspects of software security. cruit participants, we posted on development forums and relevant social media groups, and announced the study to Generally, studies in this area face challenges in recruiting professional acquaintances. We recruited 13 participants; developers and ensuring ecologically validity. Developers are each received a $20 Amazon gift card for participation. Be- busy and must often comply with organizational restrictions fore the one-on-one interview, participants filled out a de- on what can be shared publicly. To partially address these mographics questionnaire. Each interview lasted approxi- issues, Stransky et al. [51] designed a platform to facilitate mately 1 hour, was audio recorded, and later transcribed distributed online programming studies with developers. for analysis. Interviews were conducted in person (n = 3) Oliveira et al. [22] showed that security vulnerabilities are or through VOIP/video-conferencing (n = 10). Data collec- \blind spots" in developers' decision-making processes; de- tion was done in 3 waves, each followed by preliminary anal- velopers mainly focus on functionality and performance. To ysis and preliminary conclusions [26]. We followed Glaser improve code security, Wurster and van Oorschot [58] recom- and Strauss's [26] recommendation by concluding recruit- mend taking developers out of the development loop through ment on saturation (i.e., when new data collection does not the use of Application Programming Interfaces (APIs). To- add new themes or insights to the analysis). wards this goal, Acar et al. [12] evaluated five cryptographic Teams and participants. A project team consist of teams APIs and found usability issues that sometimes led to in- of developers, testers, and others involved in the SDLC. secure code. However, they found that documentation that Smaller companies may have only one project team, while provided working examples was significantly better at guid- bigger companies may have different project teams for dif- ing developers to write secure code. Focusing on software ferent projects. We refer to participants with respect to security resources in general, Acar et al. [15] found that some their project teams; team i is referred to as Ti and P-Ti is available security advice is outdated and most resources lack the participant from this team. We did not have multiple concrete examples. In addition, they identified some under- volunteers from the same company. Our data contains infor- represented topics, including program analysis tools. mation from 15 teams in 15 different companies all based in Focusing on security analysis, Smith et al. [48] showed that North America; one participant discussed work in his cur- tools should better support developers' information needs. rent (T7) and previous (T8) teams, another discussed his On exploring developers' interpretation of Static-code Anal- current work in T10 and his previous work in T11. In our ysis Tool (SAT) warnings, they found that participants fre- dataset, seven project teams build web applications and ser- quently sought additional information about the software vices, such as e-finance, online productivity, online booking, ecosystem and resources. To help developers to focus on website content management, and social networking. Eight the overall security of their code, Assal et al. [16] proposed teams deliver other types of software,e.g., embedded soft- a visual analysis environment that supports collaboration ware, kernels,

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    17 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us