A malformed cellular packet from a fake tower knocks the modem off the network — nothing more
CVE-2026-20461 is an out-of-bounds write (CWE-787) in the MediaTek modem firmware caused by a missing bounds check in a packet parser. An attacker who stands up a rogue base station the target device attaches to can craft a message that overruns a modem-side buffer. MediaTek describes the impact as remote denial of service, with no user interaction and no elevated privileges required. The affected list is huge — 33 SoCs including MT6895/6897/6899, MT6989/6991/6993, MT8676/8678, MT8798, MT8893 and more — covering flagship 5G smartphones, tablets, Chromebooks, and connected-car/IoT modules shipped from ~2022 onward. Patch IDs are MOLY01267281 / MOLY01318201, delivered to OEMs at least 60 days before disclosure and rolling into the July 2026 Android Security Bulletin dependent-patch cycle.
MediaTek labels this HIGH. That rating reflects the modem's ring-0-equivalent position on the baseband, not the actual demonstrated impact. The advisory is explicit: the outcome is DoS, not RCE, not code execution in the AP kernel, not SIM/IMSI theft. Baseband OOB writes *can* escalate to code execution, but MediaTek does not claim that here and no public PoC demonstrates it. Weighed against the operational reality — attacker must stand up an SDR + fake gNodeB within RF range, victims lose service until the modem resets — this is a MEDIUM. It becomes interesting only in targeted-surveillance scenarios where a rogue BTS is already the operating model.
4 steps from start to impact.
Stand up a rogue base station in RF range of the target
- Physical proximity (typically <500m)
- SDR hardware (USRP B210/X310 or similar, ~$1.5k-$25k)
- Target band knowledge (n41, n78, LTE B2/B4/B12 etc.)
- Broadcasting on licensed spectrum is a federal crime in most jurisdictions
- Modern 5G SA enforces mutual authentication — pure downgrade attacks are increasingly detectable
- Requires physical presence — does not scale beyond targeted operations
Force target device to attach to the rogue cell
- Victim device in idle or actively scanning
- SIM allows roaming onto spoofed PLMN, or attacker mimics home PLMN
- 5G SA with SUCI concealment and mutual auth limits full attach
- Corporate MDM profiles restricting roaming reduce success rate
- iOS and modern Android surface 'connected to unsecured network' hints in some builds
Deliver malformed NAS/RRC message that trips the missing bounds check
- Device has completed enough of the attach to accept the vulnerable message type
- Attacker has reverse-engineered the parser or has a working PoC (none public as of July 2026)
- Requires baseband reverse engineering skill — small pool of practitioners (Comsecuris, TaszkLab, Grant Hernandez, Amat Cama tier)
- MediaTek modem firmware is stripped/obfuscated and varies per SoC — one PoC does not port cleanly across all 33 chipsets
Modem crashes → cellular DoS
- Successful delivery of the malformed message
- DoS ends when victim moves out of RF range or reboots — impact is transient
- No pivot to AP-side (application processor / Android userspace) documented
The supporting signals.
| In-the-wild exploitation | None observed. Not on CISA KEV. No public reports of active use as of 2026-07-01. |
|---|---|
| Public PoC | None published. MediaTek reports the finding as internally discovered — no external researcher credit, no GitHub repo, no conference talk. |
| EPSS | Not yet scored (CVE published today, 2026-07-01). Baseband OOB CVEs historically settle around EPSS <0.5%. |
| KEV status | Not listed. CISA has never KEV-listed a MediaTek baseband DoS CVE. |
| CVSS | No authoritative CVSS score published. MediaTek severity label: High. NVD entry pending. Vector inferable as roughly AV:A/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H (adjacent-radio, high complexity, availability-only). |
| Affected chipsets | 33 SoCs: MT2737, MT6813, MT6835, MT6858, MT6878, MT6879, MT6886, MT6895, MT6896, MT6897, MT6899, MT6980, MT6983, MT6985, MT6988, MT6989, MT6990, MT6991, MT6993, MT8673, MT8676, MT8678, MT8755, MT8775, MT8792, MT8793, MT8795T, MT8796, MT8798, MT8863, MT8873, MT8883, MT8893 — Dimensity 8000/9000 series, Kompanio, Genio. |
| Fixed version | Modem patch IDs MOLY01267281 and MOLY01318201. Delivered to OEMs ≥60 days before 2026-07-01. Rollout depends on OEM (Xiaomi, Oppo, Vivo, Motorola, Samsung-A, Google Chromebook OEMs) shipping the July 2026 vendor patch level. |
| Exposure telemetry | Shodan/Censys/GreyNoise are irrelevant — attack surface is RF, not IP. No internet-facing indicator. Exposure is proximity-based. |
| Disclosure | 2026-07-01 MediaTek July 2026 Product Security Bulletin, source: Internal. |
| Reporter | MediaTek internal security team. No external credit. |
noisgate verdict.
The single most decisive factor is impact ceiling: MediaTek only claims denial-of-service, and there is no public evidence of RCE escalation on the baseband. Combined with the mandatory rogue base station prerequisite — physically-present attacker, illegal RF broadcast, deep baseband skill — the realistic risk to a 10,000-host fleet sits firmly in MEDIUM territory, not HIGH.
Why this verdict
- Impact ceiling is DoS: vendor advisory is explicit — no confidentiality, no integrity, no persistence, no AP-side compromise. A modem crash equals lost signal until reboot.
- Attack vector is RF-adjacent, not remote-internet: requires a rogue gNodeB within RF range. This eliminates opportunistic mass exploitation and confines threat to targeted operations (nation-state, journalist/dissident targeting).
- No public PoC, no in-the-wild use, not KEV: internal MediaTek find, disclosed today, zero exploitation telemetry, EPSS effectively baseline.
- Role multiplier — smartphone/tablet endpoint: The chain succeeds in the *typical* role (employee handset, tablet, Chromebook), blast radius is loss of cell service on one device. No lateral movement, no fleet effect.
- Role multiplier — connected vehicle / IoT modem (MT2737, MT8755, MT8863 telematics): If exploited against a vehicle TCU during operation, DoS on cellular could disable emergency call / OTA / fleet-management uplink. Blast radius stays scoped to that vehicle; no supply-chain or fleet pivot. Not a floor-raising role because population is small and impact is still availability-only.
- Role multiplier — no canonical high-value role: MediaTek modems do not host IdP, PKI, hypervisor, backup, or kernel-mode security agent functions. No HIGH/CRITICAL floor triggers.
- Friction stack: illegal RF broadcast + physical presence + baseband RE + 33-SoC parser variance. Every layer prices out commodity attackers.
Why not higher?
HIGH would require either a plausible path to baseband code execution (MediaTek does not claim it, no PoC demonstrates it) or a widely-exploitable network vector (this needs a rogue base station, not the public internet). Vendor's own HIGH label conflates the modem's privileged position with actual demonstrated impact — for enterprise defenders managing 10,000 hosts, transient cellular DoS on a subset of Android/Chromebook devices does not warrant HIGH triage.
Why not lower?
LOW would undersell the fact that the affected SoC list is enormous — Dimensity 9000/8000-class flagships ship in tens of millions of devices — and the attack requires zero user interaction. Targeted-surveillance actors with rogue-BTS capability (already-established TTPs: Stingray, Hailstorm, criminal IMSI-catcher gray market) can weaponize DoS as a coercion tool. MEDIUM is right; below MEDIUM ignores the non-zero targeted risk.
What to do — in priority order.
- Ship the July 2026 OEM patch level via MDM policy — Intune / Jamf / Workspace ONE / Kandji: set minimum Android security patch level to
2026-07-01(or the earliest OEM level that includes MOLY01267281 / MOLY01318201) with a 365-day noise-free remediation window per the noisgate MEDIUM SLA. Non-compliant devices should lose access to sensitive apps via Conditional Access. - Enforce 5G SA-only on high-risk personas — For execs, legal, M&A, and threat-model-relevant staff, push a carrier profile / APN config that disables 2G and prefers 5G SA. This blocks the classic downgrade-to-legacy attach path that many IMSI-catchers rely on. On Android 14+ use the Cellular Security settings toggle 'Require 5G'.
- Deploy Mobile Threat Defense (Zimperium zIPS, Lookout MES, Wandera) to high-risk fleets — MTD agents flag suspicious cell behavior (rapid signal changes, unknown PLMN attach, baseband reset patterns). Not perfect but the only signal enterprises get for rogue-BTS activity. Deploy alongside patch rollout within the same 365-day MEDIUM window.
- Add rogue-BTS awareness to executive protection briefings — For travel to high-surveillance jurisdictions, brief on Wi-Fi-first mode, avoiding unknown cell hand-offs, using eSIM burners. Especially relevant if you also have unpatched Qualcomm/MediaTek baseband issues stacking.
- Corporate WAF / IPS / NGFW — completely useless. Attack lives on the RF layer, never touches your IP network.
- VPN always-on — irrelevant. The bug triggers before any IP traffic; the modem is DoS'd out from under the VPN.
- Blocking specific IPs / domains via DNS — no C2 infrastructure involved; there is nothing to block.
- Faraday cases — technically stop the attack but also stop the phone from being a phone. Only viable for stored devices, not in-use fleet.
- Google Play Protect / MDM app scanning — the vulnerability is in modem firmware, not an app. App-layer scanners have zero visibility.
Crowdsourced verification payload.
Run on an Intune-connected auditor workstation with Microsoft.Graph.DeviceManagement module and Global Reader / Intune Reader rights. Invoke as .\Check-CVE-2026-20461.ps1 -MinPatchLevel '2026-07-01'. This inventories Android/Chromebook devices, flags those with MediaTek SoCs below the July 2026 patch level, and outputs VULNERABLE / PATCHED / UNKNOWN per device. Requires no credentials on the endpoint itself — everything reads through Graph.
#Requires -Modules Microsoft.Graph.DeviceManagement
<#
.SYNOPSIS
Audit Intune-managed Android/Chromebook devices for CVE-2026-20461
(MediaTek modem OOB write, patched in July 2026 OEM patch level).
.PARAMETER MinPatchLevel
Minimum acceptable Android security patch level, format YYYY-MM-DD.
#>
param(
[Parameter(Mandatory=$true)][string]$MinPatchLevel
)
$ErrorActionPreference = 'Stop'
# Affected MediaTek SoC families (substrings that appear in device hardware fields)
$AffectedSoCs = @(
'MT2737','MT6813','MT6835','MT6858','MT6878','MT6879','MT6886',
'MT6895','MT6896','MT6897','MT6899','MT6980','MT6983','MT6985',
'MT6988','MT6989','MT6990','MT6991','MT6993','MT8673','MT8676',
'MT8678','MT8755','MT8775','MT8792','MT8793','MT8795T','MT8796',
'MT8798','MT8863','MT8873','MT8883','MT8893',
'Dimensity','Kompanio','Genio'
)
try {
Connect-MgGraph -Scopes 'DeviceManagementManagedDevices.Read.All' -NoWelcome
} catch {
Write-Error "Graph auth failed: $_"
exit 2
}
$minDate = [datetime]::ParseExact($MinPatchLevel,'yyyy-MM-dd',$null)
$devices = Get-MgDeviceManagementManagedDevice -All -Filter "operatingSystem eq 'Android' or operatingSystem eq 'ChromeOS'"
$results = foreach ($d in $devices) {
$soc = "$($d.Manufacturer) $($d.Model) $($d.HardwareInformation.Product)"
$isAffectedSoC = $AffectedSoCs | Where-Object { $soc -match $_ }
$status = 'UNKNOWN'
if (-not $isAffectedSoC) {
$status = 'PATCHED' # not an affected SoC family
} else {
$patchStr = $d.AndroidSecurityPatchLevel
if ($patchStr) {
try {
$patchDate = [datetime]::ParseExact($patchStr,'yyyy-MM-dd',$null)
if ($patchDate -ge $minDate) { $status = 'PATCHED' }
else { $status = 'VULNERABLE' }
} catch { $status = 'UNKNOWN' }
}
}
[pscustomobject]@{
DeviceName = $d.DeviceName
User = $d.UserPrincipalName
OS = $d.OperatingSystem
SoCHint = $soc.Trim()
PatchLevel = $d.AndroidSecurityPatchLevel
Status = $status
}
}
$results | Sort-Object Status,DeviceName | Format-Table -AutoSize
$vulnCount = ($results | Where-Object Status -eq 'VULNERABLE').Count
Write-Host ""
Write-Host "VULNERABLE: $vulnCount" -ForegroundColor Red
Write-Host "PATCHED : $(($results | Where-Object Status -eq 'PATCHED').Count)" -ForegroundColor Green
Write-Host "UNKNOWN : $(($results | Where-Object Status -eq 'UNKNOWN').Count)" -ForegroundColor Yellow
if ($vulnCount -gt 0) { exit 1 } else { exit 0 }
If you remember one thing.
Sources
- MediaTek July 2026 Product Security Bulletin
- OffSeq Threat Radar — CVE-2026-20461
- CWE-787: Out-of-bounds Write
- Android Security Bulletin — July 2026
- CISA Known Exploited Vulnerabilities Catalog
- FIRST EPSS Model
- srsRAN / rogue base station research context
- Comsecuris baseband research (background reading on modem RCE feasibility)
What defenders are saying.
Crowdsourced verification outputs.
Results submitted by users who ran the verification payload against their environment.