How automated compliance audits speed development
- By Doug Dooley
- Mar 01, 2019
With so many consequential data breaches in the past decade, data security and privacy are top of mind for government security teams, as well as for any organization that must adhere to federal and state regulations. To address security vulnerabilities, regulations require compliance with laws and guidelines to protect data. The Health Insurance Portability and Accountability Act, the Federal Information Security Management Act, the Family Educational Rights and Privacy Act and more are all designed to keep private information safe. Ensuring overall compliance is critical for any agency governed by compliance regulations.
Regulations aren’t the only pressure points for government agencies. Oftentimes, partners want proof that applications have adequate security measures to assure that their proprietary data won’t be lost to a breach or exposed to a vulnerability. Partners might insist on conducting their own penetration testing to assure security before using those applications.
Agency security directors must work closely with their application development counterparts to ensure data security and compliance requirements are met before applications go into production. This is easier said than done, especially as agencies move to an agile or DevOps style of application development. It creates a real balancing act. Security directors must meet all compliance requirements, while application developers must hit business objectives around continuous delivery. Even if a team's objective might be to release a new application build every few weeks, it must ensure that each new build doesn’t compromise compliance or open up to a vulnerability.
Development teams typically check their applications for vulnerabilities through penetration testing. It’s a very labor-intensive, manual process that must be repeated for every new build of the application. One failed pen test can hold up the application release until a fix is made and a retest finds no additional vulnerabilities. This causes stress with the DevOps team that is looking to meet deadlines to get the release out the door. Given that the pen testing process requires significant staff, resources and tools, it’s a very inefficient way to repeatedly validate security and compliance as a crucial part of the application continuous integration/continuous delivery (CI/CD) cycle.
Automated security checks are more effective
A better approach is to automate the security and compliance validation checks pen testers manually conduct during application development.
In a DevOps model, code gets reviewed and tested, goes through a build, gets compiled then pushed into production. And all of that has become very automated in the DevOps world.
Now it’s time to add security early in that flow without any kind of manual intervention. That means that when software is being compiled and tested, it's also going through an automated security test to make sure that it adheres to all the compliance requirements in place, and the test results are fed back into the DevOps workflow. This keeps the development process on schedule because security has become an integral part of the normal DevOps CI/CD workflow. Security validation is done continuously and at the speed needed to keep up with development.
In addition, the security scanning is essentially being conducted by an independent third party when it’s performed with a tool with a security engine behind it. All the sophistication and knowledge of a pen testing team is instead built into the scanning engine to drive the security automation process.
The benefits of automated security analysis
A model that integrates automated security analysis has numerous benefits. First of all, it enables the development team to save time and accelerate development. The team can catch problems early in a pre-production environment rather than waiting for a penetration test against compiled code. That means applications can be put into production much more quickly.
Next, the process offers continuous validation of security and compliance checks, rather than point-in-time assessments. This makes the application more secure. Moreover, a tool that can automatically generate a data trust report shows that the appropriate security checks are being conducted on a continuous basis by an unbiased third party. This is often enough to satisfy auditors as well as customers and partners who would otherwise require their own costly and time-consuming penetration test on the application.
Another benefit is that automation allows companies to move away from traditional manual processes that are expensive and hard to staff. Fewer security professionals need to be devoted to automated application security analysis, so agency employees can be reassigned to other tasks and contracted staffing can be reduced.
For agencies looking to follow this DevSecOps practice, innovative tools are available today that provide automated security analysis. Look for tools that are able to:
- Identify all mobile and web applications.
- Discover all internet-facing APIs that are public or private.
- Deploy a security analysis service that continuously checks these apps and APIs.
- Deliver a list of vulnerabilities with guidance on how to fix them (e.g. secure code samples, config updates).
- Integrate with ticketing and build systems for CI/CD automation.
- Generate compliance reports on-demand at any moment in time for automated audits.
Agile and DevOps development models are moving too quickly to allow for manual security assurance and compliance validation. It’s time for development teams to adopt a DevSecOps model with automated security analysis and protection.
Doug Dooley is chief operating officer at Data Theorem.