DAST in DevSecOps
In my previous article I had mentioned the positives and the limitations of performing Static Application Security Testing (SAST). You can have a look at it here - https://www.garudax.id/posts/sourav-mallick-1a482980_sast-in-devsecops-application-security-testing-activity-6997810740204113920-DnV0?utm_source=share&utm_medium=member_desktop
DAST (Dynamic Application Security Testing), a part of black box testing, is designed to identify vulnerabilities by interacting with the running application. This helps in identifying both the compile-time and the run-time vulnerabilities that are only detectable within a running application. It does not require access to the application’s original source code as it only scans through execution of application. Hence the limitation of language dependency (which is there in case of SAST) is negated. The test is executed in runtime and thus security vulnerabilities are detected there itself, quickly and frequently.
The main advantages of DAST are:
However, with advantages there are limitations as well, such as:
Since both SAST and DAST have their own pros and cons, it is advised to use both of these testing methodologies together in a CI/CD pipeline, as both of them complement each other effectively.
When incorporating DAST into a DevSecOps pipeline both people and process aspects play crucial roles. The people aspect includes Developers, Security Engineers, Quality Assurance Engineers, Operations Team as well as Management and Leadership. In the context of DAST in a DevSecOps pipeline, the involvement of people with specific skills and responsibilities becomes instrumental in incorporating security testing into development and deployment processes. The people aspect in a DevOps pipeline is about fostering a collaborative and cross-functional mindset where people with different skills and expertise work together to achieve shared goals, including integration of security practices such as DAST.
Recommended by LinkedIn
The process aspect, on the other hand, involves defining and implementing a set of structured steps and practices to ensure the effective integration of security testing into the development and deployment phases. These include requirement gathering, the appropriate tool selection, the integration into the CI/CD pipeline, test execution and configuration, result analysis, continuous improvement, etc.. These process aspects ensure that DAST is seamlessly integrated into the DevSecOps pipeline, the vulnerabilities are identified and addressed effectively, and the overall security is continuously improved.
Thus, both the people and process aspects need to be aligned and work in tandem to ensure the successful integration of DAST into the DevSecOps pipeline.
However, practicing DAST in DevSecOps can present some challenges. They include:
Addressing these challenges requires a combination of technical solutions, process refinement and collaboration among teams. Organizations should thus continuously adapt and improve their DAST practices to mitigate these challenges effectively.
**Disclaimer: To know more you can DM me. All opinions expressed in the article is solely the opinion of the author and in no way whatsoever related to the organization in which the author works for.