一句话:通过1100名开发者的调研,提出并量化安全编码实践与安全文化,发现二者并不总相关。
论文指出复杂软件的安全性无法直接证明,已知缺陷数也受攻击与漏洞赏金等影响,因此研究者常改为度量安全努力,但缺乏统一度量且忽视安全文化。作者将12项经验确立的常见软件安全活动转成问题以评估安全实践,并基于既有文献设计问题评估安全文化;对59个国家1100名程序员开展安全开发调查,获得自然回应。结果显示仍有编码者在几乎不保障代码安全的环境中工作;安全实践与安全文化并不总是相关,部分安全实践强的组织安全文化薄弱,可能影响缺陷预防与持续安全投入。
Software security research has a core problem: it is impossible to prove the security of complex software. A low number of known defects may simply indicate that the software has not been attacked yet, or that successful attacks have not been detected. A high defect count may be the result of white-hat hacker targeting, or of a successful bug bounty program which prevented insecurities from persisting in the wild. This makes it difficult to measure the security of non-trivial software. Researchers instead usually measure effort directed towards ensuring software security. However, different researchers use their own tailored measures, usually devised from industry secure coding guidelines. Not only is there no agreed way to measure effort, there is also no agreement on what effort entails. Qualitative studies emphasise the importance of security culture in an organisation. Where software security practices are introduced solely to ensure compliance with legislative or industry standards, a box-ticking attitude to security may result. The security culture may be weak or non-existent, making it likely that precautions not explicitly mentioned in the standards will be missed. Thus, researchers need both a way to assess software security practice and a way to measure software security culture. To assess security practice, we converted the empirically-established 12 most common software security activities into questions. To assess security culture, we devised a number of questions grounded in prior literature. We ran a secure development survey with both sets of questions, obtaining organic responses from 1,100 software coders in 59 countries. We used proven common activities to assess security practice, and made a first attempt to quantitatively assess aspects of security culture in the broad developer population. Our results show that some coders still work in environments where there is little to no attempt to ensure code security. Security practice and culture do not always correlate, and some organisations with strong secure coding practice have weak secure coding culture. This may lead to problems in defect prevention and sustained software security effort.