Lucian Constantin
CSO Senior Writer

Enterprise software developers continue to use flawed code in apps

News
Jul 11, 20162 mins

The use of third-party code in enterprise software projects is growing fast, but the used code often has known flaws

Companies that develop enterprise applications download over 200,000 open-source components on average every year and one in every 16 of those components has security vulnerabilities.

This is indicative of the poor state of the software supply chain, a problem that’s only getting worse with the increased reliance on third-party code combined with bad software inventory practices.

According to software development lifecycle firm Sonatype, third-party components account for 80 percent to 90 percent of the code found in a typical enterprise application today.

The number of downloads from the largest largest public repository of open-source Java components reached 31 billion last year, a 82 percent increase over 2014, the company found.

Sonatype runs the hosting infrastructure for the Central Repository, the default repository for Apache Maven, SBT and other Java software building tools. The company does not police what goes in and out of the repository; that task falls to the community of open source developers who contribute components to it.

The average company downloads more than 229,000 components annually, but only around 5,000 of them are unique, Sonatype said in its State of Software Supply Chain report released Monday. Of those downloaded components, 1 in 16 has security defects.

This is reflected in production too. An analysis of 25,000 enterprise applications revealed that 6.8 percent of the components used in them had at least one known vulnerability.

Components that are over two years old account for 80 percent of the risk, but unfortunately they also represent over half of all components used in applications.

Sonatype estimates that it would cost an enterprise with 2,000 applications about US$7.4 million to remediate only 10 percent of the defects and vulnerabilities introduced by consuming components.

Supply chain management practices that are common in other industries, such as manufacturing,would help software developers reduce their maintenance costs considerably. These include doing a strict selection of component suppliers, choosing only the highest quality components and tracking when and where those components were used.

Lucian Constantin

Lucian Constantin writes about information security, privacy, and data protection for CSO. Before joining CSO in 2019, Lucian was a freelance writer for VICE Motherboard, Security Boulevard, Forbes, and The New Stack. Earlier in his career, he was an information security correspondent for the IDG News Service and Information security news editor for Softpedia.

Before he became a journalist, Lucian worked as a system and network administrator. He enjoys attending security conferences and delving into interesting research papers. He lives and works in Romania.

You can reach him at lucian_constantin@foundryco.com or @lconstantin on X. For encrypted email, his PGP key's fingerprint is: 7A66 4901 5CDA 844E 8C6D 04D5 2BB4 6332 FC52 6D42

More from this author