Кіріспе
Компьютерлік қауіпсіздікте, жанама арналық шабуыл – компьютерлік протокол немесе алгоритмнің ішкі жұмыс істеу қағидалары негізінде алынған қосымша ақпаратқа негізделген кез келген шабуыл. Бұл протокол немесе алгоритмнің өзіндегі (мысалы, криптографиялық алгоритмді криптоанализ кезінде табылган кемшіліктер) немесе іске асыру кезіндегі шағын, бірақ потенциалды түрде зардапты қателер немесе көңілсіздіктер емес. (Криптоанализ жанама арналық шабуылдарды іздеуді де қамтиды.) Уақыт туралы ақпарат, қуатты тұтыну, электромагниттік сәулелену және дыбыс – жанама арналық шабуылдарды оңайлату үшін пайдаланылатын қосымша ақпараттың мысалдары. Кейбір жанама арналық шабуылдар жүйенің ішкі жұмысын техникалық білуді талап етеді, ал дифференциалдық қуатты талдау сияқты басқалары «қара қорап» шабуылдары ретінде тиімді. Microsoft Research және Индиана университетінің зерттеушілерінің мәлімдемесіне сәйкес, Web 2.0 қолданбалары мен қызмет ретінде бағдарламалық жасақтаманың кеңеюі веб-браузер мен сервер арасындағы байланыс шифрланған жағдайда да (мысалы, HTTPS немесе WiFi шифрлау арқылы) веб-сайттарға жасалатын жанама арналық шабуылдар мүмкіндігін айтарлықтай арттырды. Криптожүйені алдау немесе заңды қол жеткізуі бар адамдарды мәжбүрлеу арқылы бұзу әрекеттері әдетте жанама арналық шабуылдарға жатпайды: әлеуметтік инженерия және резеңке шлангпен криптоанализді қараңыз. Жанама арналық шабуылдардың жалпы түрлері:
In computer security, a side channel attack is any attack based on extra information that can be gathered because of the fundamental way a computer protocol or algorithm is implemented, rather than flaws in the design of the protocol or algorithm itself (e. g. flaws found in a cryptanalysis of a cryptographic algorithm) or minor, but potentially devastating, mistakes or oversights in the implementation. (Cryptanalysis also includes searching for side channel attacks.) Timing information, power consumption, electromagnetic leaks, and sound are examples of extra information which could be exploited to facilitate side channel attacks. Some side channel attacks require technical knowledge of the internal operation of the system, although others such as differential power analysis are effective as black box attacks. The rise of Web 2.0 applications and software as a service has also significantly raised the possibility of side channel attacks on the web, even when transmissions between a web browser and server are encrypted (e. g. through HTTPS or WiFi encryption), according to researchers from Microsoft Research and Indiana University. Attempts to break a cryptosystem by deceiving or coercing people with legitimate access are not typically considered side channel attacks: see social engineering and rubber hose cryptanalysis. General classes of side channel attack include:
Cache attack — attacks based on attacker's ability to monitor cache accesses made by the victim in a shared physical system as in virtualized environment or a type of cloud service. Timing attack — attacks based on measuring how much time various computations (such as, say, comparing an attacker's given password with the victim's unknown one) take to perform. Power monitoring attack — attacks that make use of varying power consumption by the hardware during computation. Electromagnetic attack — attacks based on leaked electromagnetic radiation, which can directly provide plaintexts and other information. Such measurements can be used to infer cryptographic keys using techniques equivalent to those in power analysis or can be used in non cryptographic attacks, e. g. TEMPEST (aka van Eck phreaking or radiation monitoring) attacks. Acoustic cryptanalysis — attacks that exploit sound produced during a computation (rather like power analysis). Differential fault analysis — in which secrets are discovered by introducing faults in a computation. Data remanence — in which sensitive data are read after supposedly having been deleted. (e. g. Cold boot attack)
Software initiated fault attacks — Currently a rare class of side channels, Row hammer is an example in which off limits memory can be changed by accessing adjacent memory too often (causing state retention loss). Allowlist — attacks based on the fact that the allowlisting devices will behave differently when communicating with allowlisted (sending back the responses) and non allowlisted (not responding to the devices at all) devices. Allowlist based side channel may be used to track Bluetooth MAC addresses. Optical in which secrets and sensitive data can be read by visual recording using a high resolution camera, or other devices that have such capabilities (see examples below). In all cases, the underlying principle is that physical effects caused by the operation of a cryptosystem (on the side) can provide useful extra information about secrets in the system, for example, the cryptographic key, partial state information, full or partial plaintexts and so forth. The term cryptophthora (secret degradation) is sometimes used to express the degradation of secret key material resulting from side channel leakage.
Кэш шабуылдары – виртуалды ортада немесе бұлтты қызметтер сияқты жалған жүйеде кэш қол жеткізілімдерін бақылау мүмкіндігіне негізделген шабуылдар. Уақытша шабуыл – әртүрлі есептеулерді (мысалы, шабуылшы берген парольді құрбанның белгісіз паролімен салыстыру) орындауға кеткен уақытты өлшеуге негізделген шабуылдар. Қуатты бақылау шабуылдары – есептеу кезінде аппараттың қуатты тұтынуының өзгеруін пайдаланатын шабуылдар. Электромагниттік шабуылдар – ашық мәтін және басқа да ақпаратты тікелей ұсына алатын электромагниттік сәулеленудің ағуына негізделген шабуылдар. Мұндай өлшемдер қуатты талдау сияқты әдістерді қолдана отырып криптографиялық кілттерді анықтау үшін немесе криптографиялық емес шабуылдарда, мысалы, TEMPEST (ван Эк фрекингі немесе сәулеленуді бақылау) шабуылдарында қолданылуы мүмкін. Акустикалық криптоанализ – есептеу кезінде шығарылған дыбысты пайдаланатын шабуылдар (қуатты талдау сияқты). Дифференциалдық қателіктерді талдау – есептеуде қателерді енгізу арқылы құпияларды анықтау. Деректердің қалдығы – құпия деректер өшірілгеннен кейін оқылуы. (мысалы, суық жүктеу шабуылдары). Бағдарламалық жасақтама басталған қателік шабуылдары – қазіргі кезде сирек кездесетін жанама арналар класы, Row Hammer – шектеулі жадқа жақын жадқа жиі қол жеткізу арқылы өзгертілуі мүмкін мысал (жағдайды сақтаудың жоғалуына әкеледі). Allowlist – рұқсат етілген құрылғылар рұқсат етілген (жауаптарды қайтару) және рұқсат етілмеген (құрылғыларға жауап бермеу) құрылғылармен байланыс жасағанда әртүрлі әрекет ететіндігіне негізделген шабуылдар. Bluetooth MAC мекенжайларын бақылау үшін allowlist негізіндегі жанама арнаны пайдалануға болады. Оптикалық – жоғары ажыратымды камера немесе осындай мүмкіндіктері бар басқа құрылғыларды пайдалану арқылы құпия және сезімтал деректерді визуалды жазу арқылы оқу. Барлық жағдайларда негізгі принцип – криптожүйенің жұмыс істеуінен туындайтын физикалық әсерлер жүйедегі құпиялар туралы пайдалы қосымша ақпаратты (мысалы, криптографиялық кілт, жартылай күй туралы ақпарат, толық немесе жартылай ашық мәтін және т.б.) ұсынуы мүмкін. Жанама арнаның ағып кетуінен туындайтын құпия кілт материалының нашарлауын білдіру үшін кейде криптофтора (құпияның нашарлауы) термині қолданылады.
In computer security, a side channel attack is any attack based on extra information that can be gathered because of the fundamental way a computer protocol or algorithm is implemented, rather than flaws in the design of the protocol or algorithm itself (e. g. flaws found in a cryptanalysis of a cryptographic algorithm) or minor, but potentially devastating, mistakes or oversights in the implementation. (Cryptanalysis also includes searching for side channel attacks.) Timing information, power consumption, electromagnetic leaks, and sound are examples of extra information which could be exploited to facilitate side channel attacks. Some side channel attacks require technical knowledge of the internal operation of the system, although others such as differential power analysis are effective as black box attacks. The rise of Web 2.0 applications and software as a service has also significantly raised the possibility of side channel attacks on the web, even when transmissions between a web browser and server are encrypted (e. g. through HTTPS or WiFi encryption), according to researchers from Microsoft Research and Indiana University. Attempts to break a cryptosystem by deceiving or coercing people with legitimate access are not typically considered side channel attacks: see social engineering and rubber hose cryptanalysis. General classes of side channel attack include:
Cache attack — attacks based on attacker's ability to monitor cache accesses made by the victim in a shared physical system as in virtualized environment or a type of cloud service. Timing attack — attacks based on measuring how much time various computations (such as, say, comparing an attacker's given password with the victim's unknown one) take to perform. Power monitoring attack — attacks that make use of varying power consumption by the hardware during computation. Electromagnetic attack — attacks based on leaked electromagnetic radiation, which can directly provide plaintexts and other information. Such measurements can be used to infer cryptographic keys using techniques equivalent to those in power analysis or can be used in non cryptographic attacks, e. g. TEMPEST (aka van Eck phreaking or radiation monitoring) attacks. Acoustic cryptanalysis — attacks that exploit sound produced during a computation (rather like power analysis). Differential fault analysis — in which secrets are discovered by introducing faults in a computation. Data remanence — in which sensitive data are read after supposedly having been deleted. (e. g. Cold boot attack)
Software initiated fault attacks — Currently a rare class of side channels, Row hammer is an example in which off limits memory can be changed by accessing adjacent memory too often (causing state retention loss). Allowlist — attacks based on the fact that the allowlisting devices will behave differently when communicating with allowlisted (sending back the responses) and non allowlisted (not responding to the devices at all) devices. Allowlist based side channel may be used to track Bluetooth MAC addresses. Optical in which secrets and sensitive data can be read by visual recording using a high resolution camera, or other devices that have such capabilities (see examples below). In all cases, the underlying principle is that physical effects caused by the operation of a cryptosystem (on the side) can provide useful extra information about secrets in the system, for example, the cryptographic key, partial state information, full or partial plaintexts and so forth. The term cryptophthora (secret degradation) is sometimes used to express the degradation of secret key material resulting from side channel leakage.
Мысалдар
Кэш жағынан жасалатын шабуылдар AES T кестесіне кіру, модульдік дәрежелеу, көбейту немесе жадқа қол жеткізу сияқты қауіпсіздікке қатысты маңызды операцияларды бақылау арқылы жұмыс істейді. Шабуылшы құрбанның жасаған (немесе жасамаған) қол жеткізулеріне байланысты құпия кілтті, шифрлау кілтін анықтай алады. Бұл әдіс, басқа жақтан жасалатын шабуылдардан өзгеше, криптографиялық операцияда ақау тудырмайды және құрбанға көрінбейді. 2017 жылы екі CPU осалдығы (Meltdown және Spectre деп аталды) ашылды, олар кэш негізіндегі қосалқы арнаны пайдаланып, шабуылшыға басқа процестердің және операциялық жүйенің жадындағы мазмұнды ағызуға мүмкіндік береді. Уақыттық шабуыл криптожүйені немесе алгоритмді іске асыратын аппараттық құралдағы CPU немесе жадқа ағын-төгін қозғалысын бақылайды. Криптографиялық операцияны орындауға кеткен уақыттың өзгеруін бақылау арқылы құпия кілттің толық көшірмесін анықтау мүмкін. Мұндай шабуылдар уақыт өлшемдерінің статистикалық талдауын қамтиды және желілерде көрсетілген. Қуатты талдау шабуылдары CPU немесе криптографиялық тізбек сияқты аппараттық құрылғының қуат тұтынуын бақылау арқылы одан да егжей-тегжейлі ақпарат бере алады. Бұл шабуылдар қарапайым қуатты талдау (SPA) және дифференциалдық қуатты талдау (DPA) болып жіктеледі. Мысалы, Collide+Power шабуылы дерлік барлық процессорларға әсер етеді. Басқа мысалдарда машиналық оқыту тәсілдері қолданылады. Ток күшінің өзгеруі радио толқындарын тудырады, бұл электромагниттік (ЭМ) сәулеленуді өлшеуді талдайтын шабуылдарға мүмкіндік береді. Бұл шабуылдар әдетте қуатты талдау шабуылдары сияқты статистикалық әдістерді қамтиды. Бірнеше құрылғылардың қуаты мен ЭМ ақпаратын пайдаланатын терең оқытуға негізделген қосалқы арна шабуылы, бір іздеу арқылы басқа, бірақ бірдей құрылғының құпия кілтін бұзу мүмкіндігін көрсетті. Қазіргі заманғы қосалқы арна шабуылдарының тарихи аналогтары белгілі. Жақында құпиясы ашылған NSA құжаты 1943 жылға дейін Bell Telephone инженерінің белгілі бір шифрлау телетипінің шифрланған шығысына байланысты осциллографта байқалатын шыңдарды анықтағанын көрсетеді. MI5 бұрынғы офицері Питер Райттың сөзіне сүйенсек, британдық қауіпсіздік қызметі 1960 жылдары француз шифрлау жабдығынан шығарылатын сәулеленуді талдаған. 1980 жылдары кеңес тыңшылары IBM Selectric теріскектердің ішіне микрофондар орнатқан деген күдік болды, бұл құрылғылардың жазу шарларының айналуы және қағазға соққы беруі кезінде пайда болатын электр шуын бақылауға мүмкіндік берді. Осы сигналдардың сипаттамалары қандай перне басылғанын анықтауға көмектеседі. Құрылғылардың қуат тұтынуы жылуды тудырады, ол салқындату әсерімен теңестіріледі. Температураның өзгеруі механикалық кернеуді тудырады. Бұл кернеу жұмыс істеп тұрған CPU-дан төмен деңгейдегі дыбыстық сәулеленуді тудыруы мүмкін (кейбір жағдайларда шамамен 10 кГц). Shamir және басқалардың соңғы зерттеулері криптожүйелер мен алгоритмдердің жұмыс істеуі туралы ақпаратты осы жолмен алуға болатынын көрсетті. Бұл акустикалық криптоанализ шабуылы. Егер CPU чипінің бетіне немесе кейбір жағдайларда CPU корпусына қол жеткізуге болады, инфрақызыл суреттер CPU-да орындалатын код туралы ақпарат бере алады, бұл термиялық бейнелеу шабуылы деп аталады. Оптикалық қосалқы арна шабуылдарының мысалдарына қатты дискідегі белсенділік индикаторынан ақпаратты алу немесе транзисторлар күйін өзгерткенде шығарылатын аз санды фотондарды оқу жатады. Бөлуге негізделген қосалқы арналар да бар және олар желілік өткізу қабілеті сияқты ресурсты бөлуден (пайдаланудан емес) ағып шығатын ақпаратты білдіреді, оны бірнеше клиенттер бір уақытта сұрайды.
Қарсы шаралар
Бүйірлік арналар шабуылдары бүйірлік арна арқылы жіберілген (ашыққа шығарылған) ақпарат пен құпия деректер арасындағы байланысқа негізделгендіктен, қарсы шаралар екі негізгі санатқа бөлінеді: 1) осындай ақпараттың таралуын жою немесе азайту және 2) ашыққа шығарылған ақпарат пен құпия деректер арасындағы байланысты жою, яғни ашыққа шығарылған ақпаратты құпия деректермен байланысты емес немесе керісінше, байланыссыз ету, әдетте шифрмәтінді кездейсоқ түрде өзгерту арқылы, шифрлау операциясы (мысалы, шифрлауды жою) аяқталғаннан кейін деректерді бастапқы күйіне келтіруге болатындай етіп түрлендіру. Бірінші санатқа сәйкес, электромагниттік сәулеленуді азайтатын, TEMPEST шабуылдарына қарсы тұруды арттыратын арнайы қорғаныспен жабдықталған дисплейлер қазір коммерциялық қолжетімді. Электр желісін тұрақтандыру және сүзу энергияны бақылау шабуылдарын болдырмауға көмектеседі, бірақ мұндай шараларды сақтықпен қолдану керек, өйткені тіпті өте шағын байланыстар да сақталып, қауіпсіздікке қауіп төндіруі мүмкін. Физикалық жабындар микрофондарды жасырын орнату қаупін азайта алады (дыбыстық шабуылдарға қарсы) және басқа микробақылау құрылғыларын (процессордың қуат тұтынуына немесе жылулық бейнелеу шабуылдарына қарсы) орнатуды қиындатады. Тағы бір қарсы шара (әлі де бірінші санатта) – шығарылатын арнаны шумен кедергілеу. Мысалы, уақытты анықтау шабуылдарын болдырмау үшін кездейсоқ кешігу қосылуы мүмкін, бірақ қарсыластар бұл кешігуді бірнеше өлшемдерді орташалау арқылы немесе талдауда көбірек өлшемдерді пайдалану арқылы өтеуі мүмкін. Бүйірлік арнадағы шу деңгейі жоғарылағанда, қарсылас көбірек өлшемдерді жинау керек. Бірінші санат бойынша тағы бір қарсы шара – негізгі аппараттық құрылғының жобалау кезеңдерінде анықтауға болатын, бүйірлік арналар арқылы шабуылдардың белгілі бір түрлерін анықтау үшін қауіпсіздік талдау бағдарламалық жасақтамасын пайдалану. Уақытты анықтау шабуылдары мен кэш шабуылдарын коммерциялық қауіпсіздік талдау бағдарламалық жасақтамасы арқылы анықтауға болады, бұл шабуылға осалдықты анықтауға, сондай-ақ осы осалдықты жою үшін жасалған архитектуралық өзгерістердің тиімділігін бағалауға мүмкіндік береді. Бұл қарсы шараны қолданудың ең толық жолы – аппараттық құрылғылар үшін қауіпсіздікке бағытталған әзірлеу циклын құру, оған аппараттық құрылғыны әзірлеу циклының тиісті кезеңдерінде барлық қолжетімді қауіпсіздік талдау платформаларын пайдалану кіреді. Есептеу уақыты дискретті сағат циклдарына бөлінген нысаналарға қарсы шабуылдарда тиімді қарсы шара – бағдарламалық жасақтаманы изохронды ету, яғни құпия мәндерге тәуелсіз, дәл тұрақты уақыт ішінде жұмыс істеуін қамтамасыз ету. Бұл уақытты анықтау шабуылдарын мүмкін емес етеді. Мұндай қарсы шараларды іс жүзінде жүзеге асыру қиын болуы мүмкін, өйткені кейбір процессорларда тіпті жекелеген нұсқаулардың орындалу уақыты да өзгеріп отыруы мүмкін. Қарапайым қуаттық шабуылдарға қарсы, бірақ дифференциалдық қуатты талдау шабуылдарына қарсы жартылай қарсы шара – бағдарламаны «программалық санау моделінде» «PC қауіпсіз» етіп жобалау. PC қауіпсіз бағдарламада орындалу жолы құпия мәндерге тәуелді емес. Басқаша айтқанда, барлық шартты салалар тек ашық ақпаратқа ғана байланысты. (Бұл изохронды кодтан гөрі шектеулі, бірақ салақсыз кодтан гөрі азырақ шектеулі шарт.) Көптеген процессорлардағы NOP-тан көп қуатты қажет ететін көбейту операцияларын пайдалану, тұрақты орындалу жолын пайдалану мұндай операцияға тәуелді қуат айырмашылықтарын (бір салақты таңдаудан туындаған қуат айырмашылықтары) құпия ақпаратты ақтаруға жол бермейді. Кодтың изохронды емес болуының тағы бір себебі – қазіргі заманғы процессорларда жад кэшінің болуы: сирек қолданылатын ақпаратқа қол жеткізу үлкен уақытты қажет етеді, жад блоктарының қолданылу жиілігі туралы ақпаратты ашады. Кэш шабуылдарына қарсы тұру үшін жасалған криптографиялық код жадыны тек болжамды түрде пайдалануға тырысады (мысалы, тек кіріс, шығыс және бағдарламалық деректерге қол жеткізу және оны белгіленген үлгіге сәйкес жасау). Мысалы, деректерге тәуелді кесте іздеулерінен аулақ болу керек, өйткені кэш іздеу кестесінің қай бөлігіне қол жеткізілгенін көрсете алады. Басқа жартылай қарсы шаралар деректерге тәуелді қуат айырмашылықтарынан ағып жатқан ақпарат мөлшерін азайтуға тырысады. Кейбір операциялар құпия мәндегі 1 биттерінің санына байланысты қуатты пайдаланады. Тұрақты салмақты кодты пайдалану (мысалы, Fredkin қақпаларын немесе екі рельсті кодтауды пайдалану) құпия мәннің Хэмминг салмағы туралы ақпараттың ағып кетуін азайта алады, бірақ тепе-теңдік толық болмаса, пайдалануға болатын байланыстар сақталуы мүмкін. Бұл «тепе-теңдік дизайнын» бағдарламалық жасақтама арқылы деректерді де, оның толықтыруын да бірге өңдеу арқылы шамамен жүзеге асыруға болады. Екінші санаттың (декорреляция) әдеттегі мысалы – «соқырлау» деп аталатын әдіс. RSA шифрлауды жою кезінде құпия көрсеткіші және сәйкес шифрлау көрсеткіші және модуль болған жағдайда, техника мынадай түрде қолданылады (әрі қарайғы есептеуді жеңілдету үшін m модулі бойынша модулдік азайту формулалардан алынып тасталды): шифрмәтінге қолданылғаннан бұрын, яғни шифрмәтіні үшін нәтижені есептеу алдында, жүйе кездейсоқ санды таңдайды және оны ашық көрсеткішпен шифрлейді, нәтижесінде шығады. Содан кейін, шифрлау шамасында жүзеге асырылады, нәтижесінде шығады. Шифрлау жүйесі санын таңдағандықтан, ол модулі бойынша кері шамасын есептеуі мүмкін, нәтиженің факторын жою үшін және шифрлаудың нақты нәтижесін алу үшін. Шабуылдаушының бақылауындағы деректермен операциялардан бүйірлік арна ақпаратын жинауды қажет ететін шабуылдар үшін соқырлау тиімді қарсы шара болып табылады, өйткені нақты операция деректердің кездейсоқ нұсқасында орындалады, оған шабуылдаушының бақылауы немесе тіпті білімі жоқ. Көбірек тараған қарсы шара (бүкіл бүйірлік арналық шабуылдарға қарсы тиімді) – маскилеу қарсы шарасы. Маскилеу принципі – кез келген сезімтал мәнді тікелей өңдемеу, бірақ оның бөлісін өңдеу: (XOR операциясы, мұндағы – XOR операциясы). Шабуылдаушы мағыналы ақпарат алу үшін бөлістердің барлық мәнін қалпына келтіруі керек. Жақында, ақ және қара қорап модельдеуі EM және қуаттық бүйірлік арналық шабуылдарына қарсы төмен шығынды жалпы схемалық деңгейдегі қарсы шараны әзірлеу үшін пайдаланылды. IC-дегі жоғары деңгейлі металл қабаттарының тиімді антенналар ретінде әрекет ету әсерін азайту үшін идеясы криптографиялық ядроны төменгі деңгейлі металл қабаттарында орналасқан қолтаңбаны жоятын схемамен біріктіру болып табылады, бұл қуаттық және EM бүйірлік арналық шабуылдарға қарсы тұруға көмектеседі.
obtain Since the decrypting system chose , it can compute its inverse modulo to cancel out the factor in the result and obtain , the actual result of the decryption. For attacks that require collecting side channel information from operations with data controlled by the attacker, blinding is an effective countermeasure, since the actual operation is executed on a randomized version of the data, over which the attacker has no control or even knowledge. A more general countermeasure (in that it is effective against all side channel attacks) is the masking countermeasure. The principle of masking is to avoid manipulating any sensitive value directly, but rather manipulate a sharing of it: a set of variables (called "shares") such that (where is the XOR operation). An attacker must recover all the values of the shares to get any meaningful information. Recently, white box modeling was utilized to develop a low overhead generic circuit level countermeasure against both EM as well as power side channel attacks. To minimize the effects of the higher level metal layers in an IC acting as more efficient antennas, the idea is to embed the crypto core with a signature suppression circuit, routed locally within the lower level metal layers, leading towards both power and EM side channel attack immunity.