Documentation Index

Fetch the complete documentation index at: https://docs.safe.security/llms.txt

Use this file to discover all available pages before exploring further.

Consolidating Operating Systems and Software: A Unified Approach

Prev Next

The Data Quality Crisis in Cybersecurity

Messy security data is breaking modern cybersecurity programs. Twenty-five years of standardization efforts, including CVE (1999), CPE (2005), and PURL (2010+), have not delivered interoperable reality. Each tool still creates its own data universe, producing three fundamental crises: Software Inventory Chaos, Control Framework Anarchy, and Remediation Gibberish. Clean data has become the most critical missing piece in cybersecurity operations.

Sanitization, consolidation, and deduplication are required to make data actionable.

The Data Chaos Reality

“Standard” data can create impossible vulnerability management. Real examples from Tenable show Microsoft Teams recorded as multiple CPEs. Chrome appears similarly fragmented across several nearby versions. Alongside that, some feeds emit objects with empty vendor fields and an “unknown” versioning scheme. CrowdStrike streams include ghost data that raises basic questions like whether six entries represent six products or six versions, which disrupts vulnerability tracking and risk calculation.

Root causes include unclean uninstallations, incomplete upgrades that leave prior entries, and failed installations that create phantom records. The business impact is straightforward: tracking vulnerabilities for software that does not actually exist.

Why This Crisis Is Critical Now

Volume, velocity, and compliance are converging. The numbers include roughly 10x CVE growth in recent years, single organizations tracking 100K+ vulnerability instances, and shrinking time-to-exploit from months to hours, outpacing manual processes. Compliance pressure has increased with SBOM mandates under Executive Order 14028, supply chain requirements for accurate component tracking, and audits that demand defensible inventories. At the same time, agent tools promise high-fidelity data but often deliver beta-quality streams with frequent format changes, pushing production decisions onto unreliable inputs.

Why Traditional Approaches Fail

Remediation guidance is written for humans, not machines. It mixes technical details and business context in unstructured text, varies across tools, and requires manual interpretation. Examples range from protocol-level exploit snippets for PAN-OS, to EOL OpenSSL banners, to Office update notices tied to file paths and version strings.

Traditional data handling also lacks time travel and lineage, so teams cannot reliably distinguish real remediation from tool noise, replay historical states, or prove whether a “disappeared” vulnerability was fixed or merely rescanned differently. Schema rigidity breaks under real-world conditions when vendor APIs change, new fields appear, and integrations fail without graceful degradation. Deduplication by pairwise comparison scales quadratically with volume, and textual mismatch across tools makes correlation unreliable.

Balbix Security Data Lake

Balbix’s purpose-built architecture is already solving security data quality at scale. The Delta Lake foundation in production provides schema evolution so vendor API changes do not break integrations, time travel to replay any historical state, ACID transactions for consistent multi-source ingestion, and complete data lineage for audit trails. On top, advanced intelligence layers operate today: multi-signal data fusion across temporal, contextual, and behavioral dimensions, a comprehensive component database with 80K+ vendors, 650K+ products, and 5M+ versions (perhaps one of the biggest), semantic vulnerability projection using the MITRE ATT&CK framework to eliminate quadratic deduplication, and real-time data quality monitoring with automated correction and anomaly detection.

Let’s cover the details on how this is done.

Types of Consolidations

For IT and Security teams, managing and consolidating entries for both operating systems (OS) and software is critical for efficient asset management and security vulnerability tracking. Consolidation ensures that data from multiple sources is unified into a single, accurate representation, which avoids duplication, reduces confusion, and enables informed decision-making.

  • Operating System Consolidation: Ensures that multiple OS entries from various sources are combined into the most accurate representation of the actual OS running on a device.

  • Software Consolidation: Accurately consolidates reported software entries while preserving unique installations, ensuring that distinct installations are not falsely merged.

Why Is Software Consolidation Important for IT and Security Teams?

  1. Enhanced Security: A consolidated view helps in identifying vulnerabilities and deploying patches more effectively.

  2. Improved Asset Management: Reducing duplicate entries leads to a clearer inventory of assets, making it easier to track and manage.

  3. Operational Efficiency: Consolidation eliminates redundant data, streamlining workflows for IT and security teams.

  4. Accurate Reporting: Provides a unified, reliable dataset for compliance audits, risk assessments, and executive reporting.

OS Software Consolidation

To accurately identify and consolidate multiple operating system entries reported from different data sources into a single, most accurate representation of the actual operating system running on a device. This ensures consistent vulnerability mapping and asset management.

The OS consolidation process identifies the most accurate operating system from multiple reported entries across different data sources. It prioritizes high-fidelity sources and complete version information, with special handling for kernel information in Linux systems. The consolidation process prevents duplicate OS entries while ensuring the most informative entry is retained.

Process Overview

Operating System Consolidation Steps

Input: List of OS entries from multiple sources
Output: Single consolidated OS entry

  1. Pre-Processing:

    • If any entry is from Host Agent (HA):

      • Select the HA entry as the final result.

  2. Majority Product Selection:

    • If multiple distinct OS products exist:

      • Count occurrences of each distinct product.

      • If one product has a clear majority:

        • Retain only the entries for the majority product.

  3. Version Selection:

    • For each OS entry with version information:

      • If only one entry has kernel/version details while others do not:

        • Select the entry with version information.

      • If multiple entries have versions:

        • Select the entry with the most recent version.

  4. Source Priority:

    • Sort remaining entries by source priority:

      • Priority Order: HA > AGENT > AUTH_SCAN > UNAUTH_SCAN > PASSIVE > OTHER

    • Select the entry with the highest priority.

  5. Default Selection:

    • If no clear choice emerges from the above steps:

      • Select the entry with the most complete information.

High-Level Flow Diagram

A diagram of a process

AI-generated content may be incorrect.


Examples

Windows Server Detection

Source

Reported OS

Version Details

Auth Scan

Windows Server

None

Agent

Windows Server 2016

Kernel 14393.6981

Passive

Windows Server 2019

None

Consolidated Entry: Windows Server 2016 with kernel 14393.6981 (selected due to complete version information).


Linux Distribution Identification

Source

Reported OS

Passive

Linux

Agent

Ubuntu 20.04

Unauth Scan

Ubuntu

Consolidated Entry: Ubuntu 20.04 (selected due to more specific OS information and higher priority source).


Multiple Kernel Versions

Source

Reported OS

Kernel Version

HA

RHEL 8

4.18.0-372

Agent

RHEL 8

4.18.0-425

Scan

RHEL 8

None

Consolidated Entry: RHEL 8 with kernel 4.18.0-425 (selected due to the most recent kernel version).


Non-OS Software Consolidation

To accurately consolidate multiple entries of the same software reported from different sources while preserving unique installations and preventing false consolidation of similar but distinct software instances.

The non-OS consolidation process consolidates software entries while preserving truly distinct installations. It treats software entries as distinct if they have different installation contexts (paths/users) or come from the same source, even if they represent the same software version. This prevents over-consolidation while eliminating genuine duplicates.


Process Overview

Non-OS Software Consolidation Steps

Input: List of software entries from multiple sources
Output: List of consolidated software entries

  1. Group by Vendor and Product Name:

    • Group entries by vendor and product name.

    • Sort entries by creation timestamp.

  2. Source-Based Separation:

    • If entries are from the same source:

      • Keep them as separate entries.

      • Continue to the next group.

  3. Conflict Resolution:

    • For each pair of entries in a group:

      • If conflicts exist in (install_path, username, version):

        • Keep them as separate entries.

      • Otherwise:

        • Consolidate entries:

          • Merge source references.

          • Fill in missing fields (nulls).

          • Preserve component IDs.

  4. Final Step:

    • Return the consolidated list of entries.


High-Level Flow Diagram

A diagram of a company

AI-generated content may be incorrect.


Examples

Multiple Chrome Installations

Instance

Source

Version

Install Path

User

1

Agent

v112

C:\Program Files

Admin

2

Agent

v112

C:\Users\User1

User1

3

Scan

v112

C:\Users\User2

User2

Consolidated Entries: Three separate entries (different install paths/users, even with a source mismatch).


Java Runtime Environment

Source

Version

Install Path

1

JRE 1.8.0_301

None

2

JRE 1.8.0_301

C:\Program Files\Java

3

JRE 1.8.0_301

C:\Program Files\Java

Consolidated Entry: Single entry with complete path information.


MySQL Server

Source

Version

Install Path

Agent

8.0.26

/usr/local/mysql

Scan

8.0

None

Agent

8.0.26

/opt/mysql

Consolidated Entries: Two entries due to different install paths, with Source 2 consolidated into the matching version entry.