24.2.2. Súlyozási mátrix

2025.10.06.
AI Biztonság Blog

Miután az értékelési ellenőrző lista alapján azonosítottad a lehetséges sebezhetőségeket, a következő logikus kérdés: melyikkel foglalkozzunk először? Nem minden hiba egyformán súlyos, és nem minden kockázat jelent azonnali veszélyt. A súlyozási mátrix (vagy kockázati mátrix) egy egyszerű, de rendkívül hatékony vizuális eszköz, amely segít a talált sebezhetőségek priorizálásában a várható kárhatásuk és a bekövetkezésük valószínűsége alapján.

Kapcsolati űrlap

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

Ez nem egy univerzális, kőbe vésett szabvány, mint a CVSS, hanem egy projekt-specifikus eszköz. Az ereje abban rejlik, hogy a megbízóval közösen, az ő üzleti környezetére és kockázati étvágyára szabva alakíthatod ki. Így a prioritások nem csupán technikai, hanem üzleti szempontból is relevánsak lesznek.

A mátrix alapjai: Kárhatás és Valószínűség

A mátrix két tengely mentén értékeli a kockázatot:

  • Kárhatás (Impact): Mekkora kárt okoz a sebezhetőség kihasználása? Ez vonatkozhat pénzügyi veszteségre, adatszivárgásra, reputációs kárra, a szolgáltatás leállására vagy akár fizikai károkra is.
  • Megvalósulási Valószínűség (Likelihood): Mennyire könnyű vagy valószínű, hogy egy támadó sikeresen kihasználja a sebezhetőséget? Ez függ a szükséges szakértelemtől, erőforrásoktól, a támadási felület nagyságától és a már meglévő védelmi intézkedésektől.

A két dimenzió metszetében kapjuk meg a kockázat szintjét (pl. Kritikus, Magas, Közepes, Alacsony), ami alapján a javítási sorrendet felállíthatjuk.

A tengelyek definiálása: Egy lehetséges példa

A legfontosabb lépés a szintek egyértelmű definiálása. Az alábbi táblázatok egy általános kiindulási alapot adnak, amit mindig az adott projekt kontextusához kell igazítani.

Kárhatás (Impact) szintek

Szint Leírás Példa AI kontextusban
Kritikus Katasztrofális, az üzletmenet folytonosságát veszélyeztető kár. Jelentős pénzügyi vagy reputációs veszteség, súlyos jogi következmények. A teljes ügyféladatbázis (PII) kiszivárgása. A modell súlyainak ellopása, ami a fő üzleti előnyt jelenti. A modell manipulálása, ami életveszélyes döntéseket hoz (pl. önvezető autó).
Magas Súlyos kár, amely jelentős hatással van a napi működésre, komoly pénzügyi vagy reputációs következményekkel jár. Egy teljes prompt adatbázis ellopása. Tartós szolgáltatáskiesés (denial of service). A modell kimenetének szisztematikus, rosszindulatú torzítása (pl. elfogulttá tétele).
Közepes Mérsékelhető kár, amely befolyásolja a működést, de nem veszélyezteti a folytonosságot. Korlátozott pénzügyi vagy reputációs hatás. Egyetlen felhasználó adatainak kompromittálása. A modell rejtett rendszerpromptjának felfedése. Kisebb, ideiglenes szolgáltatási zavarok.
Alacsony Minimális kár, elhanyagolható hatás a működésre. Kisebb kellemetlenséget okoz. Információszivárgás a modell verziószámáról vagy a használt technológiáról. A modell „hallucinálása” kihasználható, de jelentős kárt nem okoz.

Megvalósulási Valószínűség (Likelihood) szintek

Szint Leírás
Nagyon valószínű Kihasználása triviális, nem igényel speciális eszközöket vagy tudást. A támadás automatizálható. A sebezhetőség nyilvánosan ismert.
Valószínű Kihasználása átlagos támadói képességeket és könnyen elérhető eszközöket igényel. A támadási felület könnyen hozzáférhető.
Lehetséges Kihasználása speciális tudást, egyedi eszközöket vagy több feltétel együttes teljesülését igényli.
Nem valószínű Kihasználása rendkívül nehéz, laboratóriumi körülményeket, belső hozzáférést vagy jelentős erőforrásokat (pl. állami szereplő szintű) igényel.

A súlyozási mátrix a gyakorlatban

A definiált szintek alapján felrajzolható maga a mátrix. Az alábbi 5×4-es mátrix egy gyakran használt séma.

Megvalósulási Valószínűség
Nem valószínű Lehetséges Valószínű Nagyon valószínű
Kárhatás Kritikus Közepes Magas Kritikus Kritikus
Magas Alacsony Közepes Magas Kritikus
Közepes Alacsony Közepes Közepes Magas
Alacsony Informatív Alacsony Alacsony Közepes

Hogyan használd? Egy talált sebezhetőség esetén:

  1. Becsüld meg a kárhatást: Ha ezt a hibát kihasználják, mekkora lesz a baj? Használd a fenti definíciós táblát. Például egy prompt injection, ami PII adatokat szivárogtat, „Magas” kárhatású.
  2. Becsüld meg a valószínűséget: Mennyire nehéz ezt a támadást végrehajtani? Ha egy egyszerű, bárki által beírható promptról van szó, az „Nagyon valószínű”.
  3. Keresd meg a metszéspontot: A mátrixban a „Magas” kárhatás sora és a „Nagyon valószínű” valószínűség oszlopa a „Kritikus” kockázati szintnél metszi egymást.
  4. Priorizálj: Ennek a hibának a javítása azonnali beavatkozást igényel.

A testreszabás fontossága

Ne feledd, ez egy sablon. Egy pénzügyi intézménynél a pénzügyi veszteség súlya nagyobb, míg egy egészségügyi szolgáltatónál a páciensek adatainak védelme a legkritikusabb. A Red Teaming megbízás elején, a scoping fázisban érdemes a megbízóval közösen véglegesíteni a mátrixot. Ez biztosítja, hogy a tesztelés végén a riportod olyan prioritásokat tükröz, amelyekkel a szervezet vezetése is azonosulni tud, és a javasolt intézkedések a valódi üzleti kockázatokat célozzák.

Egy egyszerű szkript vagy függvény segíthet a riportok automatizálásában, hogy a besorolás konzisztens maradjon a projekt során.

# Pszeudokód a kockázati szint meghatározására
# A valós implementációban a szinteket (pl. 'Magas')
# numerikus értékekké (pl. 3) kell konvertálni.

def get_risk_level(impact, likelihood):
 """
 Meghatározza a kockázati szintet a kárhatás és a valószínűség alapján.
 A mátrix logikáját implementálja.
 """
 
 # Példa logika a mátrix alapján
 if impact == "Kritikus":
 if likelihood in ["Nagyon valószínű", "Valószínű"]:
 return "Kritikus"
 elif likelihood == "Lehetséges":
 return "Magas"
 else:
 return "Közepes"
 
 elif impact == "Magas":
 if likelihood == "Nagyon valószínű":
 return "Kritikus"
 # ... a többi szabály implementálása
 
 # ... stb. a mátrix összes cellájára
 
 return "Informatív" # Alapértelmezett érték

# Használat
found_vulnerability_impact = "Magas"
found_vulnerability_likelihood = "Nagyon valószínű"

risk = get_risk_level(found_vulnerability_impact, found_vulnerability_likelihood)
print(f"A sebezhetőség kockázati besorolása: {risk}")
# Várt kimenet: A sebezhetőség kockázati besorolása: Kritikus