ISSUE ÂÇËÎÌ 1.5 ÊÃ. ÌÎÇÃÎÂ, ×ÒÎÁÛ ÁÛÑÒÐÎ ÄÓÌÀÒÜ ÌÎÙÍÀß ÂÛÑÎÊÎ×ÀÑÒÎÒÍÀß ÀÍÒÅÍÍÀ, ×ÒÎÁÛ ÄÀËÅÊÎ ÁÈÒÜ ÓÄÎÁÍÛÉ ÐÞÊÇÀÊ, ×ÒÎÁÛ ÒÀÑÊÀÒÜ ÍÎÓÒ Íà íàøåì äèñêå òû íàéäåøü ïîëíûå âåðñèè ïðîãðàìì, îïèñàííûõ â ýòîé ñòàòüå, à òàêæå ïîëíóþ ïîäáîðêó äîêóìåíòàöèè î áàãàõ bluetooth. ÎÏÒÈ×ÅÑÊÈÉ ÏÐÈÖÅË, ×ÒÎÁÛ ËÓ×ØÅ ÂÈÄÅÒÜ ÆÅÐÒÂÓ 068 XÀÊÅÐ 01 /85/ 06
TEXT ÀËÅÊÑÀÍÄÐ ËÞÁÈÌΠAKA SASHIKS / REAL_SSHX@MAIL.RU / SUPERSNIPER ÐÀÇÁÈÐÀÅÌÑß Â ÊÐÈÒÈ×ÅÑÊÎÉ ÓßÇÂÈÌÎÑÒÈ ÏÐÎÒÎÊÎËÀ BT ß ÍÅ ÑÒÀÍÓ ÂÅËÈ×ÀÉØÈÌ ÌÛÑËÈÒÅËÅÌ ÑÎÂÐÅÌÅÍÍÎÑÒÈ, ÅÑËÈ ÑÊÀÆÓ “ ×ÒÎ BT ÑÅÉ×ÀÑ ÏÐÈÎÁÐÅË ÑÓÌÀÑØÅÄØÓÞ ÏÎÏÓËßÐÍÎÑÒÜ: ÁËÞÒÓÑ-ÌÎÄÓ- ËßÌÈ ÎÁÎÐÓÄÎÂÀÍÎ ÁÓÊÂÀËÜÍÎ ÂÑÅ: ÎÒ ÒÅËÅÔÎÍÎÂ È ÄÎ ÏÐÈÍÒÅÐÎÂ Ñ ÍÎÓÒÁÓÊÀÌÈ; ÏÎ ÓËÈÖÀÌ ÃÎÍßÞÒ ÒÎËÏÛ ÐÀÄÎÑÒÍÛÕ ÁËÞÄÆÅÊÅÐÎÂ; ÊÓ- ×À ËÞÄÅÉ Â ÌÃÍÎÂÅÍÈÅ ÎÊÀ ÎÁÌÅÍÈÂÀÞÒÑß ÊÎÍÒÀÊÒÀÌÈ È ÇÀÏÈÑßÌÈ ÑÎ ÑÂÎÈÕ ÒÅËÅÔÎÍÎÂ. ÊÀÇÀËÎÑÜ ÁÛ, ÂÑÅ ÄÎÂÎËÜÍÛ È ÍÈÊÒÎ ÍÅ ÆÀËÓÅÒ- Ñß. ÎÄÍÀÊÎ Ñ ÊÀÆÄÛÌ ÄÍÅÌ ÍÀÊÀÏËÈÂÀÅÒÑß ÂÑÅ ÁÎËÜØÅ È ÁÎËÜØÅ ÂÎÏ- ÐÎÑΠÎÒÍÎÑÈÒÅËÜÍÎ ÁÅÇÎÏÀÑÍÎÑÒÈ ÝÒÎÃÎ ÏÐÎÒÎÊÎËÀ. ÌÛ ÓÆÅ ÏÈÑÀ- ËÈ ÎÁ ÎÑÍÎÂÍÛÕ ÁÀÃÀÕ BLUETOOTH, À ÑÅÃÎÄÍß ÐÀÑÑÊÀÆÅÌ Î ÍÎÂÎÉ ÌÅ- ÒÎÄÈÊÅ ÂÇËÎÌÀ, ÊÎÒÎÐÓÞ ÐÀÇÐÀÁÎÒÀËÈ ÄÂÀ ÂÅÑÅËÛÕ ÈÇÐÀÈËÜÒßÍÈÍÀ ” ÏÎÂÅÑÒÜ Î ÃÎËÓÁÛÕ ÇÓÁÀÕ Âîçìîæíî, â ýòîì ìåñòå ñòàòüè ñòîèëî âûðàçèòü ñâîå íåãîäîâàíèå: äûðêà â òàêîì ïîïóëÿðíîì ïðîòîêîëå! Îáîëòóñû è íåãîäÿè ýòè ñêàíäèíàâû, ðàçðàáîò÷èêè bluetooth! Íî, ÿ äóìàþ, áóäåò ëó÷øå îòïðàâèòü âñþ êðèòèêó è íåäîâîëüíûå âîçãëàñû îòíîñèòåëüíî BT-áàãè àêêóðàòíî â òîïêó è, ñîáñòâåííî, ïðèñòóïèòü ê äåëó. À äåëî â òîì, ÷òî â ìàå ýòîãî ãîäà Àâèøà Âóë è ßíèâ Øàêåä (Avishai Wool, Yaniv Shaked) — ñîòðóäíèêè Òåëü-Àâèâñêîãî óíèâåðñèòåòà îïóáëèêîâàëè â Èíòåðíåòå ïîäðîáíîå îïèñàíèå àòàêè íà áëþòóñ-óñòðîéñòâà. Ìàòåðèàë íàäåëàë äîâîëüíî ìíîãî øóìà (òû, íàâåðíîå, ñëûøàë î íåì, äà?), è ýòî íå çðÿ. Ñóòü íàïàäåíèÿ çàêëþ÷àåòñÿ â òîì, ÷òî õàêåð ìîæåò ïîõèòèòü PIN-êîä âî âðåìÿ ïðîöåññà ïàðèíãà (pairing) äâóõ äåâàéñîâ. Ýòà ïðîöåäóðà âçëîìà äîâîëüíî ñëîæíàÿ è âêëþ÷àåò â ñåáÿ íåñêîëüêî ýòàïîâ, ñðåäè êîòîðûõ ñàìûì âàæíûìè ÿâëÿåòñÿ ñáîð ïàêåòîâ äàííûõ è èõ àíàëèç ñ ïîñëåäóþùåé ðàñøèôðîâêîé. Ñêàæó òåáå ñðàçó, ÷òî ìàòåðèàë ñâîåîáðàçíûé. Äëÿ òîãî ÷òîáû åãî ïðàâèëüíî ïîíÿòü, íóæíî íåìíîãî ïîðàçìûñëèòü è ïîäêëþ÷èòü ôàíòàçèþ. Ñàì ïðîöåññ àòàêè òåñíî ñâÿçàí ñ ìåõàíèçìîì àóòåíòèôèêàöèè è ñîçäàíèåì êëþ÷à-øèôðà ìåæäó äâóìÿ óñòðîéñòâàìè, ïîýòîìó ïåðåä òåì êàê ìû ïåðåéäåì íåïîñðåäñòâåííî êî âçëîìó PIN'à, äàâàé ïîãëÿäèì, êàêóþ ïîñëåäîâàòåëüíîñòü äåéñòâèé ñîâåðøàþò óñòðîéñòâà, æåëàþùèå ñîåäèíèòüñÿ. ÍÀ×ÀËÎ ÍÀ×ÀË — PAIRING Ïàðèíã — ýòî ïðîöåññ, â êîòîðîì äâà (èëè áîëåå) äåâàéñà ñâÿçûâàþòñÿ äëÿ ñîçäàíèÿ îáùåé äëÿ âñåõ óñòðîéñòâ ñåêðåòíîé âåëè÷èíû K init , êîòîðàÿ ïîòîì èñïîëüçóåòñÿ â äàëüíåéøåì îáùåíèè ýòèõ bluetooth-óñòðîéñòâ. Ñðàçó îãîâîðþñü, ÷òî ïî õîäó òåêñòà ÿ áóäó èíîãäà íàçûâàòü ïàðèíã «ñîïðÿæåíèåì» — ýòî ñèíîíèìû, ÷òîáû òû çíàë.  íåêîòîðûõ îôèöèàëüíûõ äîêàõ ïî BT ìîæíî äàæå âñòðåòèòü ñìåøíîé ïåðåâîä («ïîäãîíêà ïàðû»), ïîýòîìó, ÿ äóìàþ, ÷òî íèêòî íå óëè÷èò íàñ â áåçãðàìîòíîñòè. Ïðîöåññ óñòàíîâêè ñâÿçè íàçûâàåòñÿ èíèöèàëèçàöèåé, è â bluetooth åå ïðèíÿòî äåëèòü íà òðè øàãà: 1 Ñîçäàíèå êëþ÷à èíèöèàëèçàöèè (òîò ñàìûé K init ) 2 Ñîçäàíèå êëþ÷à ñâÿçè (â îôèöèàëüíîé äîêóìåíòàöèè íàçûâàåòñÿ link key è îáîçíà÷àåòñÿ, êàê K ab ) 3 Àóòåíòèôèêàöèÿ Ïåðåä òåì êàê óñòðîéñòâà íà÷íóò «ñïàðèâàòüñÿ» (ëþäè, î ÷åì ÿ òóò ïèøó? :)), íà îáåèõ ñòîðîíàõ íóæíî ââåñòè ñïåöèàëüíûé PIN-êîä. Îáû÷íî, åñëè äâà ÷åëîâåêà õîòÿò ñâÿçàòü, äîïóñòèì, ñâîè òåëåôîíû, îíè çàðàíåå äîãîâàðèâàþòñÿ î òîì, êàêîé áóäåò PIN.  áóäóùåì ñîåäèíÿþùèåñÿ óñòðîéñòâà ìû áóäåì íàçûâàòü âåñüìà êðàñíîðå÷èâî — A è B; êðîìå òîãî, îäíî óñòðîéñòâî ïðè ïàðèíãå ñòàíîâèòñÿ ãëàâíûì (Master), à äðóãîå — âåäîìûì ÑÓÒÜ ÍÀÏÀÄÅÍÈß ÇÀÊËÞ×ÀÅÒÑß Â ÒÎÌ, ×ÒÎ ÕÀÊÅÐ ÌÎÆÅÒ ÏÎÕÈÒÈÒÜ PIN-ÊÎÄ ÂÎ ÂÐÅÌß ÏÐÎÖÅÑÑÀ ÏÀÐÈÍÃÀ (PAIRING) ÄÂÓÕ ÄÅÂÀÉÑÎÂ. XÀÊÅÐ 01 /85/ 06 069