Businesses’ digital transitions continue to demonstrate that being relative and competitive is directly related to the ability to build and leverage apps. As Microsoft CEO Satya Nadella frequently states, “every organization is now a software business.” Computer vulnerabilities that lead to unintended data leakage, theft, or threaten public safety or the environment are not only expensive, but can be fatal to the future of an organization. As a result, the quality and protection of the software and the production processes behind it have become a critical component of any organization’s success. It is a key reason why CISOs are rapidly collaborating with DevOps leaders and are vigilantly modernizing stable life-cycle creation (SDLC) processes to adopt new machine learning (ML) approaches.
Automated application security testing is a key component of current SDLC practices and can fairly easily detect many vulnerabilities and possible security flaws. Application security testing includes a broad variety of complementary techniques and tools — such as static application security testing (SAST), dynamic application security testing (DAST), interactive application security testing (IAST), and runtime self-protection (RASP). Present best practice security guidance proposes a combination of methods from this alphabet soup to manually flag bugs and vulnerabilities to minimize the effects of unsolved bugs on production systems.
The problematic result of this strategy is the amount of detected software vulnerabilities and the willingness of the development team to corroborate the probability of the flaw (and subsequent prioritization). It’s also a manifest issue in organisations that run bug bounty programs and need to sort out the bulk submissions of bug researchers. But established, well-oiled SDLC organizations battle automatic sorting and prioritization of bugs that emerge from application security testing workflows — for example, Microsoft’s 47,000 developers produce approximately 30,000 bugs a month.
New ML methods are being used to help identify and classify bugs on a scale, and the findings have been very positive. In Microsoft’s case, data scientists have established a process and ML model that correctly distinguishes between security and non-security bugs 99 percent of the time and precisely identifies important, high-priority security bugs 97 percent of the time.
For bugs and vulnerabilities outside automated application security testing tools and SDLC processes — such as client-reported or researcher-reported bugs — additional difficulties in using content-rich submissions for training ML classifier systems that involve password reports, personally identifiable information (PII) or other sensitive data forms. A recent publication called “Identifying Security Bug Reports Based solely on Report Titles and Noisy Information” points out that properly qualified ML classifiers can be extremely accurate even when protecting sensitive information and are limited to use only the title of the bug report.
CISOs will remain informed about developments in this field. According to Coralogix, an average developer produces 70 bugs per 1,000 lines of code, and fixing a bug takes 30 times longer than writing a line of code.
By correctly detecting security bugs from an increasing number of bugs created by automated application testing tools and customer-reported flaws, companies may better prioritize the process fixing of their development teams and further minimize application risks to their company, customers and partners.
While a lot of work and creativity is underway in the training of ML classification systems to triage security bugs and develop processes encapsulated in modern SDLCs, it will be a while before organizations can buy integrated, off-the-shelf solutions.
CISOs and DevOps Security Leaders should be alerted to new research publications and the state-of-the-art, and urge their automated application software testing tool suppliers to advance their solutions to intelligently and accurately mark security bugs apart from regular bugs.