Dell wrapped the BIOS admin password in a bathrobe and called it a vault
Dell's Client Platform BIOS stores the setup/admin password inside the DVAR region of the SPI flash chip using a repeating 20-byte XOR key applied to a 32-byte field. The first character is stored in the clear, and because the field is null-padded, any password shorter than 12 characters leaks the raw key bytes directly — anything XORed with zero is itself. Passwords longer than 12 chars require testing at most 256 candidate keys. The bug spans a broad set of models (Edge Gateway 3000/5000, Embedded PC 3000/5000, Precision 3630/3930, Latitude 3190/3310/7220/Rugged 5420/5424/7424, OptiPlex 7070 UFF, Precision 5540) plus the researcher-tested Latitude E7250/7490, XPS 15 9560, and Wyse 5070.
Dell's MEDIUM (5.7) rating with AV:P/AC:H is defensible and, if anything, slightly generous. The attack is AV:P — an attacker needs to pop the chassis, land an SPI flash clip on a Winbond/Macronix chip, and dump firmware. That is an evil-maid / lost-device / supply-chain-interception scenario, not something that scales across a 10,000-host estate over the network. The C:H/I:H component is real (BIOS admin password recovery kills pre-boot auth, Secure Boot policy, and unlocks storage on some configs), but the population of realistic attackers is small.
4 steps from start to impact.
Obtain physical possession of the device
- Physical possession for the duration of the flash dump (5–15 minutes)
- Ability to disassemble chassis without triggering intrusion switch
- Chassis intrusion detection on Precision/OptiPlex triggers a BIOS event on next boot
- Field devices often in tamper-evident enclosures
- Full-disk encryption keyed to TPM+PIN mitigates the practical impact
Clip the SPI flash and dump firmware
- Physical access to motherboard
- SPI programmer + SOIC-8 clip
- flashrom or vendor equivalent
- Some newer platforms have SPI read protection registers set at power-on that require full power-off and specific reset sequences
- BGA-packaged flash on some ultrabooks makes clip attachment impractical
Locate the DVAR region and extract the password record
- Public MDSec write-up (mdsec.co.uk)
- Basic hex-editor / Python scripting
- None once the image is dumped — this is pure offline analysis
Recover plaintext BIOS admin password
- Recovered password
- Re-assembled device
- If the device uses BitLocker with TPM+PIN, PIN is still required regardless of BIOS access
- TPM measurements change if Secure Boot policy is altered — BitLocker will demand recovery key on next boot
- Network segmentation / firewalls — irrelevant. This is a hardware-local attack; the device does not need to be online.
- EDR / AV — the attack happens with the OS powered off and firmware read via external programmer. No agent runs.
- BIOS admin password rotation alone — historical passwords persist in the DVAR log structure, so rotation does not erase past credentials from flash. Only a BIOS update (which rewrites the storage format) plus rotation clears the record.
- TPM-only BitLocker (no PIN) — Secure Boot policy changes force a recovery-key prompt, but an attacker with BIOS admin can manipulate boot config and, on some configurations, still access storage. TPM+PIN is the real fix.
The supporting signals.
| In-the-wild exploitation | No public reports of active exploitation as of July 2026. No CISA KEV listing. |
|---|---|
| Proof-of-concept | Detailed technical write-up published by MDSec (Craig S. Blackie) and AmberWolf (Darren McDonald). No packaged public exploit tool observed, but implementation is trivial from the disclosure — expect community dell-bios-decrypt.py scripts within weeks. |
| EPSS | 0.00119 (~0.12%) — bottom-tier likelihood of network-observable exploitation, consistent with AV:P. |
| CISA KEV | Not listed. Physical-access class vulns rarely reach KEV. |
| CVSS vector | CVSS:3.1/AV:P/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N — Physical access, High attack complexity, no privileges, no user interaction, high confidentiality/integrity impact, no availability impact. |
| Affected versions | Broad Dell client BIOS across Edge Gateway 3000/5000, Embedded PC 3000/5000, Precision 3630/3930/5540, Latitude 3190/3310/7220/Rugged 5420/5424/7220EX/7424, OptiPlex 7070 UFF. Researcher-confirmed on Latitude E7250, Latitude 7490, XPS 15 9560, Wyse 5070. |
| Fixed versions | See DSA-2026-197 table (e.g. Precision 3630 ≥ 2.40.0, Latitude Rugged 5420 ≥ 1.42.0, OptiPlex 7070 UFF ≥ 1.36.1). Additional platforms scheduled for end-of-July 2026. |
| Exposure telemetry | Not applicable — no network-facing signature. Shodan/GreyNoise/Censys have no bearing on a physical-access flaw. |
| Disclosure date | 2026-06-09 (Dell DSA-2026-197) |
| Researchers | Darren McDonald (AmberWolf) and Craig S. Blackie (MDSec) |
Sources.
Why this verdict
- Physical access is a hard cap on scale.
AV:Pmeans an attacker must be in the room, with tools, with the device open, for every single target. There is no worm, no mass-exploitation path, no internet-reachable population — EPSS at 0.00119 reflects this reality. - Friction audit — SPI clip and DVAR parsing. Even after physical access, the attacker needs an SPI programmer, must identify the flash chip package, dump firmware, and parse the DVAR record. That is trivial for a competent hardware-security researcher but non-trivial for opportunistic laptop thieves — the vast majority of stolen Dells never get their BIOS password extracted.
- Role multiplier: workstation / user laptop (typical role). Chain succeeds and yields the BIOS setup password. Blast radius = single device. Attacker can disable Secure Boot, boot attacker USB, and attempt to attack the OS. BitLocker with TPM+PIN neutralizes this outcome — the disk stays sealed. Without pre-boot PIN, storage disclosure is likely.
- Role multiplier: Edge Gateway / Embedded PC / Rugged Latitude in field deployments (typical role for these SKUs). Chain succeeds. Blast radius = the field device itself and potentially the OT/network segment it bridges. These devices are more likely to lack BitLocker and more likely to be physically accessible in remote/unattended locations — this is the population that deserves priority.
- Role multiplier: no high-value identity/hypervisor/PAM role. This is client-platform BIOS, not a server, hypervisor, DC, IdP, backup server, or CI/CD host. There is no fleet-scale pivot, no domain compromise path, no supply-chain multiplier. The high-value-role floor does not apply — this vuln does not live in a role-defining component.
Why not higher?
MEDIUM would require either a scalable attack vector (there isn't one — AV:P is definitional) or a role multiplier into identity/hypervisor/backup (this is client BIOS, not server or infrastructure). Physical-access flaws with AV:P/AC:H in the CVSS vector realistically live in the LOW-to-MEDIUM band, and the friction audit pushes this to the lower half.
Why not lower?
IGNORE is wrong because the confidentiality impact is real for field-deployed Edge Gateway / Rugged Latitude fleets where BitLocker+PIN is often absent, and because public MDSec research plus trivial exploit implementation will produce community tooling. For a security team handling lost/stolen laptop response and OT field devices, this is worth backlog attention, not zero attention.
Crowdsourced verification payload.
Run on the target Dell client as Administrator to check installed BIOS version against the DSA-2026-197 fixed-version table. Invoke as: powershell -ExecutionPolicy Bypass -File .\Check-CVE-2026-40639.ps1. Requires local admin for WMI access to Win32_BIOS.
#Requires -RunAsAdministrator
# Check-CVE-2026-40639.ps1
# Verifies Dell Client Platform BIOS against DSA-2026-197 fixed versions.
# Exit: 0=PATCHED, 1=VULNERABLE, 2=UNKNOWN, 3=NOT_AFFECTED_MODEL
$ErrorActionPreference = 'Stop'
$fixedVersions = @{
'Edge Gateway 3000' = '1.26.0'
'Edge Gateway 5000' = '1.36.0'
'Embedded Box PC 3000' = '1.32.0'
'Embedded Box PC 5000' = '1.33.0'
'Precision 3630 Tower' = '2.40.0'
'Precision 3930 Rack' = '2.43.0'
'Latitude 3190' = '1.44.0'
'Latitude 3190 2-in-1' = '1.44.0'
'Latitude 3310' = '1.33.0'
'Latitude 3310 2-in-1' = '1.32.0'
'Latitude 7220 Rugged Extreme Tablet' = '1.51.0'
'Latitude 5420 Rugged' = '1.42.0'
'Latitude 5424 Rugged' = '1.42.0'
'Latitude 7220EX Rugged Extreme Tablet' = '1.51.0'
'Latitude 7424 Rugged Extreme' = '1.42.0'
'OptiPlex 7070 Ultra' = '1.36.1'
'Precision 5540' = '1.43.0'
}
try {
$cs = Get-CimInstance -ClassName Win32_ComputerSystem
$bios = Get-CimInstance -ClassName Win32_BIOS
} catch {
Write-Output 'UNKNOWN: WMI query failed'
exit 2
}
$model = $cs.Model.Trim()
$vendor = $cs.Manufacturer
$biosV = $bios.SMBIOSBIOSVersion
if ($vendor -notmatch 'Dell') {
Write-Output "NOT_AFFECTED_MODEL: vendor=$vendor"
exit 3
}
$match = $null
foreach ($k in $fixedVersions.Keys) {
if ($model -like "*$k*") { $match = $k; break }
}
if (-not $match) {
Write-Output "UNKNOWN: model '$model' not in DSA-2026-197 table (may still be affected; check Dell advisory)"
exit 2
}
$fixed = $fixedVersions[$match]
try {
$installed = [Version]($biosV -replace '[^0-9\.].*$','')
$required = [Version]$fixed
} catch {
Write-Output "UNKNOWN: cannot parse BIOS version '$biosV'"
exit 2
}
if ($installed -ge $required) {
Write-Output "PATCHED: $model BIOS $installed >= $required"
exit 0
} else {
Write-Output "VULNERABLE: $model BIOS $installed < $required (CVE-2026-40639)"
exit 1
}