compiler backdoor

Üdvözlöm, Ön a compiler backdoor szó jelentését keresi. A DICTIOUS-ban nem csak a compiler backdoor szó összes szótári jelentését megtalálod, hanem megismerheted az etimológiáját, a jellemzőit és azt is, hogyan kell a compiler backdoor szót egyes és többes számban mondani. Minden, amit a compiler backdoor szóról tudni kell, itt található. A compiler backdoor szó meghatározása segít abban, hogy pontosabban és helyesebben fogalmazz, amikor beszélsz vagy írsz. Acompiler backdoor és más szavak definíciójának ismerete gazdagítja a szókincsedet, és több és jobb nyelvi forráshoz juttat.

Főnév

compiler backdoor (tsz. compiler backdoors)

  1. (informatika) A compiler backdoor – magyarul: fordítóprogramba rejtett hátsó ajtó – egy olyan különösen veszélyes és nehezen észlelhető kiberfenyegetés, amikor a fordítóprogram (compiler) van úgy módosítva, hogy:
  • bizonyos forráskódok fordításakor automatikusan rosszindulatú (backdoor-os) kódot illeszt a binárisba,
  • akkor is, ha a forráskód tiszta, és
  • akkor is, ha magát a fordítót újrafordítjuk egy látszólag „tiszta” forrásból.



🧠 Alapgondolat: „Reflections on Trusting Trust”

Ken Thompson (UNIX és C atyja) 1984-es híres előadásában mutatta be ezt a koncepciót:

„Nem elég ellenőrizni a forráskódot, mert a fordító is lehet fertőzött.”


🔄 Hogyan működik egy compiler backdoor?

  1. Kezdeti trójai:
    • A fordító ellenőrzi, hogy mit fordít (pl. login.c), és ha felismeri, beilleszt egy rejtett backdoort.
    • A forráskód továbbra is tisztának látszik, de a bináris fertőzött.
  2. Önmagát újrafertőző logika:
    • Ha a fertőzött fordító lefordítja a saját forráskódját, akkor újra beépíti a hátsó ajtót a létrehozott új fordítóba.

Így még ha egy új programozó újrafordítaná a „tiszta” forrásból a kompilert, a rosszindulatú logika fennmarad, anélkül hogy azt a forrásban látnánk.


🧪 Kódvázlat (elvi példa, nem futtatható!)

if (source_file == "login.c") {
    inject_backdoor_to_binary();
}
if (source_file == "compiler.c") {
    inject_backdoor_to_compiler();
}

Ez a logika nem a forráskódban szerepel, hanem a bináris compiler tartalmazza, és rejtetten működik.



🔐 Miért veszélyes ez?

  • Forráskód audit sem elég – a bizalom a compilerre is kiterjed.
  • Nehezen észlelhető – nincs nyoma a forráskódban, a fertőzés önfenntartó.
  • Backdoor öröklődik – új build, új gép, új környezet sem mentesíti.



🛡️ Ellenszerek: hogyan lehet ilyen backdoort észrevenni?

Módszer Leírás
Diverse Double Compiling (DDC) Fordító újrafordítása független másik compilerrel, és a binárisok összehasonlítása.
Reproducible builds Garantálják, hogy a forrás ugyanazt a binárist adja vissza mindig.
Formálisan verifikált compiler Pl. CompCert, Coq-alapú, matematikailag bizonyítottan korrekt compiler.
Forrás+bináris audit Nem elég a forrást nézni, a bináris viselkedést is vizsgálni kell.



🏛️ Történelmi és elméleti jelentőség

A compiler backdoor nemcsak biztonsági kérdés, hanem filozófiai is:

  • Kiben és miben bízhatunk a szoftverláncban?
  • Lehet-e abszolút biztonságot garantálni, ha az alapok (a fordítók, build toolchain) manipulálhatók?



📌 Összefoglalás

A compiler backdoor az egyik legveszélyesebb és legintelligensebb támadási forma, mert:

  • láthatatlan,
  • újrafordítás sem semlegesíti,
  • mérgezheti az egész szoftver-ökoszisztémát.

Ezért modern rendszerek esetén egyre fontosabb a build lánc teljes átláthatósága, determinista build, ellenőrzött fordítók használata, és szoftverbiztonsági validálás már a compiler szintjén is.