DevSecOps. What? Why? How? - An Introduction
What?
A security-focused, continuous-delivery software development life cycle is referred to as DevSecOps (SDLC). DevSecOps draws on the lessons learned and best practices of DevOps in general.?When DevOps practices are applied to software security, security testing becomes an active, integrated element of the development process.?
Security has traditionally been considered as a secondary mechanism, which is unfortunate.?Towards the end of the SDLC, InfoSec frequently interacts with development teams.
As noble as their objectives may be, discovering security flaws at the conclusion of the SDLC can be aggravating.With DevSecOps, traditional security engagement is raised to an active process in the SDLC.
DevOps in general has brought processes like continuous integration and continuous delivery.
These strategies guarantee active testing and verification of code correctness during the agile development process.In a similar way, DevSecOps incorporates active security audits and penetration testing into agile development.
DevSecOps advocates that security be built into a product rather than added after it is published.
Why?
In a nutshell, security. Our technology-driven livelihoods will be jeopardised unless we have safe and secure software. One of the most serious challenges that enterprises and governments face today is security breaches. Several big corporations have recently been penetrated, resulting in massive ramifications and dramatic C-suite resignations. Failed executives are making headlines as customers lose faith in tainted service providers.
The DevSecOps principles encourage collaboration and prevent late handoffs to security experts. When you compare cycle times before and after, the benefit is evident. Your product might be declared insecure at the last minute without DevSecOps, resulting in several costly revisions. Security gold standards are built into your product after DevSecOps. It's conceivable that you'll discover unanticipated complications at the last minute, but the odds are slim.
So the question isn't so much "Why DevSecOps?" as it is "How Can We Execute Successfully in the DevSecOps Era?" DevSecOps is a breath of new air for individuals who are stuck in traditional security methods. This is not a "one size fits all" mandate from a centralised organisation, solutions may vary depending on your tech stack and architecture.
Overall, your security posture improves your market reputation and fosters customer confidence. With that in mind, discussing how DevSecOps fits into the continuous everything model is a suitable transition.
How? (Continuous Delivery)
We can find security vulnerabilities in OSS (open source software) libraries we use just as much as we do in the code we develop. Every day, a large number of developers codes, and manual code assessments do not sustain. This is where DevSecOps' true power comes.
领英推荐
DevSecOps and continuous delivery are two sides of the same coin. DevSecOps integrates seamlessly with the continuous everything concept to ensure that our software deliveries are secure.
Continuous delivery pipelines are examples of the continuous everything concept in action, and they aid in the validation of every commitment made by our teams. Integrate automatic security checks into the pipeline to get early alerts, and keep a constant eye on escaping security flaws. As your company grows, so does the need for integrated continuous security techniques.
Unit tests and static code analysis are the most closely related to source code and perform checks without executing it. Remember that a flaw has a modest cost in testing, a medium cost in staging, and a high cost in production. Invest in security unit tests and static analyzers, which are both affordable and quick, and may save you time later on.
In Security unit testing, the components are smallest distributable and testable units. These are as crucial as other tests performed on the piece of code. However, some teams still manage to entirely neglect this subject.
Following are the crucial elements of DevSecOps used to support the continuous delivery.
Static Analysis Security Testing (SAST)
Static code analyzers discover security flaws in your own code and in potentially vulnerable libraries that you import, in addition to coding best practises violations.Contemporary technologies work well with the continuous delivery pipeline. Make sure the SAST scanner you chose is compatible with the programming language you want to use.
A word of caution: SAST is prone to reporting false positives, so add a layer of persistence to help pipelines "remember." False positives might irritate the team to the point that they stop responding to messages about damaged pipelines, which is risky. Don't allow the pipeline flag a mistake again and again after teams have identified it as a false positive with valid explanation. As a result, teams may disable SAST or allow pipelines to disregard SAST failures entirely.
Dynamic Analysis Security Testing (DAST)
A subsystem is made up of loosely linked components. DAST may be used to install and test subsystems for security vulnerabilities (DAST). Unlike SAST, DAST evaluates an application in its operating state from the outside, just like an attacker would. Because DAST scanners communicate with the application from the outside, they may not be dependent on certain languages.
The main point is to incorporate both SAST and DAST in your security approach because they each have their own set of advantages. Integrate these methods with the delivery process to ensure that you receive timely feedback.
Conclusion
Security, like quality, is everyone's responsibility in today's environment. Reactive companies and executives have suffered severe consequences, and are now re-energizing their security approach with new funding. Traditional security professionals work in a vacuum with a capacity restricted by the number of security workers working within. Instead, adopt DevSecOps' agile, decentralised strategy and retrain your teams to take charge of their own future. Make your product development teams accountable as well, so there are no squabbles between them and the InfoSec department.
Information Security Program Manager
3 年I must say that is an excellent and pretty comprehensive article on an emerging area. You might want to shed some more light on SSDLC. KIP!
CISSP-ISSAP CCSP CISM CRISC | Security Executive at HPE | Technology Evangelist
3 年Very clear, good explanation :)
Application Security Architect | CISSP-ISSAP, OSCP
3 年Good work, just want to add threat-modeling as an important activity for the essence of DEVSECOPS of finding and fixing issues as early as possible (shift left approach) both for application and architecture.
Co-Founder & CEO of Wiresec | Principal Consultant OT Cyber Security with CNS Middle East | Entrepreneur & Strategic Advisor
3 年Great ??
IT Security Engineer at Win technologies, a proud member of the Betway Group
3 年Very well written Abuzar!