Sikkerhetsselskapet Calif.io ga Codex en kode-shell inne i TV-ens nettleserprosess, matchende firmware-kildekode, og noen miljøverktøy — ingenting mer. Agenten måtte selv kartlegge angrepsflaten, revidere Samsungs egne kjernedrivere, bekrefte at en primitiv fungerte på den fysiske enheten, tilpasse seg Samsungs Unauthorized Execution Prevention (UEP), og så iterere til nettleserprosessen kjørte som root. OpenAI deltok som partner på prosjektet.
Codex fant raskt en rekke verdensskrivbare ntk*-enhetsnoder som lekket fra Novatek-drivere. Den kritiske var /dev/ntksys — et kjernegrensesnitt som tok en fysisk adresse og størrelse fra brukerrom, lagret verdiene i en tabell, og mappet den valgte fysiske hukommelsen tilbake via mmap. Resultatet: en unprivileged prosess kunne lese og skrive hvilken som helst fysisk minneside.
«We never told Codex to patch cred, never explained what cred was, and never pointed out that the browser process's uid=5001 and gid=100 would make a recognizable pattern in memory.» — Calif.io
Når Codex hadde den primitiven, valgte den selv strategien: skann RAM-vinduene gjenopprettet fra /proc/cmdline, finn prosessens credential-mønster, nullstill identitetsfeltene. Resultatet fra den siste kjøringen var uid=0(root) fra en shell som startet som en vanlig nettleserprosess.
Hva dette betyr for deg som bygger agenter
Samsung-saken er interessant fordi den viser hva en generell kodingsagent kan gjøre når den får riktig stillas. Calif.io bygget ingen spesialisert exploit-agent — de ga Codex en shell, en kildekode og et par linjer om hvordan tmux-sesjonen skulle drives. Resten var standard iterasjon.
For utviklere som bygger agent-rammeverk betyr dette to ting. For det første: loopen «inspect → test → adjust → rerun» fungerer overraskende godt for komplekse tekniske oppgaver når miljøet er godt stillet. For det andre: sikkerhetsmodeller som antar at angripere trenger dyp domeneekspertise trenger en oppdatering. En sårbarhet som tidligere krevde en spesialist som forstår fysisk minnehåndtering og Linux credential-strukturer, kan nå finnes og utnyttes av en agent som ble gitt et shell og en lenke til kildekoden.
Hva bør du gjøre?
- Revurder trusselmodellen for produkter som antar at angripere må være dyktige. Agent-drevet exploit-utvikling flater ut ekspertise-kurven betraktelig.
- Tenk på stillaset, ikke modellen hvis du bygger noe som skal løse tekniske problemer. Calif.io brukte Codex «as-is» — det var miljøet rundt som gjorde at det fungerte.
- Les writeupet på calif.io for detaljene — PoC-koden ligger på github.com/califio/publications under
MADBugs/samsung-tv/.