Недавно цурење „Златног кључа“ из Мицрософта, заједно са присуством режима за отклањање грешака, омогућило је да се онемогући безбедно покретање на Виндовс уређајима. Прочитајте на!
Оперативни системи засновани на Виндовс-у више нису подразумевани и најбољи избор на мобилној сцени. Природа Андроида отвореног кода пронашла је многе обожаватеље код ОЕМ-а, и као резултат тога, све мање телефона ових дана користи Виндовс.
Али ако сте међу онима који и даље користе Виндовс уређај у свом свакодневном животу, има мало вести за вас. Добро или лоше, то би зависило од вашег става и тумачења случајева употребе ове вести.
Како је известио Арс Тецхница и ТхеРегистер са вестима које потичу од а веб-сајт који ће вам вероватно задати главобољу (не шалим се), неколико програмера (@невер_релеасед и @ТхеВацк0лиан) су открили да је бацкдоор који је Мицрософт припремио за отклањање грешака отворио могућности онемогућавања безбедног покретања на Виндовс уређајима.
Сецуре Боот и шта је то?
Када први пут покренете Виндовс уређај, процедура покретања се одвија овим општим редоследом: УЕФИ (Јединствени прошириви интерфејс фирмвера, који је замена за БИОС) -> Менаџер покретања -> Учитавач покретања -> Виндовс. УЕФИ је место где је присутна функција безбедног покретања. Као што назив говори са
Безбедно покретање, има за циљ да унапреди безбедност захтевањем дигиталних потписа на следећим корацима. У суштини, ако покретач није потписан кључевима са којима УЕФИ очекује да буде, процедура покретања вашег уређаја неће бити завршена.Сецуре Боот је опциона функција, али Мицрософт је омогућио да буде обавезно добијање Виндовс сертификата од Виндовс 8 и надаље. Образложење је било да би безбедно покретање отежало ауторима малвера да убаце код у процедуру покретања. Међутим, нуспојава безбедног покретања била је то што је двоструко покретање на Виндовс машинама учинило помало компликованим, као или други ОС и сви његови предуслови такође морају бити дигитално потписани, или би требало да буде безбедно покретање онеспособљени. Постоји много других питања у вези са овим, а искусни дуал-боотери би знали о њима више него што бих могао да објасним у једном параграфу.
Сада, постоје неки уређаји на којима безбедно покретање не може да се онемогући од стране корисника чак и када би то желео. Ово је област у којој се наша тематика драстично сужава са свих Виндовс уређаја (укључујући десктоп рачунара) на одређене Виндовс уређаје као што су Виндовс Пхоне уређаји, Виндовс РТ уређаји, неки Сурфаце уређаји, па чак ХолоЛенс. Ови уређаји крајњег корисника имају Сигурно покретање закључано, што значи да ан крајњи корисник не може да мења или онемогући аспекте који се односе на безбедно покретање, и проширењем, не могу да додирују ОС на начине које Мицрософт није овластио за крајњег корисника.
Али за потребе текућег званичног развоја, Сецуре Боот мора мало да се олабави. На уређајима на којима је безбедно покретање закључано, постоје Смернице безбедног покретања које могу помоћи у овлашћеном развоју без потребе за онемогућавањем безбедног покретања. Као што истраживачи помињу, ову датотеку са политиком безбедног покретања учитава Менаџер покретања у раној фази процеса покретања за Виндовс. Датотеке смерница такође могу да садрже правила регистратора која, између осталог, имају могућност да садрже конфигурације за саму политику. Опет, датотека смерница мора бити потписана и постоје друге одредбе које постоје како би се осигурало да само Мицрософт може да обезбеди ове промене.
Елемент потписивања се такође ослања на оно што се зове ДевицеИД, који се користи приликом пријаве. Пустићу пост на блогу да објасни овде, пошто има неколико делова који ми нису тако јасни:
Такође, постоји таква ствар која се зове ДевицеИД. То је првих 64 бита засољеног СХА-256 хеша, неког УЕФИ ПРНГ излаза. Користи се приликом примене смерница на Виндовс Пхоне-у и на Виндовс РТ-у (мобилестартуп га поставља на Пхоне, а СецуреБоотДебуг.ефи када се покреће први пут на РТ-у). На телефону, смерница мора да се налази на одређеном месту на ЕФИЕСП партицији са именом датотеке укључујући хексадецимални облик ДевицеИД-а. (Код Редстонеа, ово је промењено у УнлоцкИД, који поставља боотмгр, и представља само сирови УЕФИ ПРНГ излаз).
У суштини, боотмгр проверава смернице када се учита, ако садржи ДевицеИД, који се не поклапа са ДевицеИД-ом уређаја на којем боотмгр ради, смерница се неће успети учитати. Свака смерница која дозвољава омогућавање потписивања теста (МС позива ове смернице за откључавање малопродајног уређаја/РДУ и инсталирати их је откључавање уређаја), требало би да буде закључан на ДевицеИД (УнлоцкИД на Редстонеу и горе). Заиста, имам неколико смерница (потписаних од стране Виндовс Пхоне производног сертификата) попут ове, где су једине разлике укључени ДевицеИД и потпис. Ако није инсталирана важећа политика, боотмгр се враћа на коришћење подразумеване политике која се налази у његовим ресурсима. Ова политика је она која блокира омогућавање потписивања тестова итд. коришћењем БЦД правила.
Ово је део где ствари постају занимљиве. Током развоја оперативног система Виндовс 10 в1607, Мицрософт је креирао нови тип Политике безбедног покретања (у даљем тексту СБП ради краткоће) за интерно тестирање и отклањање грешака. Смерница је по природи „допунска“ без присутног ДевицеИД-а и доводи до тога да се њена подешавања споје са постојећом политиком покретања. Менаџер покретања учитава старије типове СБП-а, затим проверава његово потписивање и аутентичност и затим учитава ове додатне смернице за покретање. Овде је проблем у томе што нема даље провере саме допунске политике. Такође, менаџери покретања раније од Виндовс 10 в1511 не знају за постојање допунске природе ових смерница, па стога, реагују као да су учитали савршено валидну и потписану политику. Опет, ово понашање је вероватно било за интерни развој, тако да програмери нису морали да потпишу сваку верзију ОС-а и мање промене које су морали да ураде на уређају.
Овај СБП се назива „Златни кључ“ јер у основи поништава сврху провера потписа. Овај СБП је ненамерно испоручен на малопродајним уређајима, иако у деактивираном стању. Програмери су пронашли овај СБП и објавили своје налазе. Сада, СБП може бити пронађене како лебде на интернету, при чему се овај конкретни зип користи за инсталирање СБП-а на Виндовс РТ уређаје.
Шта ово значи?
Ако сте учитали додатни СБП, можете омогућити пробно потписивање за Виндовс да бисте омогућили учитавање непотписаних управљачких програма. Даље, пошто ове смернице ступају на снагу пре фазе Менаџера покретања у процедури покретања, можете угрозити безбедност читавог налога и покренути неовлашћени (читај самопотписани) код. Ово отвара много могућности за кориснике који намеравају да модификују делове Виндовс-а ван ауторизације и за креаторе малвера.
Аутори овог налаза фокусирају се на иронију читавог фијаска. Мицрософт је закључао Сецуре Боот на одређеним уређајима да би неовлашћене промене задржао далеко, али је затим уградио бацкдоор да би им омогућио да наставе са развојем и отклањањем грешака. Али управо ова позадинска врата утиру пут да безбедно покретање буде онемогућено на свим уређајима који раде под Виндовсом, чинећи читаво искушење бесмисленим.
Не само да вољни корисници сада могу да инсталирају Линук дистрибуције (и вероватно Андроид) на таблете само за Виндовс и Телефони, невољни корисници такође могу имати инсталиране злонамерне бооткитове ако компромитују физички приступ њиховим уређај. Док је прво нешто на шта можемо да скочимо у ваздух, ово друго не улива много самопоуздања. То иде у оба смера и показује нам зашто је безбедност мач са две оштрице. Даље, СБП је универзалан по природи, дозвољавајући његову употребу на било ком уређају, без обзира на архитектуру. Није посебно корисно за случајеве десктоп рачунара где се безбедно покретање може лако искључити, али има огроман обим за уређаје на којима се не можете петљати са безбедним покретањем.
Дакле, шта је решење?
Мицрософт је објавио неке закрпе, али програмери инсистирају да проблем није у потпуности решен. Можете погледати ове закрпе (МС16-094 и МС16-100), а затим прочитајте о блог пост себе о томе зашто не решавају проблем. Ако су тачни, овај проблем нема решење или закрпу на видику, мада то неће спречити Мицрософт да покуша да постави још препрека на путу.
Шта даље?
Постоји читав свет могућности, а неке од њих се развијају на нашим Виндовс форумима. Можете погледати наше форуме на Виндовс Пхоне 8 развој и хаковање и наши форуми за Виндовс 8, Виндовс РТ и Сурфаце Девелопмент анд Хацкинг. Такође можете пронаћи нити инструкција за неке уређаје, где други корисници расправљају о истом.
Присуство овог бацкдоор-а за отклањање грешака и цурење СБП-а су важни не само за треће стране развој закључаних Виндовс уређаја, они нам такође показују суморни подсетник о томе шта се може догодити ако је намерно задња врата су остављена. Недавни фокус на безбедност окренут је ка истражним агенцијама које врше притисак на присуство таквих позадинских врата како би се помогло у њиховим правним истражним циљевима. Али пре или касније, ове методе воља пасти у погрешне руке. Оно што је намењено да се користи као оруђе за борбу против криминала и помоћ у правди, тада би једног дана постало оруђе за сам злочин.
Шта мислите о цурењу Дебуг СБП-а? Да ли сматрате да би овакви „Златни кључеви“ требало да постоје? Обавестите нас у коментарима испод!