14.2.1. Orvosi képalkotás ellenséges támadások

2025.10.06.
AI Biztonság Blog

A radiológiai leletező szoftver képernyőjén egy tüdőröntgen. Az AI asszisztens zöld kerettel jelöli a gyanús területet, „Magas valószínűségű malignitás” felirattal. A radiológus megerősíti a diagnózist, a beteg pedig egy megterhelő, invazív biopszián esik át. A szövettan azonban negatív. A daganat sosem létezett – csupán egy gondosan megtervezett, az emberi szem számára láthatatlan, ellenséges zaj volt a digitális képen!

Kapcsolati űrlap

AI Biztonság kérdésed van? Itt elérsz minket:

Ez nem sci-fi, hanem az orvosi képalkotó rendszereket érintő ellenséges támadások valós kockázata. Míg egy átlagos képfelismerő rendszer (pl. egy macska-kutya osztályozó) megtévesztése legfeljebb bosszantó, az egészségügyi AI-k kompromittálása közvetlen fizikai károkozással, téves diagnózisokkal és az orvosi rendszerekbe vetett bizalom eróziójával jár. 

AI Red teamerként a mi feladatunk, hogy feltárjuk ezeket a sebezhetőségeket, mielőtt egy valódi támadó tenné meg.

A támadási felület: A konvolúciós neurális hálók (CNN) Achilles-sarka

A modern orvosi képfeldolgozás szinte kizárólag konvolúciós neurális hálókon (CNN) alapul. Ezek a modellek rendkívül hatékonyak a vizuális mintázatok felismerésében, legyen szó tumorokról egy MRI-felvételen, tüdőgyulladásról egy röntgenképen vagy diabéteszes retinopátiáról egy szemfenéki fotón. Ugyanakkor éppen ez a komplexitás teszi őket sebezhetővé!

A támadás lényege, hogy a modell döntési határfelületeit (decision boundaries) használjuk ki. Olyan minimális, célzott módosításokat (perturbációkat) adunk a bemeneti képhez, amelyek az emberi szem számára észrevehetetlenek, de a modellt egy előre meghatározott, hibás kimenetre kényszerítik. A két leggyakoribb támadási cél:

  • Téves osztályozás (Misclassification): A támadó célja, hogy a modell rossz diagnózist állítson fel.
    • False Positive (Hamis Pozitív): Egy egészséges leleten betegség jeleit „láttatjuk” a modellel. Cél: felesleges kezelések, pánikkeltés, a rendszer túlterhelése.
    • False Negative (Hamis Negatív): Egy beteg leleten eltüntetjük a betegség jeleit a modell szeme elől. Cél: rejtett károkozás, a kezelés késleltetése, felelősségre vonási eljárások provokálása.
  • Forrásattribúció és rekonstrukció: Bár ritkább, de lehetséges a modellből a betanítási adatokra vonatkozó érzékeny információkat kinyerni, ami súlyos adatvédelmi incidenst jelenthet.

Támadási technikák a gyakorlatban

A támadások kivitelezése a modell belső működésének ismeretétől függ. White-box támadás esetén teljes hozzáférésünk van a modell architektúrájához és súlyaihoz. Black-box esetben csak a modell be- és kimenetét látjuk.

White-box: A PGD (Projected Gradient Descent) támadás

Ez az egyik legerősebb és leggyakrabban használt iteratív támadási módszer. Ahelyett, hogy egyetlen nagy lépésben módosítanánk a képet (mint az FGSM esetében), a PGD több apró, kontrollált lépést tesz a gradiens irányába, minden lépés után visszavetítve a módosítást egy adott korlát (epsilon, ε) alá. Ez biztosítja, hogy a zaj észrevehetetlen maradjon.

Eredeti kép AI: Egészséges Ellenséges zaj (ε) Manipulált kép AI: Tumor detektálva

Egy láthatatlan zajminta hozzáadása egy egészséges lelethez téves pozitív diagnózist eredményezhet.


# Pszeudokód egy PGD támadás generálására
# Cél: egy egészséges képet (kep) a modell "daganatos"-ként (cel_osztaly) lásson

def pgd_tamadas(modell, kep, cel_osztaly, epsilon=0.03, alpha=0.001, iteraciok=40):
 # A kép másolatán dolgozunk
 manipulalt_kep = kep.clone().detach()

 for i in range(iteraciok):
 manipulalt_kep.requires_grad = True
 
 # Előrecsatolás a modellen
 kimenet = modell(manipulalt_kep)
 
 # Veszteség kiszámítása a CÉL osztállyal szemben
 # A cél, hogy maximalizáljuk a cél osztály valószínűségét
 veszteseg = -KeresztentropiaVeszteseg(kimenet, cel_osztaly)
 
 # Gradiens kiszámítása
 modell.zero_grad()
 veszteseg.backward()
 
 # A kép módosítása a gradiens mentén
 # Ez a "gradient ascent", mert a veszteséget maximalizáljuk
 zaj = alpha * manipulalt_kep.grad.sign()
 manipulalt_kep = manipulalt_kep - zaj # A képet a negatív gradiens irányába toljuk
 
 # Biztosítjuk, hogy a módosítás az epsilon korláton belül maradjon
 delta = torch.clamp(manipulalt_kep - kep, min=-epsilon, max=epsilon)
 manipulalt_kep = torch.clamp(kep + delta, min=0, max=1).detach()
 
 return manipulalt_kep
 

Black-box: Transzfer és lekérdezés alapú támadások

Gyakran nincs közvetlen hozzáférésünk a célmodellhez. 

Ilyenkor két fő stratégiát követhetünk:

  1. Transzfer támadások: Létrehozunk egy saját, helyettesítő modellt (substitute model), ami hasonló architektúrájú (pl. egy nyílt forráskódú ResNet variáns). Ezen generáljuk az ellenséges példát, és nagy eséllyel az a célrendszeren is működni fog, mivel a neurális hálók által tanult jellemzők (features) gyakran átvihetők a modellek között.
  2. Lekérdezés alapú támadások: Ha van API hozzáférésünk a modellhez, szisztematikus lekérdezésekkel (sok-sok kép beküldésével és a kimenetek elemzésével) feltérképezhetjük a döntési határfelületeket, és ez alapján konstruálhatunk egy hatékony támadást. Ez költséges és időigényes, de rendkívül célzott lehet.

AI Red Team művelet: A PACS rendszer kompromittálásától a téves diagnózisig

Egy valós forgatókönyvben a támadás nem csak a perturbáció generálásáról szól. A teljes klinikai munkafolyamatot kell célba vennünk.

Fázis Leírás és Red Team teendők
1. Felderítés (Reconnaissance) Információgyűjtés a kórház által használt rendszerekről. Milyen PACS (Picture Archiving and Communication System) szoftvert használnak? Ki a diagnosztikai AI szállítója? Van-e publikus információ a modell architektúrájáról? A cél egy helyettesítő modell felépítése vagy a célrendszer gyenge pontjainak azonosítása.
2. Fegyverkezés (Weaponization) A kiválasztott támadási módszerrel (pl. PGD) legeneráljuk az ellenséges perturbációkat egy adathalmazra. Készítünk egy „fegyvert”, ami képes valós időben módosítani a képeket, amint azok a rendszerbe kerülnek.
3. Kézbesítés (Delivery) Ez a kritikus pont. A manipulált képet be kell juttatni a diagnosztikai folyamatba. Lehetséges vektorok:

  • A PACS szerver kompromittálása és a tárolt DICOM fájlok módosítása.
  • Man-in-the-middle támadás a képalkotó eszköz (pl. CT szkenner) és a PACS között.
  • A képfeldolgozó munkaállomás szoftverének manipulálása.
4. Hatás (Impact) A manipulált kép eljut az AI modellhez, ami a támadó szándékának megfelelő, hibás elemzést ad. A radiológus, aki esetleg több száz leletet né át egy nap, támaszkodik az AI javaslatára, és jóváhagyja a téves diagnózist, ami bekerül a beteg kórtörténetébe. A küldetés teljesítve.

Konklúzió a Red Teamer számára

Az orvosi képalkotó rendszerek elleni támadás nem pusztán egy matematikai trükk. A sebezhetőség a teljes digitális egészségügyi ökoszisztémában rejlik: a hálózati protokolloktól a szoftverfrissítési ciklusokon át a felhasználói felületekig. 

A mi feladatunk nemcsak az, hogy megmutassuk, egy modell matematikailag megtéveszthető, hanem az is, hogy demonstráljuk, egy ilyen támadás a valós klinikai gyakorlatban is kivitelezhető! 

Az igazi kockázat nem a pixelekben, hanem a folyamatokban és a rendszerekbe vetett feltétlen bizalomban rejlik.