A kleptography ( eng. Kleptography ) a kriptovirológia egyik ága, amely titkos és titkos kommunikációt kutat kriptorendszereken és kriptográfiai protokollokon , valamint aszimmetrikus hátsó ajtókon keresztül kriptográfiai algoritmusokban ( kulcsgenerálás , digitális aláírás , kulcscsere , pszeudo-véletlenszám-generátorok , titkosítási algoritmusok ). kleptográfiai támadást hajtanak végre [1] . A kifejezést Adam Young és Moti Jung vezette be az Advances in Cryptology – Crypto '96 konferencián 2]
A kleptográfia a tudatalatti csatornák elméletének természetes kiterjesztése [3] [4] [5] , amelyet először Gus Simmons alkalmazott a Sandia National Laboratoryban [1] .
A kleptográfiai támadás aszimmetrikus kriptográfiát használ egy kriptográfiai hátsó ajtó megvalósításához [6] . Például egy ilyen támadás lehet az, hogy ügyesen módosítják a kriptorendszer kulcspárt generáló módját , hogy a titkos kulcs a nyilvános kulcsból származtatható legyen a támadó privát kulcsának felhasználásával. Egy jól megtervezett támadásnál a fertőzött kriptorendszer kimenetei számításilag megkülönböztethetetlenek a nem fertőzöttek kimeneteitől [7] . Ha a fertőzött kriptorendszer egy fekete doboz implementáció , például hardveres biztonsági modul , intelligens kártya vagy TPM , a sikeres támadás észrevétlen marad [8] .
A reverse engineering segítségével észlelheti a támadó által behelyezett hátsó ajtót, és ha szimmetrikus, akár saját maga is használhatja [6] . De definíció szerint a kleptográfiai hátsó ajtó aszimmetrikus, és egy visszafejtő nem fogja tudni használni. Egy kleptográfiai támadáshoz (aszimmetrikus hátsó ajtó) egy privát kulcsra van szükség, amelyet csak a támadó ismer, a hátsó ajtó használatához. Ebben az esetben még akkor is, ha a visszafejtő jól finanszírozott, és teljes mértékben ismeri a hátsó ajtót, hiába bontja ki a nyílt szöveget a támadó privát kulcsa nélkül [6] .
A kleptografikus támadásokat kriptotrójanként lehet felépíteni, amely megfertőz egy kriptorendszert és hátsó ajtót nyit a támadó számára, vagy megvalósíthatja a kriptorendszer gyártója is. Egy támadásnak nem kell felfednie a kriptorendszer teljes kimenetét; egy kifinomultabb támadási technika a nem fertőzött kimenet fogadása és a nem biztonságos kimenet fogadása egy hátsó ajtó jelenlétében [1] .
Kleptografikus támadásokat fejlesztettek ki az RSA kulcsgeneráláshoz , a Diffie-Hellman kulcscseréhez , a digitális aláírási algoritmushoz és más kriptográfiai algoritmusokhoz és protokollokhoz. Az SSL , SSH és IPsec sebezhetőek a kleptográfiai támadásokkal szemben [9] . A támadó minden esetben feltörhet egy adott kriptográfiai algoritmust vagy protokollt. Ellenőrzi az információkat, amelyekbe a hátsó ajtó kódolva van (például nyilvános kulcs, digitális aláírás, kulcscsere üzenetek stb.), majd ezt az aszimmetrikus hátsó ajtót a titkos kulcsával (általában privát kulcsával) használja [1] .
Ari Juels és José Guajardo [10] egy olyan módszert (KEGVER) javasolt, amelyen keresztül egy harmadik fél ellenőrizheti az RSA kulcsok generálását. Úgy tervezték, mint egy olyan elosztott kulcselosztást, amelyben a titkos kulcsot csak maga a fekete doboz ismeri. Ez biztosítja, hogy a kulcsgenerálási folyamat ne módosuljon, és hogy a titkos kulcsot ne lehessen replikálni kleptográfiai támadás segítségével [10] .
A kleptográfiai támadások négy gyakorlati példája (köztük az RSA elleni egyszerűsített SETUP támadás) található a JCrypTool 1.0-ban, amely a CrypTool projekt platformfüggetlen nyílt forráskódú változata [11] . A JCrypTool a kleptográfiai támadások megelőzésének bemutatóját is megvalósítja a KEGVER módszerrel [12] .
A kleptográfiai hátsó ajtót a NIST SP 800-90A kriptográfiailag biztonságos pszeudo-véletlenszám-generátora használja , a Dual_EC_DRBG . A Dual_EC_DRBG elliptikus kriptográfiát használ , és úgy gondolják, hogy az NSA birtokolja a privát kulcsot, amely a Dual_EC_DRBG offset hibáival együtt lehetővé teszi az NSA számára a számítógépek közötti SSL-forgalom visszafejtését, például a Dual_EC_DRBG [13] segítségével .
Vannak általános ajánlások a kleptográfiai támadások elleni védekezésre, például a kriptorendszer szerkezetének átfogó elemzése a kriptográfia és a különböző forrásokból származó kriptográfiai transzformációk összetételének (lépcsőzetes) szakértőinek bevonásával [14] . A kereskedelmi kriptográfiai eszközök – mind hardver, mind szoftver – alkalmazása oda vezet, hogy az átlagfelhasználó vagy akár egy közepes méretű cég sem tudja ellenőrizni az alkalmazott technológiák „tisztaságát”. A programok általában a lehető legnagyobb mértékben próbálnak védeni a szétszerelés ellen , és a hardvermegoldások belső szerkezetének elemzése önmagában nagyon időigényes és költséges, még akkor is, ha a gyártó nem alkalmaz speciális védelmi intézkedéseket [14] .