Android security tags, read closely by Lightrion

CVE-2026-49878 AI-generated analysis

platform/external/wpa_supplicant_8, wpa_supplicant Robust AV / SCS (Stream Classification Service) action frame handling (wpa_supplicant/robust_av.c)

AI-generated: written from the bulletin and the fixing diffs by claude-fable-5-1, then checked against the code by claude-opus-5-5 (6 corrections). Verify against the commit before relying on it.

Replaces two undersized os_zalloc(num_active_scs) allocations for the int arrays scs_resp[0] and scs_resp[1] in wpas_handle_robust_av_scs_recv_action with os_calloc(num_active_scs, sizeof(int)). This fixes the heap out-of-bounds write in the SCS Response handler.

Root cause

In wpa_supplicant/robust_av.c, wpas_handle_robust_av_scs_recv_action() processes a received SCS Response action frame. It first checks three things: the dialog token matches, the count field is valid (count != 0 and count * 3 <= remaining len), and count does not exceed num_active_scs = dl_list_len(&wpa_s->active_scs_ids). It then allocated two result arrays with scs_resp[0] = (int *) os_zalloc(num_active_scs) and scs_resp[1] = (int *) os_zalloc(num_active_scs). os_zalloc takes a byte size, so each buffer was only num_active_scs bytes. According to the commit message, the code uses these buffers as int arrays, which led to heap out-of-bounds writes. The writes happen in the per-response loop (for i < count). The exact write sites are not shown in the material.

How the fix works

Completeness

Behavior changes

Per major

Unknowns

Back to October 2026 · Findings