RC RANDOM CHAOS

It's 6.1, not 3.8

SteamOS 3.x runs a Valve-patched 6.x kernel, not Linux 3.8 - the real risk is standard local-privilege-escalation bugs on an unmanaged device with no telemetry.

· 6 min read
It's 6.1, not 3.8

SteamOS 3.x does not run Linux kernel 3.8. That correction comes first, because the rest of the alarm depends on it. The “SteamOS Linux 38” framing fails on the version string before any CVE analysis begins.

Linux 3.8 shipped in February 2013. It reached end of life in May 2013 - it was never a long-term-support branch, and it has been unmaintained for thirteen years. It is not a newer kernel. It is one of the oldest 3.x releases still named in the wild. No shipping operating system carries 3.8 as a security-supported kernel today. Describing it as recent inverts the timeline by over a decade.

SteamOS 3.x - the Steam Deck operating system, internal name holo - is built on Arch Linux. SteamOS 1.x and 2.x were Debian-based; the 3.x line is a clean break. It runs a Valve-patched kernel from the 6.1 LTS series and forward. SteamOS 3.5 moved the device onto 6.1. Later point releases tracked newer 6.x branches. The string that became “Linux 38” is a flattened SteamOS release number - 3.5, 3.6, 3.7 - not a kernel version. There is no kernel 3.8 in the image, stable or otherwise.

With the version error removed, the prediction that CVEs targeting this specific kernel version are almost guaranteed to emerge in the coming days has nothing beneath it. CVEs do not emerge because an operating system is new. They emerge against specific code in specific kernel subsystems, and a Valve build of 6.x inherits the same upstream CVE stream every other 6.x distribution already tracks. The patch flow runs the other direction - fixes land upstream and ship down to SteamOS through atomic updates. There is no separate “SteamOS 3.8 kernel” for researchers to begin analysing.

The reasoning error is methodological. The claim that a new operating system release produces new CVEs treats the OS image as the unit of vulnerability. It is not. A CVE is assigned against a defect in a specific component - a kernel subsystem, a library, a userland binary - and SteamOS composes those components from upstream Arch and upstream Linux. A flaw found in nf_tables is a Linux CVE that affects every distribution carrying the vulnerable code, weighted by configuration. SteamOS inherits that exposure on the day the code ships, not on the day a researcher notices the distribution exists. Novelty of the image does not create novelty of the bug.

The real surface is worth describing accurately, because it is not nothing. SteamOS mounts its root filesystem read-only and updates it through an A/B partition scheme. An update writes a new system image to the inactive partition and switches to it on reboot. At runtime, the root is immutable. Writing persistent changes requires steamos-readonly disable, which an attacker would have to invoke and which the next system update can overwrite. The design blunts persistence - MITRE T1547 and related boot-persistence techniques have less to grip - but it does nothing to stop initial code execution or in-memory privilege escalation.

The default “deck” user ships with no password set. That detail matters in both directions. sudo is unusable until a password is assigned with passwd, so the textbook local-to-root path through cached sudo credentials is closed by default. The realistic escalation path is therefore a kernel bug, not a sudo misconfiguration. Code running as deck - a non-Steam executable, a Flatpak app, a compromised game - reaches root by exploiting the kernel directly. T1068, exploitation for privilege escalation.

The bug classes that matter on a 6.x kernel are known and recurring. Netfilter nf_tables remains the most productive local-privilege-escalation target - CVE-2024-1086, a use-after-free reachable through nft_verdict handling, CVSS 7.8, added to the CISA Known Exploited Vulnerabilities catalog after confirmed exploitation. OverlayFS has produced its own LPE primitives - CVE-2023-0386, improper ownership transfer on copy-up, CVSS 7.8. The pipe-buffer flaw known as Dirty Pipe, CVE-2022-0847, CVSS 7.8, affects every kernel from 5.8 forward and gives an unprivileged process arbitrary write into the page cache backing read-only files.

The mechanism is consistent across the nf_tables findings. A rule update frees an object another path still references, and the stale reference is reused after reallocation. The attacker grooms the kernel heap so the freed slot is reclaimed by a controlled object, then drives the dangling reference to read or write through attacker-shaped memory. The result is a kernel read/write primitive, and from there a credential-structure overwrite to uid 0. None of that is SteamOS-specific. A Valve 6.x build is exposed to exactly the same primitives as any other unpatched 6.x system until the upstream fix ships.

Two conditions widen the path. Unprivileged user namespaces, where enabled, hand an attacker the CLONE_NEWUSER and CLONE_NEWNET primitives that turn many of these subsystem bugs into reachable LPE - nf_tables in particular becomes addressable from an unprivileged context. Desktop mode adds the second condition. Switching to the KDE Plasma desktop exposes a full userland, a Chromium-based browser surface, and Flatpak-delivered applications. A browser-side RCE - T1203, exploitation for client execution - lands code as deck, and the kernel bug completes the chain to root. T1611, escape to host, applies where the initial execution begins inside a Flatpak or container sandbox.

No named threat actor campaign targets SteamOS as a platform. Stating otherwise would be invention. The Steam Deck is a consumer device, not an enterprise fleet endpoint, and it is not a high-value mass target. The grounded risk is local: a device that runs untrusted executables in desktop mode, on a network the owner does not segment, escalating through a kernel CVE that has not yet been patched on that specific unit. SSH is not enabled by default, which removes the obvious remote-service path - T1190 does not apply to a stock configuration. The exposure is initial execution plus local escalation, not remote compromise of an exposed service.

Telemetry is where the honest answer is uncomfortable. There is none. Sysmon is a Windows facility and does not apply. On the Linux side, the meaningful sources - auditd execve and ptrace records, eBPF sensors such as Falco or Tetragon watching finit_module, socket, and connect - are not present or enabled in a stock SteamOS image. The device emits no security telemetry by default. A kernel LPE on a Steam Deck produces nothing in any SIEM because nothing is collecting. On a managed Linux fleet the detection content exists - netlink writes to nf_tables, unexpected module loads, ptrace into privileged processes, and namespace creation by unprivileged users are all observable with the right sensor. SteamOS ships none of that sensor stack. The gap is not a missing rule. It is a missing collector.

On a corporate or operational-technology network, a Steam Deck is an unmanaged Arch-derived Linux endpoint with no agent and no logging. For an entity inside Australia’s SOCI obligations or holding Privacy Act data, that is an asset-inventory and visibility gap before it is an exploitation story. The device will not appear in EDR coverage reports. It will not log. It carries the same kernel CVE exposure as any unmanaged Linux host on the segment, with less chance of being noticed.

The technical reality is narrower than the headline. There is no kernel 3.8, no imminent SteamOS-specific CVE wave, and no novel attack surface introduced by the version number. There is a modern, immutable, Arch-derived Linux device running a 6.1-or-newer Valve kernel, exposed to the standard 6.x local-privilege-escalation bug classes and carrying no native telemetry. The residual exposure that survives the correction is real and ordinary. Keep the unit on current SteamOS so atomic updates close kernel CVEs as they ship. Set a password on the deck account before enabling sudo. Leave the root filesystem read-only and SSH disabled unless there is a reason not to. Treat any Steam Deck on a network that matters as the unmanaged Linux endpoint it is. The premise was wrong on the kernel version. The discipline it points at - patch currency and endpoint visibility on a 6.x Linux device - still applies.

Share

Keep Reading

Stay in the loop

New writing delivered when it's ready. No schedule, no spam.