{"id":53648,"date":"2025-06-16T11:59:49","date_gmt":"2025-06-16T15:59:49","guid":{"rendered":"https:\/\/www.kaspersky.com\/blog\/?p=53648"},"modified":"2025-06-16T11:59:49","modified_gmt":"2025-06-16T15:59:49","slug":"can-you-support-open-source-preliminary-assessment","status":"publish","type":"post","link":"https:\/\/www.kaspersky.com\/blog\/can-you-support-open-source-preliminary-assessment\/53648\/","title":{"rendered":"How to choose open-source solutions for your organization"},"content":{"rendered":"<p>According to the <a href=\"https:\/\/www.openlogic.com\/blog\/state-of-open-source-report-key-insights\" target=\"_blank\" rel=\"nofollow noopener\">2025 State of Open Source report<\/a>, 96% of surveyed companies use open-source applications. Their wide selection, customization options, and zero licensing costs are highly appealing. However, more than half of the firms surveyed face significant challenges with ongoing maintenance of open-source apps. A staggering 63% struggle to keep solutions updated and apply patches. Close behind are issues with cybersecurity, regulatory compliance, and the presence of end-of-life (EoL) open-source applications \u2014 meaning they\u2019re no longer supported. So, how can you minimize the likelihood of these problems, and what should you look for when selecting open-source software (OSS) for implementation?<\/p>\n<h2>Updates and patches<\/h2>\n<p>Since updating OSS in good time is the most widespread problem, examine potential OSS-contenders-for-adoption from this perspective very carefully. It\u2019s easy to check the frequency and scope of updates, as well as their content, right within the application\u2019s public repository. Pay attention to how well-documented the updates are; what kinds of issues they resolve; what new features they add; how often minor fixes are released a few days or weeks after a major version; and how quickly bug-related requests are closed.<\/p>\n<p>Standard tools like <a href=\"https:\/\/github.com\/git-insights\/git-insights\" target=\"_blank\" rel=\"nofollow noopener\">Git Insights<\/a>, along with supplementary services such as <a href=\"https:\/\/isitmaintained.com\/\" target=\"_blank\" rel=\"nofollow noopener\">Is it maintained?<\/a>, <a href=\"https:\/\/repology.org\/\" target=\"_blank\" rel=\"nofollow noopener\">Repology<\/a>, and <a href=\"https:\/\/libraries.io\/\" target=\"_blank\" rel=\"nofollow noopener\">Libraries.io<\/a>, can help answer these questions. Libraries.io immediately shows which outdated dependencies the current version uses.<\/p>\n<p>Pay special attention to security-related updates. Are they released separately, or are they bundled with functionality updates? Typically, developers choose the latter path. In that case, you need to understand how long security updates might have been waiting for release.<\/p>\n<p>In addition, assess how complex the process of installing updates is. Official documentation and support can be a starting point, but they aren\u2019t enough. Thoroughly reviewing user community feedback will likely be more helpful here.<\/p>\n<p>All of this will help you understand how much effort will go into maintaining the product. You\u2019ll need to allocate internal resources for support. It\u2019s not enough to simply assign responsibility; dedicated work hours will be required for these and related tasks.<\/p>\n<h2>Vulnerabilities<\/h2>\n<p>To accurately predict how often you\u2019ll face cybersecurity issues, it\u2019s best to evaluate the product\u2019s engineering culture and cybersecurity hygiene from the get-go. While this can be labor-intensive, you can use automated tools to perform an initial, high-level analysis.<\/p>\n<p>For popular products and packages, a good approach is to check already existing heuristic assessment results from tools like <a href=\"https:\/\/scorecard.dev\/\" target=\"_blank\" rel=\"nofollow noopener\">OpenSSF Scorecard<\/a>. It provides a variety of cybersecurity hygiene data, ranging from the number of unpatched vulnerabilities and the presence of security policies to the use of fuzzing and dependency pinning.<\/p>\n<p>In addition, examine public vulnerability databases like <a href=\"https:\/\/nvd.nist.gov\/\" target=\"_blank\" rel=\"nofollow noopener\">NVD<\/a> and <a href=\"https:\/\/github.com\/advisories\" target=\"_blank\" rel=\"nofollow noopener\">GitHub advisories<\/a> to understand how many flaws have been discovered in the project, their criticality, and how quickly they were fixed. A high number of vulnerabilities in and of itself may indicate the project\u2019s popularity rather than poor development practices. However, the types of defects and how developers have responded to them are what\u2019s truly important.<\/p>\n<h2>Dependencies and supply chain<\/h2>\n<p>Nearly every OSS project relies on third-party open-source components, which are often undocumented. These components are updated as per their own schedules, and they can contain bugs, vulnerabilities \u2014 even malicious code. The key question here is how quickly patched component updates make their way into the project you\u2019re considering.<\/p>\n<p>To assess this, you\u2019ll need SBOM (software bill of materials) or SCA (software composition analysis) tools. Available open-source solutions like OWASP <a href=\"https:\/\/github.com\/dependency-check\/DependencyCheck\" target=\"_blank\" rel=\"nofollow noopener\">Dependency-Check<\/a> or <a href=\"https:\/\/github.com\/anchore\/syft\" target=\"_blank\" rel=\"nofollow noopener\">Syft<\/a> can build a project\u2019s dependency tree, but these are usually designed for projects already in operation, deployed in your own repositories or container images. Therefore, a deep dive into dependency analysis is best performed on a product that has already passed the preliminary evaluation and is a serious contender for a place in your infrastructure.<\/p>\n<p>Examine the list of dependencies thoroughly to determine if they\u2019re sourced from trusted and well-vetted repositories, if they\u2019re popular, and if they have digital signatures. Essentially, you\u2019re assessing the risks of their being compromised.<\/p>\n<p>While you could theoretically check for vulnerabilities in dependencies manually, if an OSS project is already deployed in a test environment, it\u2019s much more straightforward to use tools like <a href=\"https:\/\/dev.to\/chainguard\/deep-dive-where-does-grype-data-come-from-n9e\" target=\"_blank\" rel=\"nofollow noopener\">Grype<\/a>.<\/p>\n<p>A huge hidden challenge is monitoring updates. In theory, every dependency update for a project needs to be re-checked. In practice, this is only feasible with automated scanners; other approaches are simply too expensive.<\/p>\n<p>If a project uses outdated dependencies and generally isn\u2019t ideal from a cybersecurity standpoint, it\u2019s obviously better to look for an alternative. But what if the business insists on a specific solution because of its core functionality? The answer is the same as always: conduct a deeper risk analysis, develop compensating controls and, most importantly, allocate significant resources for ongoing maintenance. Internal resources are often insufficient, so it\u2019s wise to evaluate options for professional technical support for that specific product from the outset.<\/p>\n<h2>Compliance with internal and regulatory requirements<\/h2>\n<p>If regulatory policies that apply to your company cover your chosen software and the data within it, develop a plan for compliance audits right away. Very large enterprise-grade open-source applications sometimes come with supporting documentation that can simplify certain types of audits. If not, you\u2019ll have to develop it all yourself, which again means allocating significant time and resources.<\/p>\n<p>Nearly every piece of software in every industry will require a license compliance audit. Some open-source components and applications are distributed under restrictive licenses, like <a href=\"https:\/\/en.wikipedia.org\/wiki\/GNU_Affero_General_Public_License\" target=\"_blank\" rel=\"nofollow noopener\">AGPL<\/a>, which limit how you can distribute and use the software. Thanks to SBOM\/SCA analysis, you can inventory all licenses for your software and its dependencies, and then verify that your use case doesn\u2019t violate any of them. These processes can be largely automated with specialized tools such as the <a href=\"https:\/\/github.com\/oss-review-toolkit\/ort\" target=\"_blank\" rel=\"nofollow noopener\">OSS Review Toolkit<\/a>, but the automation will require clear policies and effort from your development team.<\/p>\n<h2>Support costs<\/h2>\n<p>After analyzing all these aspects, you should have a clear picture allowing you to compare different approaches to application support. For support by an in-house team, you\u2019ll need to allocate hours of relevant specialists. If your team doesn\u2019t have the necessary expertise, you\u2019ll have to hire someone. Those primarily responsible for OSS support and security will also need time and a budget for constant ongoing professional development.<\/p>\n<p>If your internal team\u2019s resources are insufficient for support (due to limited staff or expertise), there are at least two types of professional outsourced technical support: firms like Red Hat \u2014 which specialize in application operations, and managed hosting providers \u2014 for specific applications (Kube Clusters, MongoDB Atlas, and the like).<\/p>\n<p>Beyond time and expertise, the cost and complexity of technical support are also influenced by the organization\u2019s overall readiness for widespread open-source adoption:<\/p>\n<ul>\n<li>Does your cybersecurity team have vulnerability scanners and risk management tools that are well-adapted to OSS?<\/li>\n<li>Do your IT asset tracking and monitoring tools support OSS projects and components?<\/li>\n<li>For in-house development teams, are image, repository, and other code source scanning processes included in your CI\/CD pipeline? Specialized security solutions, such as <a href=\"https:\/\/www.kaspersky.com\/enterprise-security\/cloud-security?icid=gl_kdailyplacehold_acq_ona_smm__onl_b2b_kasperskydaily_wpplaceholder____khcs___\" target=\"_blank\" rel=\"noopener nofollow\">Kaspersky Hybrid Cloud Security<\/a>, can automate this aspect.<\/li>\n<li>Has your company developed a policy regulating OSS usage, and is there a clear understanding of who makes decisions and who is responsible for operational matters?<\/li>\n<\/ul>\n<p>Furthermore, it\u2019s crucial to consider the <a href=\"https:\/\/www.kaspersky.com\/blog\/open-source-top-10-risks\/47875\/\" target=\"_blank\" rel=\"noopener nofollow\">broad spectrum of open source risks<\/a>, including abrupt project discontinuation, a proliferation of minor dependencies, and other supply-chain risks.<\/p>\n<input type=\"hidden\" class=\"category_for_banner\" value=\"mdr\"><input type=\"hidden\" class=\"placeholder_for_banner\" data-cat_id=\"mdr\" value=\"37702\">\n","protected":false},"excerpt":{"rendered":"<p>How to assess all the complexities of open-source application integration in advance, and choose the most efficient solutions. <\/p>\n","protected":false},"author":2722,"featured_media":53650,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1999,3051],"tags":[106,2141,1289,2552,3089,1146,4228,131],"class_list":{"0":"post-53648","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-business","8":"category-enterprise","9":"tag-applications","10":"tag-business","11":"tag-development","12":"tag-economy","13":"tag-open-source","14":"tag-risks","15":"tag-strategy","16":"tag-tips"},"hreflang":[{"hreflang":"x-default","url":"https:\/\/www.kaspersky.com\/blog\/can-you-support-open-source-preliminary-assessment\/53648\/"},{"hreflang":"en-in","url":"https:\/\/www.kaspersky.co.in\/blog\/can-you-support-open-source-preliminary-assessment\/28961\/"},{"hreflang":"en-ae","url":"https:\/\/me-en.kaspersky.com\/blog\/can-you-support-open-source-preliminary-assessment\/24186\/"},{"hreflang":"ar","url":"https:\/\/me.kaspersky.com\/blog\/can-you-support-open-source-preliminary-assessment\/12525\/"},{"hreflang":"en-gb","url":"https:\/\/www.kaspersky.co.uk\/blog\/can-you-support-open-source-preliminary-assessment\/29068\/"},{"hreflang":"es-mx","url":"https:\/\/latam.kaspersky.com\/blog\/can-you-support-open-source-preliminary-assessment\/28255\/"},{"hreflang":"es","url":"https:\/\/www.kaspersky.es\/blog\/can-you-support-open-source-preliminary-assessment\/31083\/"},{"hreflang":"it","url":"https:\/\/www.kaspersky.it\/blog\/can-you-support-open-source-preliminary-assessment\/29774\/"},{"hreflang":"ru","url":"https:\/\/www.kaspersky.ru\/blog\/can-you-support-open-source-preliminary-assessment\/39905\/"},{"hreflang":"tr","url":"https:\/\/www.kaspersky.com.tr\/blog\/can-you-support-open-source-preliminary-assessment\/13485\/"},{"hreflang":"fr","url":"https:\/\/www.kaspersky.fr\/blog\/can-you-support-open-source-preliminary-assessment\/22905\/"},{"hreflang":"pt-br","url":"https:\/\/www.kaspersky.com.br\/blog\/can-you-support-open-source-preliminary-assessment\/23944\/"},{"hreflang":"de","url":"https:\/\/www.kaspersky.de\/blog\/can-you-support-open-source-preliminary-assessment\/32344\/"},{"hreflang":"ru-kz","url":"https:\/\/blog.kaspersky.kz\/can-you-support-open-source-preliminary-assessment\/29290\/"},{"hreflang":"en-au","url":"https:\/\/www.kaspersky.com.au\/blog\/can-you-support-open-source-preliminary-assessment\/34998\/"},{"hreflang":"en-za","url":"https:\/\/www.kaspersky.co.za\/blog\/can-you-support-open-source-preliminary-assessment\/34636\/"}],"acf":[],"banners":"","maintag":{"url":"https:\/\/www.kaspersky.com\/blog\/tag\/open-source\/","name":"open-source"},"_links":{"self":[{"href":"https:\/\/www.kaspersky.com\/blog\/wp-json\/wp\/v2\/posts\/53648","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.kaspersky.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.kaspersky.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.kaspersky.com\/blog\/wp-json\/wp\/v2\/users\/2722"}],"replies":[{"embeddable":true,"href":"https:\/\/www.kaspersky.com\/blog\/wp-json\/wp\/v2\/comments?post=53648"}],"version-history":[{"count":1,"href":"https:\/\/www.kaspersky.com\/blog\/wp-json\/wp\/v2\/posts\/53648\/revisions"}],"predecessor-version":[{"id":53651,"href":"https:\/\/www.kaspersky.com\/blog\/wp-json\/wp\/v2\/posts\/53648\/revisions\/53651"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.kaspersky.com\/blog\/wp-json\/wp\/v2\/media\/53650"}],"wp:attachment":[{"href":"https:\/\/www.kaspersky.com\/blog\/wp-json\/wp\/v2\/media?parent=53648"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.kaspersky.com\/blog\/wp-json\/wp\/v2\/categories?post=53648"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.kaspersky.com\/blog\/wp-json\/wp\/v2\/tags?post=53648"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}