Q1. What are the requirements for static application security testing in today's development environment? What questions should you be asking in evaluating SAST tools?
Static Application Security Testing (SAST) is one of the most popular techniques for detecting security vulnerabilities in web apps and other software, and there are several reasons organizations are embracing SAST as part of their development process. First and foremost, SAST can be used in the early stages of the software development life cycle (SDLC) when vulnerabilities are cheaper to remediate. Second, it's relatively easy to use and it provides detailed results, such as the specific lines of code that contain the vulnerabilities. Lastly, SAST can be automated and integrated seamlessly into development workflows so you don't have to halt operations and spend extra cycles running security tests.
When evaluating SAST vendors, the question you need to ask up front is, does this solution support the programming languages and frameworks you use to build your applications? SAST technology analyzes source code, so it needs to be able to understand or interpret a given programming language in order to find vulnerabilities written in it. Some vendors specialize in SAST for just one or a few of programming languages, while others support a broad range of languages.
Another important factor to consider is if, and, how well, a SAST solution integrates with your other development tools. If you have adopted Agile or DevOps, this is particularly important because it enables your security testing activities to keep pace with your development velocity. Some SAST solutions have IDE plug-ins that developers can use to perform SAST locally on their desktops, enabling them to find and fix problems before they even check in their code. This can save considerable time and money down the road. SAST solutions should also integrate with continuous integration (CI) tools via plug-in or APIs so that scans can be triggered as part of the automated build process.
Lastly, the accuracy of your SAST solution is paramount. If your SAST solution doesn't effectively detect all critical vulnerabilities in your code, you leaving your organization at risk of a cyberattack or data breach. Conversely, if your SAST solution produces a lot of false positives, meaning it flags issues that aren't real vulnerabilities, you end up wasting resources investigating non-issues and your development organization will ultimately reject or circumvent the tool.
Q2. What are the biggest technical challenges in securing customer-facing web applications given the emphasis on speed in software delivery these days?
One of the biggest challenges organizations face in securing their customer-facing web applications today is the rapid, continuous pace of modern software development and delivery. Development paradigms like Agile, DevOps, and CI/CD are becoming mainstream, and application delivery cadences have warped from quarterly or monthly releases to, in some cases, dozens of code changes per day. In theory, one small code change—a single line of code--could be the difference between a secure application and a massive data breach. With application code bases in constant flux, this evolution has really turned application security into a moving target. In response, application security technologies and best practices have had to evolve too. The AppSec market is moving towards fully automated, continuous security testing solutions, technologies that automatically prioritize the most critical vulnerabilities, and tools that perform incremental scans based on changes to a code base.
Another side effect of modern software development is the widespread use of vulnerable open source software components. Open source software itself is not a security problem, but the use of outdated, insecure open source components or the failure to patch them when new vulnerabilities are disclosed has left many organizations exposed. With modern applications comprising of more open source than proprietary code, and with 15 to 20 unique open source vulnerabilities being discovered each day, managing open source security has become a major challenge. Software composition analysis, an application security testing technology that automatically identifies and tracks vulnerable open source components, is quickly gaining traction with organizations seeking to proactively address this challenge.
Q3. What does Synopsys plan to highlight, or focus on, at Black Hat Asia 2019 and why?
At Black Hat Asia 2019, Synopsys will be showcasing our portfolio of industry-leading tools and services designed to help organizations build secure, high quality software faster. Our solutions include static application security testing, software composition analysis, and dynamic application security testing, which enable teams to quickly find and fix vulnerabilities and defects in proprietary code, open source components, and application behavior.
We will also be unveiling our new application security testing platform that unifies our tools and services into a centralized management and reporting console. Organizations need to employ a combination of security testing techniques at various stages within the SDLC to secure their applications against evolving threats, but they also need to do so in an efficient and effective manner that is conducive to agility and innovation. Over the past several years, we have successfully developed a portfolio of differentiated products and services that address most organizations security testing gaps, and now we're delivering on the promise to drive efficiencies and synergies across these solutions. The new platform represents an important step forward in unifying our Software Integrity portfolio into an offering that is more valuable than the sum of its parts.