KernelScan.io

Documentation

How KernelScan works

From the live kernel CVE feed to the AI-powered factor taxonomy that decides whether a CVE matters for your device. Built for humans and for agents — there's a Model Context Protocol endpoint too. Everything in one place.

Why KernelScan?

Linux runs inside almost every commercial product with digital elements — network gear, industrial controllers, medical devices, automotive ECUs, IoT, edge appliances. The Linux kernel community runs a sophisticated, mature security process: kernel.org operates as a CVE Numbering Authority (CNA), publishes structured CVE records, and tracks fixes per LTS branch with commit-level precision.

Commercial product developers don't speak that dialect. Their SBOM scanners, vulnerability management tools, and compliance platforms are built around the NVD-driven, CPE-keyed feed — which is downstream from the kernel community's process, manually triaged, and chronically backlogged. By the time a kernel CVE shows up in a commercial scanner, the upstream community has already shipped a fix, mailing-list discussions have moved on, and adversaries have had a head start.

KernelScan exists to close that gap — a kernel-native security pipeline that ingests every CVE the moment kernel.org publishes it, then re-emits it through the formats your existing scanners and compliance tooling already understand.

The regulatory pressure

Authorities on both sides of the Atlantic now require manufacturers to do exactly what the Linux community already does — but with the rigor, traceability, and timeliness expected of a commercial supply chain.

European Union — Cyber Resilience Act (CRA)

Regulation (EU) 2024/2847, adopted October 2024 and enforceable from late 2027, applies to every product with digital elements placed on the EU market — including industrial gear, IoT, medical, automotive, and consumer hardware running Linux.

  • Vulnerability identification and management across all components, including third-party dependencies — the kernel is the dominant one for most embedded products.
  • Mandatory SBOM accompanying every product, structured and machine-readable.
  • 24-hour reporting to ENISA / CSIRTs for actively exploited vulnerabilities; 72-hour reporting for severe vulnerabilities.
  • Security updates without undue delay across the support period (typically the longer of 5 years or the expected product lifetime).
  • Penalties up to €15M or 2.5% of global annual turnover, whichever is higher.

United States — federal cyber requirements

  • Executive Order 14028 (2021) — software supply chain security: SBOMs, attestations, secure development practices.
  • NIST SP 800-218 (SSDF) — the Secure Software Development Framework that mandates ongoing vulnerability identification and remediation in components.
  • OMB M-22-18 / M-23-16 — federal agencies collect self-attestations from software producers against the SSDF; vendors selling to government must comply.
  • CISA Known Exploited Vulnerabilities (KEV) catalog — sets a 14-day federal patch deadline once a CVE is added.
  • Sector-specific mandates — FDA refuse-to-accept policy on medical-device cybersecurity (since 2023), TSA pipeline directives, NERC CIP for the bulk power grid.

The kernel-shaped hole

Both regulatory frameworks expect manufacturers to monitor and act on vulnerabilities in their dependencies continuously. For commercial Linux products, the dominant dependency is the kernel — and the kernel is precisely where mainstream NVD-driven tooling has its largest blind spot. Most kernel CVEs are visible to the kernel community for weeks before they appear in scanners. That window is the difference between a defensible compliance posture and a regulator question you can't answer.

KernelScan is the kernel-native bridge between the Linux community's security process and the commercial software supply chain. It pulls directly from kernel.org's CVE feed, processes every record through a deterministic pipeline as it lands, and re-publishes it in the formats your scanners and SBOM tools already consume — OSV for Trivy / Grype / Renovate, CycloneDX VDR for Dependency-Track and richer pipelines.

What that means for you

  • A vulnerability monitoring story regulators will accept — kernel CVEs surface as soon as upstream publishes them, not weeks later.
  • A defensible audit trail — per-CVE, per-config verdicts with the upstream commit references, branch fix versions, and (on Pro) deployment-context exposure analysis.
  • A scanner-native delivery format — drop-in OSV mirror for Dependency-Track / Trivy / Grype, or CycloneDX VDR for richer pipelines. No new tools to procure.
  • Direct evidence for SBOM and SSDF attestations — every record carries provenance, attribution, and a CC-BY-4.0 license that survives redistribution.

What is KernelScan?

KernelScan turns a Linux kernel .config into a CycloneDX VEX report — a per-CVE verdict (exploitable, not_affected, in_triage) calibrated to your kernel version and build options. Pro accounts add a deployment-context layer: an AI assessor reasons about your product's interfaces, network exposure, and hardening to rule out CVEs that simply can't reach the device in the field.

Three layers of analysis stack on top of each other:

  1. Layer 1 — Config analysis. A deterministic engine maps each CVE's fix commits to CONFIG_* dependencies. If the option isn't compiled in, the CVE is not_affected. No LLM involved.
  2. Layer 2 — Factor assessment. For exploitable CVEs on products that declare deployment context, an LLM evaluates the CVE description against the relevant subset of factors (e.g. "USB on enclosure + sealed cabinet") and may downgrade the verdict, annotate it as mitigated, or flag it as increased risk. Layer 2 only runs on Pro tier.
  3. Layer 3 — VEX generation. Layer 1 and Layer 2 are folded into a single CycloneDX 1.6 VEX file with full provenance — the .config hash, the engine version, and the reasoning behind every status change.

Layer 2 can only refine exploitable CVEs. If config analysis already cleared a CVE, factors can't undo that — the code isn't in the build.