DevSecOps: Eat Carrots, Not Cupcakes
You Are What You Eat
March 21, 2017

Derek Weeks
Sonatype

When it comes to food, we all know what's considered "good" and what's "bad".

For fried, battered, buttery or creamy: the category of cupcakes and such ... just say no. When fresh, grilled, steamed or baked: of course, you should eat your veggies and other fine foods ... bon appetite.

We can all understand this simple rule when eating. But for many, when it comes to software development, simple rules and advice from nutritional labels aren't always there for us. Simple rules like: use "good" open source components, not "bad" ones (i.e., vulnerable, outdated, risky licenses) when building and deploying your next app.

Evidence of Gluttony

To meet the need for speed, virtually all modern development organizations are using open source and third party components to assemble applications rather than build every function from scratch. According to the 2016 State of the Software Supply Chain Report, conducted by Sonatype, the average development organization feasts on over 229,000 open source Java components each year, but we're seeing similar consumption practices in the JavaScript, Python, Ruby, and .NET development realms. While the upside of this gluttony is improved productivity, there is a downside to consuming components without the proper insight into their quality.

Beyond the consumption of open source and third-party software components in development, the same guidance holds true for containers used by DevOps teams. Today, over 100,000 free apps are available on Docker Hub, and consumption of those applications into DevOps tool chains and infrastructure often goes unchecked.

The Downside of Efficiency

While sourcing components and containers can accelerate development efforts, many organizations do not apply sufficient scrutiny to assessing their quality or security. The 2016 Software Supply Chain report also indicates that 1 in 15 of the components used in applications contain at least one known security vulnerability. What this means is that not all components and containers are created equal. It also means that blind consumption practices can have both immediate and long-term consequences for the organization consuming the open source software components or containerized applications.

According to the 2017 DevSecOps Community Survey, conducted by Sonatype, 58% of organizations looking to improve the quality of components used in their development practices have implemented an open source governance practice. This is up only slightly from the 2014 survey which showed 57% of organizations with open source policies in place.

For those without a policy, there are no rules in place when it comes to "good" vs. "bad" consumption practices. Having policies in place can help to improve the quality of applications being produced, reduce vulnerabilities to attack, and eliminate use of components with risky license types.

Breaking Bad

At the time, over 2,700 survey participants of the 2014 survey indicated that more than 1 in 10 organizations (14%) had experienced or suspected a breach in their applications related to an open source software component. Because, that survey took place in the same month that the notorious OpenSSL software component (a.k.a"Heartbleed") vulnerability was announced, I felt like it might have inflated the number of breach related responses. To my surprise, the 2017 survey shows that 20% of organizations (1 in 5) had or suspected a breach related to open source software components in their applications.

In the past three years, as the rate of confirmed or suspected breaches related to vulnerable open source components increased by 50%, the number of organizations having rules in place to govern the use of secure components remained the same.

Across the DevOps community, we are seeing much more attention being paid to security concerns and more organizations finding news ways to automate practices early in the SDLC. Automating the evaluation of open source and third party components against rules designated in open source governance policies is one the approaches being adopted. While not the only answer to DevSecOps requirements, having an automated policy in place to enforce governance and guide remediation can pay off handsomely if it also helps prevent a breach.

When it comes to carrots and cupcakes, the right choices can offer great short- and long-term benefits. In the realm of components and containers, making "good" choices will also benefit your DevSecOps practice.

Read about more findings from the 2017 DevSecOps Community Survey

Derek Weeks is VP and DevOps Advocate at Sonatype.

The Latest

August 15, 2017

A common belief within DevOps circles is that automation not only enables greater frequency of delivery and deployment, but improves its overall success rate. Whenever manual intervention is required, the chances of errors creeping in increases. Human error is a significant factor in many an outage, after all ...

August 14, 2017

DevOps and NetOps are both far more generous in their opinion of the other with respect to prioritization of efforts than traditional archetypes purport them to be, and they have a lot in common – even though they may disagree on details – according to a new survey by F5 ...

August 10, 2017

Only 12 percent of organizations can claim that their whole organization is on the path to business agility even though more than two thirds of survey participants agreed that agile organizations are better able to quickly respond to dynamic business conditions, according to a new survey from CA Technologies ...

August 09, 2017

Alongside its clear benefits, DevOps brings unique challenges when developing and operating a mobile environment. Mobile app developers and development teams face a unique set of requirements relating to collaboration, testing, and release. Technology fragmentation, disparate back-end systems, updates that require user action, and poor instrumentation can impede the DevOps process and become critical roadblocks to agile mobile development, ultimately impacting app retention and the bottom line ...

August 07, 2017

A crashing app might be a deal breaker, no matter how heavy the load that an alternative website entry point can handle would be. It is all about quickly verifying compliance against key functional and non-functional requirements in order to meet aggressive release schedules as part of the Go-to-market strategy. This means positioning unit testing, UI testing, API testing, and, of course, performance and load testing — as pillars of SDLC ...

August 03, 2017

Most software developers make themselves easy targets for hackers, even when they are behind a corporate firewall, according to a new survey from Netsparker Ltd. ...

August 01, 2017

Your top priority is to improve application development agility, but you may run into roadblocks put up by a security team that (mistakenly) believes speed is the enemy of effective cybersecurity. A new survey finds a majority of enterprises are working to overcome those roadblocks by integrating security into their existing DevOps methodology ...

July 31, 2017

Agile development compresses software testing cycles, jeopardizing risk coverage and opening the door for software failures. Here's what you can do ...

July 27, 2017

While 75 percent of organizations highlight continuous testing as critical or important, only a minority of survey respondents have made exceptional progress acquiring the necessary knowledge and key enablers to drive digital transformation, according to a global study by CA Technologies ...

July 25, 2017

Test teams feel the need to adopt DevOps, but that migration is not always seamless, according to a new survey by LogiGear. That may be because 25 percent of respondents said their Ops/IT team is always helpful to the test team and its needs; 37 percent said Ops teams regularly help bring about good test environments; 27 percent said Ops can be "slow or difficult" ...

Share this