Linux Foundation Report Reveals Why Companies Fork Open Source Projects and Maintain Internal Patches
A recent Linux Foundation Research survey of 567 specialists examines how organizations handle modifications to open source components they depend on. The February report titled ROI for Open Source Software Contribution reveals that companies rarely leave external code untouched once it enters production systems.
Many teams add missing functionality, improve integration with internal systems, or accelerate security fixes that upstream maintainers cannot deliver on schedule. Some of these changes are contributed back, while others remain in long-lived private branches. The study focuses on practical patterns of contribution, forking, and the resulting security and maintenance challenges.
Survey Participants and Methodology
The research was conducted in October and November 2025 among subscribers, participants, and partner communities of the Linux Foundation. After validation, 567 respondents remained. Participants averaged 12 years of open source experience and 14 years in IT overall. Developers, engineers, and architects made up 28% of the sample, while 19% worked in systems administration and infrastructure.
Company sizes varied: 29% from organizations with fewer than 250 employees, 31% from mid-sized firms (250–4,999), and 40% from enterprises with 5,000 or more staff. Fifty-one percent represented IT vendors, 35% came from non-IT businesses, and 14% worked in government, non-profit, or educational institutions.
Contribution Patterns and Forking Practices
Seventy-two percent of organizations that use open source also contribute to it. Contributions extend beyond code to documentation, testing, user support, event organization, and project governance. Technical changes show clear business motivations: organizations most often fix components their products already rely on, yet a substantial share also implement new features.
Common working models include using components unchanged (68%), returning patches upstream (49%), maintaining internal forks (45%), hiring external specialists (28%), and participating in project governance (26%). Many organizations apply different strategies to different components.
Reasons for Internal Forks
Among 238 respondents who answered questions about forking, 54% cited development of proprietary features and 44% mentioned integration with internal systems. Security fixes and regulatory requirements were noted by 37%. Additional drivers included slow or abandoned upstream projects (34%), bug fixes (32%), faster release cycles (29%), quality and stability concerns (28%), performance optimization (25%), and license compatibility (18%).
The average organization maintains 86 internal forks, spending 60 hours on each per release cycle. Larger companies show significantly higher numbers: enterprises with 5,000+ employees average 136 forks and 11,152 total hours per cycle.
Security and Supply-Chain Implications
Internal forks create new vulnerability management challenges. A private security patch may leave the component appearing vulnerable in standard scanners if the public version number is retained. Conversely, a fork may miss subsequent upstream fixes. Proper tracking requires recording the exact upstream commit, the list of internal patches, and an owner responsible for synchronization.
The report also shows the largest gaps between business-critical technologies and actual contributions in programming languages and runtimes (53% critical vs 17% contributing), databases (56% vs 25%), and operating systems (59% vs 29%). Thirty-six percent of respondents reported frequent product delays due to missing features or fixes, rising to 54% among the largest organizations.
Active participation yields measurable benefits: 44% of contributors frequently secure desired features in project roadmaps, 55% receive faster responses on bugs and security issues, and 66% report accelerated product development. The study underscores that sustained engagement with upstream projects reduces long-term technical debt when internal branches would otherwise become permanent, untracked products.
Related articles
Protestware: How Ideologically Motivated Attackers Compromise Open Source Code and Supply Chains
Protestware represents a growing supply chain risk where open source maintainers deliberately insert destructive or politically motivated code into widely used packages. Unlike traditional malware seeking financial gain, protestware is driven by ideological motives and can delete files, cause denial of service, or restrict functionality based on geography or locale. Notable incidents include the node-ipc and peacenotwar packages that overwrote files on systems in Russia and Belarus, the colors.js infinite loop causing DoS, and es5-ext triggering high CPU usage during specific hours or Russian locales. These attacks often hide in postinstall hooks, use geolocation checks via ipinfo.io, or activate via environment variables and timestamps. Detection requires static analysis for geo-IP logic, dynamic monitoring in sandboxes, and tools such as Software Bill of Materials and OpenSSF Scorecard. Organizations are advised to adopt Zero Trust for dependencies, pin versions, use internal artifact repositories, and follow frameworks including NIST SSDF and SLSA to mitigate risks.
Attackers Exploit Critical JFrog Artifactory Flaw CVE-2026-82329 to Forge Admin Tokens and Poison CI/CD Pipelines
A critical vulnerability tracked as CVE-2026-82329 in JFrog Artifactory is being actively exploited in the wild, allowing unauthenticated attackers with network access to generate or forge administrator tokens on self-managed installations that retain default settings. The flaw enables full authentication bypass, granting attackers administrative privileges to enumerate users and groups, access sensitive configurations, read stored artifacts, and modify security settings. The greatest risk arises when Artifactory serves as the central repository for automated CI/CD pipelines, where an attacker can replace trusted internal packages, container images, or dependencies and propagate malicious changes downstream into build runners and production environments. JFrog has released patches for multiple branches, including versions 7.111.21, 7.117.28, 7.125.20, 7.133.29, 7.146.38, and 7.161.20, although patching alone does not invalidate already-issued tokens. Organizations are advised to restrict network exposure, revoke and rotate admin tokens, review audit logs for anomalous token generation and configuration changes, and validate artifact integrity across the vulnerable period. The issue does not affect JFrog Cloud instances.
Critical JFrog Artifactory Flaw CVE-2026-82329 Actively Exploited to Forge Admin Tokens in Self-Managed Deployments
A critical vulnerability identified as CVE-2026-82329 in JFrog Artifactory is being actively exploited in the wild, enabling unauthenticated attackers to generate or forge administrator tokens simply by having network access to affected instances. The flaw impacts self-managed installations that retain default configurations, a common scenario when repositories are deployed quickly and later exposed to the internet. Once administrative access is obtained, attackers can enumerate users and groups, access sensitive configurations, read stored artifacts, and modify security settings. The most severe risk arises when Artifactory automatically feeds CI/CD pipelines, allowing malicious substitution of trusted packages, container images, or dependencies that then propagate downstream into production environments. JFrog Cloud instances were already protected, while self-managed deployments require updates to specific patched versions including 7.111.21, 7.117.28, 7.125.20, 7.133.29, 7.146.38, or 7.161.20. Even after patching, previously issued tokens must be revoked because their validity operates independently of the software update. Organizations are advised to restrict network exposure, rotate credentials, audit token generation logs, and validate artifact integrity for any material published during the vulnerable period.
Unicode Tricks Let Malicious Python Code Bypass Code Review
A detailed analysis shows how subtle Unicode manipulations allow code to pass human review while executing entirely different logic. The first technique replaces Latin characters with visually identical Cyrillic or other script letters inside identifiers, such as using Ukrainian 'і' instead of Latin 'i' in an is_admin variable. Python treats these as distinct names because NFKC normalization does not map Cyrillic to Latin. The second technique inserts bidirectional override characters that reorder text for the compiler while the editor displays the intended order. The third hides zero-width characters inside string literals to break comparisons and searches. A compact Python auditor using the tokenize module and explicit character sets detects all three classes of characters. The article recommends adding such checks to CI pipelines and configuring linters including ruff and flake8 to reject suspicious commits.