{"id":15941,"date":"2022-11-29T10:27:10","date_gmt":"2022-11-29T15:27:10","guid":{"rendered":"https:\/\/www.thesslstore.com\/blog\/?p=15941"},"modified":"2023-03-31T12:35:30","modified_gmt":"2023-03-31T16:35:30","slug":"sbom-an-up-close-look-at-a-software-bill-of-materials","status":"publish","type":"post","link":"https:\/\/www.thesslstore.com\/blog\/sbom-an-up-close-look-at-a-software-bill-of-materials\/","title":{"rendered":"SBOM: An Up-Close Look at a Software Bill of Materials"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\" id=\"h-a-software-bill-of-materials-lists-the-ingredients-in-a-software-product-making-it-easier-to-identify-and-avoid-security-risks\">A software bill of materials lists the \u201cingredients\u201d in a software product, making it easier to identify and avoid security risks<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Unless you\u2019ve been living under a rock the past few years, you\u2019ve likely at least heard of <a href=\"https:\/\/logging.apache.org\/log4j\/2.x\/security.html\">Log4j<\/a>. This is an Apache open source library that\u2019s commonly used in just about everything Java-related online. Unfortunately, in late 2021 the logging package was discovered to be critically vulnerable to remote code execution attacks, meaning an attacker could exploit it to install malware (e.g., <a href=\"https:\/\/www.thesslstore.com\/blog\/what-is-ransomware-how-does-ransomware-work\/\">ransomware<\/a>) onto vulnerable systems and inject larger networks.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/twitter.com\/eastdakota\/status\/1470819030155993089\">Cloudflare CEO Matthew Prince reported on Twitter<\/a> that there were 400 confirmed exploit attempts <em>per second<\/em>. But that\u2019s just one estimate \u2014 according to The Washington Journal, Akamai Technologies said it observed 10 million such exploit attempts per hour. <a href=\"https:\/\/blog.checkpoint.com\/2021\/12\/13\/the-numbers-behind-a-cyber-pandemic-detailed-dive\/\">Research from Check Point<\/a> also showed that the attackers were rolling out new variants of the exploits \u2014 more than 60 in under 24 hours.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">That\u2019s a lot of exploits and a lot of variations to boot. Considering that the Log4j vulnerability affected major companies like Amazon, Apple, and IBM, it\u2019s no surprise that it had companies globally worried.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">But what makes the situation particularly concerning is that many companies weren\u2019t aware that the products they use contained such vulnerable elements. If only there was a way that organizations could know exactly what components are part of the software they use\u2026 Oh, wait, there is: they could use products that come with a software bill of materials (SBOM).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">But what is a software bill of materials and how can it help organizations mitigate some of the cyber risks facing their organizations and networks?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Let\u2019s hash it out.<span id=\"newline\"><\/span><\/p>\n\n\n<span style=\"display:none\" class=\"tl-placeholder-f-type-shortcode_16066\"><\/span>\n\n\n<h2 class=\"wp-block-heading\" id=\"h-what-is-a-software-bill-of-materials-sbom\">What Is a Software Bill of Materials (SBOM)?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A software bill of materials is a list of the base elements (such as code libraries) used to create a product. Basically, it provides details and information that outline the relationships between the various elements of the software in your supply chain. The <a href=\"https:\/\/www.ntia.gov\/SBOM\">National Telecommunications and Information Administration (NTIA)<\/a> has a bit more technical definition for an SBOM, describing it as \u201ca nested inventory for software, a list of ingredients that make up software components.\u201d It includes everything from version information and what companies created those elements.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Putting it more simply, SBOMs enable companies to know exactly what goes into their software \u2014 ideally, so they can keep a close eye on any dependencies. So, going back to the Log4j example, if you\u2019re using software that includes the vulnerable library, you would know instantly because Log4j would be listed in the SBOM. You could reach out to your vendor to ensure they\u2019re providing a patch using an updated version of Log4j. But you can\u2019t assess or mitigate specific cybersecurity risks if you don\u2019t know they exist. This is where an SBOM can help.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">An analogy that\u2019s commonly used to describe these lists of components is the ingredient labels on packaged food items. (We\u2019ll speak more to that in a minute.) The purpose of an SBOM is to create transparency and help companies identify dependencies in their software supply chains. This is because, as a purchaser, you\u2019re supposed to receive or be able to access SBOMs for products you purchase. This way, you know a good amount of information about your supply chain.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">SBOMs are something that can be used to address a wide variety of security issues for everything from software to IoT devices.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-even-the-u-s-government-encourages-using-sboms-to-improve-security\">Even the U.S. Government Encourages Using SBOMs to Improve Security<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;In fact, the May 2021 <a href=\"https:\/\/www.whitehouse.gov\/briefing-room\/presidential-actions\/2021\/05\/12\/executive-order-on-improving-the-nations-cybersecurity\/\">U.S. Executive Order (EO 14028) on Improving the Nation\u2019s Cybersecurity<\/a> calls upon the use of SBOMs to help strengthen the defenses of U.S. federal information systems. (Government agencies are now required to collect them from software suppliers.) The National Institute of Standards and Technology (NIST) developed the <a href=\"https:\/\/csrc.nist.gov\/Projects\/ssdf\">Secure Software Development Framework<\/a> (SSDF) to aid this initiative, and it requires software bill of materials information to be included.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">NIST says that <a href=\"https:\/\/www.nist.gov\/itl\/executive-order-14028-improving-nations-cybersecurity\/software-security-supply-chains-software-1\">SBOMs are complementary to other software security processes<\/a>; they\u2019re not meant to replace other security-related functions such as cybersecurity supply chain risk management (CSCRM) activities.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-what-types-of-information-sboms-should-include\">What Types of Information SBOMs Should Include<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">In its 2021 <a href=\"https:\/\/www.ntia.gov\/files\/ntia\/publications\/sbom_at_a_glance_apr2021.pdf\">Multistakeholder Process on Software Component Transparency document<\/a>, NTIA explains that an SBOM typically includes specific information about a product\u2019s baseline components:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Author\u2019s Name<\/li>\n\n\n\n<li>Supplier name<\/li>\n\n\n\n<li>Component name<\/li>\n\n\n\n<li>Version string<\/li>\n\n\n\n<li>Component hash (yup! Cryptographic functions play a key [excuse the pun] role here, too)<\/li>\n\n\n\n<li>Unique identifier<\/li>\n\n\n\n<li>Dependency Relationship<\/li>\n\n\n\n<li>Timestamp<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">For a complete list of minimum requirements, check out <a href=\"https:\/\/www.ntia.doc.gov\/files\/ntia\/publications\/sbom_minimum_elements_report.pdf\">NTIA\u2019s SBOM Minimum Elements Report<\/a>. It breaks down the minimum elements that should be addressed in an SBOM into three main categories:<\/p>\n\n\n\n<ol class=\"wp-block-list\" type=\"1\">\n<li>Data fields,<\/li>\n\n\n\n<li>Automation support, and<\/li>\n\n\n\n<li>Practices and Processes.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">Do SBOMs have to be created at the time you\u2019re developing your software? Not necessarily. You also can create SBOMs retroactively. The only thing to note about that is that it might not be as complete as an SBOM that\u2019s generated as part of your software development life cycle (SDLC) process.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-sboms-are-typically-meant-to-be-read-by-machines-not-people\">SBOMs Are Typically Meant to Be Read By Machines, Not People\u2026.<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">An SBOM isn\u2019t something that just anyone can look at and read easily; it\u2019s presented in one of a few standardized formats that are readable by computers (but not human beings, unless you know what to look for) to improve integration and automation. These three standards (listed in alphabetical order) include:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/cyclonedx.org\/\">CycloneDX<\/a>, which also works for software-as-a-service (SaaSBOM), hardware bill of materials (HBOM), and other uses. The file format for this type of SBOM is .xml.<\/li>\n\n\n\n<li><a href=\"https:\/\/csrc.nist.gov\/projects\/Software-Identification-SWID\">Software Identification (SWID)<\/a>, which is also an international open standard (<a href=\"https:\/\/www.iso.org\/standard\/65666.html\">ISO\/IEC 19770-2:2015<\/a>, updated 2021). Acceptable file formats are .json and .xml. &nbsp;<\/li>\n\n\n\n<li><a href=\"https:\/\/spdx.github.io\/spdx-spec\/\">Software Package Data eXchange (SPDX)<\/a>, which is an international open standard (ISO\/IEC 5962:2021). Acceptable file formats include .json, .spdx, .rdf .xls, .xml, and .yml.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"759\" height=\"1024\" src=\"https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2022\/11\/ntia-sbom-example-shadow-759x1024.png\" alt=\"An example screenshot of an SBOM from NTIA that we've highlighted sections of to call out specific bits of information\" class=\"wp-image-15947\" srcset=\"https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2022\/11\/ntia-sbom-example-shadow-759x1024.png 759w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2022\/11\/ntia-sbom-example-shadow-222x300.png 222w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2022\/11\/ntia-sbom-example-shadow-768x1036.png 768w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2022\/11\/ntia-sbom-example-shadow.png 786w\" sizes=\"auto, (max-width: 759px) 100vw, 759px\" \/><figcaption class=\"wp-element-caption\"><em>Image caption: A screenshot from NTIA that we\u2019ve highlighted to illustrate the different informational requirements that a software bill of materials must include. Original image source: <a href=\"https:\/\/www.ntia.doc.gov\/files\/ntia\/publications\/ntia_sbom_formats_energy_brief_2021.pdf\">NTIA<\/a>.<\/em><\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-who-a-software-bill-of-materials-benefits-spoiler-alert-everyone\">Who a Software Bill of Materials Benefits (Spoiler Alert: Everyone)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">According to the White House\u2019s Executive Order, SBOMs benefit virtually everyone who develops, manufactures, purchases, or operates software or devices that use said software. But the truth is that a software bill of materials also indirectly benefits the consumers who are served by these companies and service:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><em>\u201cAn SBOM is useful to those who develop or manufacture software, those who select or purchase software, and those who operate software. Developers often use available open source and third-party software components to create a product; an SBOM allows the builder to make sure those components are up to date and to respond quickly to new vulnerabilities. Buyers can use an SBOM to perform vulnerability or license analysis, both of which can be used to evaluate risk in a product. Those who operate software can use SBOMs to quickly and easily determine whether they are at potential risk of a newly discovered vulnerability.&#8221;.<\/em><\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">Yup. While SBOMs are typically promoted as being good for software buyers and operators, the truth is that they\u2019re also useful for broader audiences. So, you see, it\u2019s good for your organization regardless of where you fall in the supply chain.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">But now that we know what an SBOM is in a general sense, let\u2019s take a closer look at this security tool and how it aids your organization\u2019s software supply chain.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-a-look-at-how-a-software-bill-of-materials-breaks-things-down-within-the-supply-chain\">A Look at How a Software Bill of Materials Breaks Things Down Within the Supply Chain<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Your software supply chain comprises everything from where the individual components came from that are used to create the products you use and how they\u2019re manufactured, distributed, and supported. Some categorizations of the supply chain talk about custom code, third-party components, development and building environments, delivery, etc. Basically, it\u2019s all about sourcing your components (internal or third-party dependencies), building your software, storing and deploying it, and providing ongoing support (via patches) while it\u2019s being used by the intended users.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">However, to simplify things a bit more, we\u2019re going to look at what the software supply chain ecosystem looks like based on a traditional supply chain (based on information shared in <a href=\"https:\/\/www.youtube.com\/watch?v=6yljBKKl8Vo&amp;list=PLO2lqCK7WyTDpVmcHsy6R2HWftFkUp6zG&amp;index=1\">NTIA\u2019s SBOM explainer video<\/a>):<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"830\" height=\"293\" src=\"https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2022\/11\/software-supply-chain-basic-example.png\" alt=\"A example of a software supply chian ecosystem that's based on a traditional supply chain to make it a bit easier to explain.\" class=\"wp-image-15946\" srcset=\"https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2022\/11\/software-supply-chain-basic-example.png 830w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2022\/11\/software-supply-chain-basic-example-300x106.png 300w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2022\/11\/software-supply-chain-basic-example-768x271.png 768w\" sizes=\"auto, (max-width: 830px) 100vw, 830px\" \/><figcaption class=\"wp-element-caption\"><em>Image caption: A basic diagram that illustrates the software supply chain ecosystem and some of the parties involved in it.<\/em><\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Let\u2019s imagine, for a moment, that you\u2019re an IoT device manufacturer that uses third-party software as part of your supply chain. This is how the above breakdown would play out with regard to you and your business:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Source parts<\/strong> refer to all the base elements used to create the product.<\/li>\n\n\n\n<li><strong>Compound components<\/strong> refer to any elements in the final product that are created using other elements (e.g., a third-party\u2019s library or open source code). Not all software manufacturers provide information about what these components are.<\/li>\n\n\n\n<li><strong>The final assembled product<\/strong> <strong>(your software)<\/strong> is the end product created when you combine all of the parts.<\/li>\n\n\n\n<li><strong>Operator(s) or vendor(s)<\/strong> is the term that refers to your direct customers or service providers that use your product.<\/li>\n\n\n\n<li><strong>Consumer(s)<\/strong> refers to the people that your customers use your product to provide services to.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-an-sbom-is-like-the-list-of-ingredients-you-d-find-in-your-favorite-foods\">An SBOM Is Like the List of Ingredients You\u2019d Find in Your Favorite Foods\u2026<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">When you\u2019re at the grocery store, do you stop to read product nutrition labels and ingredient lists? If you\u2019re like me, you do because you want to know exactly what you\u2019re putting into your body.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">It\u2019s a good idea to take a similar approach when adding software and devices to your network. If you want to keep your network secure, then you\u2019ll want to check every device, software, or system carefully you connect to it for known vulnerabilities. Knowing what libraries, drivers, operating systems and open source resources are used goes a long way in helping you assess and mitigate vulnerabilities.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Let\u2019s consider a quick example with one of my favorite special occasion meals: Fettucine alfredo. Say, a friend is having a small get-together at her house and I decide to bring over a dish of homemade fettuccine alfredo for the occasion to share. Sounds great, right? It is, so long as no one has any food allergies to any of the ingredients I\u2019m using in my dish.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">But how can someone tell whether there might be something in my fettuccine alfredo that might cause an issue? Let\u2019s first consider the list of ingredients. My fettuccine alfredo recipe is pretty simple as it contains several basic ingredients:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Heavy whipping cream<\/li>\n\n\n\n<li>Homemade salted butter<\/li>\n\n\n\n<li>Freshly grated Parmesan-Reggiano cheese<\/li>\n\n\n\n<li>Freshly grated Pecorino-Romano cheese<\/li>\n\n\n\n<li>Garlic<\/li>\n\n\n\n<li>Salt<\/li>\n\n\n\n<li>Black pepper<\/li>\n\n\n\n<li>Italian parsley<\/li>\n\n\n\n<li>Homemade gluten free fettuccine pasta<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">If I were to break up this item, we\u2019d be looking at the following breakdown of items:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"631\" src=\"https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2022\/11\/list-of-compound-ingredients-1024x631.png\" alt=\"A screenshot of a table that lists the compound ingredients and a handful of base ingredients used to create Casey's gluten free fettucine alfredo dish\" class=\"wp-image-15950\" srcset=\"https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2022\/11\/list-of-compound-ingredients-1024x631.png 1024w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2022\/11\/list-of-compound-ingredients-300x185.png 300w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2022\/11\/list-of-compound-ingredients-768x473.png 768w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2022\/11\/list-of-compound-ingredients.png 1095w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Looks simple enough, right? Not quite\u2026 There\u2019s more to it because of the \u201chidden ingredients\u201d that people might not know about if they aren\u2019t disclosed.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-some-ingredients-are-made-up-of-other-unknown-ingredients\">Some Ingredients Are Made Up of Other Unknown Ingredients<\/h3>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"alignright size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2022\/11\/sbom-food-nutrition-label-example-shadow.png\" alt=\"An example food nutrition and ingredient label that shows how the base ingredients and compound ingredients are represented\" class=\"wp-image-15945\" width=\"418\" height=\"546\" srcset=\"https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2022\/11\/sbom-food-nutrition-label-example-shadow.png 599w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2022\/11\/sbom-food-nutrition-label-example-shadow-230x300.png 230w\" sizes=\"auto, (max-width: 418px) 100vw, 418px\" \/><figcaption class=\"wp-element-caption\"><em>Image caption: An example food nutrition and ingredient label.<\/em><\/figcaption><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">A few of these items \u2014 the two cheese and the gluten free flour \u2014 are created through manufacturers whose products I like and trust. So, knowing this, let\u2019s consider the supply chain for these items \u2014 particularly the compound components. These items may have other additives that I might not be aware of unless I stop to read the product label. Let\u2019s consider a quick example using parmesan cheese.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The ingredients for the brand of parmesan cheese I typically use contains cultured cow\u2019s milk, enzymes, and salt. (Note: If I bought the pre-grated variety, additional components would be added, such as cellulose and natamycin \u2014 this is why I buy the blocks of cheese and grate them myself!) So, in this case, that means the enzymes and cultured milk need to be added to my list of ingredients.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Likewise, if I looked at the ingredient list for the Pecorino-Romano cheese or the gluten free flour I\u2019d use, there would be several additional items I\u2019d need to add to my list of components. And it would also be important to know where the ingredients the manufacturers used actually came from. For example:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The Pecorino-Romano cheese I use is imported from Italy and it contains sheeps milk and rennet.<\/li>\n\n\n\n<li>The flour includes multiple other ingredients \u2014 sweet white rice flour, whole grain brown rice flour, potato starch, whole grain sorghum flour, tapioca flour, and xantham gum.&nbsp;&nbsp;<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">This means my ingredient list now looks more like this:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"873\" src=\"https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2022\/11\/extended-list-of-compound-base-ingredients-1024x873.png\" alt=\"A screenshot of a table that lists the base and compound ingredients used to create Casey's gluten free fettucine alfredo dish\" class=\"wp-image-15951\" srcset=\"https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2022\/11\/extended-list-of-compound-base-ingredients-1024x873.png 1024w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2022\/11\/extended-list-of-compound-base-ingredients-300x256.png 300w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2022\/11\/extended-list-of-compound-base-ingredients-768x655.png 768w, https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2022\/11\/extended-list-of-compound-base-ingredients.png 1097w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-why-you-need-to-know-which-ingredients-are-included-in-your-software\">Why You Need to Know Which Ingredients Are Included in Your Software<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">See how much longer the list of ingredients became now that we\u2019ve added all of these \u201chidden\u201d ingredients? Now, ask yourself what would happen if one of your friends was allergic to milk, tapioca flour, or eggs but you didn\u2019t know it. If they didn\u2019t know those ingredients were included in the meal, it could lead to a potentially serious medical emergency, depending on the severity of their allergic reaction.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Likewise, similar concerns apply to your software and hardware devices. While the concern isn\u2019t a food allergy or medical concern necessarily, not knowing what\u2019s included in your software supply chain leaves your organization, network, and customers at risk. Knowing the A-Z of your <a href=\"https:\/\/www.thesslstore.com\/blog\/a-practical-guide-to-software-supply-chain-security\/\">software supply chain and its security<\/a> helps you stay abreast of any potential vulnerabilities and exploits you need to address before bad guys use them to attack your network and organization. This is crucial for risk analysis and mitigation activities, where you need to know how and where your systems are vulnerable. &nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The truth is that it\u2019s rare to find a company that builds its software or hardware components entirely from scratch. (Doing so is just too complex, costly, and time consuming.) Instead, they integrate third-party and open source elements such as frameworks and libraries. When you consider that these components often operate with the same permissions as the software they\u2019re a part of, it means the risk can be significant.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">SBOMs help you have a better understanding of your software supply chain and everything involved in it. They also help you better manage and mitigate risks by using them to analyze known vulnerabilities. This is why it\u2019s best for them to be stored in a centralized repository that applications and systems can easily access and use.<\/p>\n\n\n<span style=\"display:none\" class=\"tl-placeholder-f-type-shortcode_16093\"><\/span>\n\n\n<h2 class=\"wp-block-heading\" id=\"h-can-t-a-software-bill-of-materials-be-faked\">Can\u2019t a Software Bill of Materials Be Faked?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">As with any electronic file, yes, there\u2019s always a risk of that happening. However, there are safeguards that could be used to prevent digital tampering and to prove something is legitimate. One such method is to digitally sign your file before releasing it with your software. A <a href=\"https:\/\/www.thesslstore.com\/blog\/what-is-a-digital-signature\/\">digital signature<\/a> is a way to simultaneously show that your file is authentic and hasn\u2019t been tampered with since it was signed. &nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Is a digital signature required for use with SBOMs? No. But as <a href=\"https:\/\/www.digicert.com\/blog\/improving-the-nations-cybersecurity-through-software-code-signing\">Dean Coclin (CISSP) points out<\/a>, one good option is to \u201cuse a cloud-based code signing service, which allows for uploads of code (or the hash) to be signed by the service and returned to the developer.\u201d<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-final-thoughts-on-sboms-and-why-they-should-be-part-of-your-risk-management-strategy\">Final Thoughts on SBOMs (And Why They Should Be Part of Your Risk Management Strategy)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Trying to mitigate risks for your software without knowing all the different components nested within it is like going to a dinner party when you have a severe peanut allergy and not bothering to ask if any of the dishes contain nuts. It\u2019s not a smart practice and puts you at risk of a severe medical \u2014 err, cybersecurity episode. Instead, ask those questions and avoid the potential headaches, non-compliance issues, financial penalties, and lawsuits that you otherwise may face.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Nowadays, it\u2019s uncommon for software developers to write all of their code from scratch. It\u2019s far more common for devs to integrate open source code into their products because it\u2019s cheaper and easier. As the saying goes: Why reinvent the wheel?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Making software bills of materials a standard component of every piece of software is a smart move. SBOMs provide the added layer of transparency organizations need to keep their data and networks secure and aid in making the vulnerability assessment and mitigation process a lot easier.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The next time you\u2019re shopping for new software, be sure to speak with your vendor to see if their products have SBOMs available. Don\u2019t be surprised if they don\u2019t but be sure to ask anyway to make it clear that this is something you want to see as a software purchaser or operator.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>A software bill of materials lists the \u201cingredients\u201d in a software product, making it easier to identify and avoid security risks Unless you\u2019ve been living under a rock the past&#8230;<\/p>\n","protected":false},"author":17,"featured_media":15943,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"footnotes":"","tve_updated_post":"","tve_custom_css":"","tve_user_custom_css":"","tve_globals":{},"tcb2_ready":0,"tcb_editor_enabled":0,"tve_landing_page":"","_tve_header":"","_tve_footer":""},"categories":[16],"tags":[13209,13208],"class_list":["post-15941","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-hashing-out-cyber-security","tag-sbom","tag-software-bill-of-materials","post-with-tags"],"views":9876,"jetpack_featured_media_url":"https:\/\/www.thesslstore.com\/blog\/wp-content\/uploads\/2022\/11\/spdx-sbom-example-ntia-feature.jpg","_links":{"self":[{"href":"https:\/\/www.thesslstore.com\/blog\/wp-json\/wp\/v2\/posts\/15941","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.thesslstore.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.thesslstore.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.thesslstore.com\/blog\/wp-json\/wp\/v2\/users\/17"}],"replies":[{"embeddable":true,"href":"https:\/\/www.thesslstore.com\/blog\/wp-json\/wp\/v2\/comments?post=15941"}],"version-history":[{"count":0,"href":"https:\/\/www.thesslstore.com\/blog\/wp-json\/wp\/v2\/posts\/15941\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.thesslstore.com\/blog\/wp-json\/wp\/v2\/media\/15943"}],"wp:attachment":[{"href":"https:\/\/www.thesslstore.com\/blog\/wp-json\/wp\/v2\/media?parent=15941"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.thesslstore.com\/blog\/wp-json\/wp\/v2\/categories?post=15941"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.thesslstore.com\/blog\/wp-json\/wp\/v2\/tags?post=15941"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}