Q1. What's driving demand for interactive application security testing? What questions should you be asking when considering IAST tools for your organization?
The motivation behind the turn to IAST is a desire for improved DevSecOps, achieving greater accuracy, speed, and efficiency. To keep up with the fast pace of releases and the speed of DevOps, organizations need accurate and automated security testing tools that can easily scale and produce actionable results. Historically, AppSec programs were characterized by the use of Static Application Security Testing (SAST) tools which analyze the code or binary itself, and Dynamic Application Security Testing (DAST) tools that simulate attacks to see how an application reacts. Fast forward to 2019: while SAST is able to fit fast and iterative development processes, point-in time DAST is slow and manual, rendering it unfit for DevOps-like processes. This is where Interactive Application Security Testing (IAST) comes in.
IAST is a dynamic and continuous security testing solution that detects vulnerabilities on a running application by leveraging existing functional testing activities. IAST is designed to fit agile, DevOps and CI/CD processes. Unlike legacy DAST solutions, IAST does not introduce any delays to the software development lifecycle. Moreover, IAST requires little security training or expertise to use. Testing is continuous and automatic, significantly reducing the burden placed on developers.
Organizations considering adopting IAST tools should ask themselves questions like: Is my code being delivered quickly enough and is the final product secure? Are my teams wasting any time with the current tools we have in place? Do our current solutions provide adequate visibility into vulnerabilities within our applications and the code they interact with?
Q2. What impact do you see the rise in serverless computing have on application security testing? What, if any, new security concerns does the trend create?
In serverless computing environments – such as AWS, Azure and Google Cloud -- although applications are running without a managed server, they still execute code. If this code is written in an insecure manner, it can still be vulnerable to application-level attacks. For this reason, the increasing adoption of serverless computing is driving new requirements for application security testing. This includes everything from supported integrations with serverless computing vendors; to new functionality that scans the meta-data (settings, etc.) of the configurations and policies in addition to the applicative code; to complex security debugging since runtime analysis is dependent on the serverless vendors' monitoring/logging capabilities; and versioning to test all available versions of serverless functions.
While serverless computing may bring cost and productivity benefits to organizations, it also creates new security concerns. Attack and defense techniques are different in the serverless world from what we are used to in the traditional application world. There are shifts in ownership and responsibility. Organizations are now dependent on the security of their cloud vendor and responsibility for application security is now in the hands of developers—or the DevOps team—not IT.
And there are shifts in technology. In serverless, there's often a false sense of "there's no server to attack" while in fact, permanent/second order injections are possible. Serverless also creates the illusion of code isolation. In older generations, when applications were monoliths, it was easier to isolate each monolith into its own environment. With the introduction of micro services and serverless, almost every function of almost every application is able to communicate with any other function, making it challenging—practically impossible—to isolate each application in a different environment. This means that a vulnerability in one application can be abused to hack into other applications running within the same environment, since the isolation-barrier has been removed in serverless environments.
Putting it slightly differently, since functions from different applications should be able to talk with each other, the negative side effect is that vulnerabilities can also flow between functions belonging to different applications.
Q3. What does Checkmarx plan to highlight at Black Hat USA 2019?
Checkmarx plans to highlight our Software Exposure Platform, a comprehensive software security solution that tightly integrates SAST, SCA, IAST and developer training via a unified management and orchestration layer to address the entire software exposure lifecycle. The Checkmarx solution addresses software security from end-to-end empowering organizations to move to a true DevSecOps model and deliver secure software faster.
We live in a world of digital transformation and the rate at which software is being developed is continuing to increase exponentially. Software is everywhere, creating a massive attack surface for hackers. There's never been a greater need for solutions like ours that improve software security, while meeting the needs of the modern software development landscape.
Additionally, members of Checkmarx's security research team, including myself and Erez Yalon, will return to Black Hat USA to discuss our latest research findings, including emerging IoT threats, as well as some novel attack techniques to raise awareness among security practitioners.