Истината за скритата миник OS на Intel и опасенията за сигурността

Ако имате Intel-чипсет базирана дънна платка, има големи шансове тя да е оборудвана с Intel Management (Intel ME) устройство. Това не е ново. А загрижеността по въпроса за неприкосновеността на личния живот, която стои зад тази малко позната характеристика, беше повдигната от няколко години. Но изведнъж блогосферата изглежда е преоткрила проблема. И можем да прочетем много полу-верни или просто погрешни изявления по тази тема.

Така че позволете ми да се опитам да изясня, доколкото мога, някои ключови моменти, за които можете да направите собствено мнение:

Какво представлява Intel ME?

Първо, нека да дадем определение директно от уебсайта на Intel:

Вградена в много платформи, базирани на Intel® чипсет, е малка, ниско енергийна компютърна подсистема, наречена Intel® Management Engine (Intel® ME). Intel® ME изпълнява различни задачи, докато системата е в режим на заспиване, по време на процеса на зареждане и когато системата работи.

Просто казано, това означава, че Intel ME добавя още един процесор на дънната платка, за да управлява другите подсистеми. Всъщност това е нещо повече от микропроцесор: това е микроконтролер със собствен процесор, памет и I / O. Наистина точно като, ако беше малък компютър във вашия компютър.

Тази допълнителна единица е част от чипсета и НЕ се намира на главния процесор. Независимо, това означава, че Intel ME не се влияе от различните състояния на заспиване на главния процесор и ще остане активен, дори когато поставите компютъра в спящ режим или когато го изключите.

Доколкото мога да кажа, Intel ME присъства, започвайки с чипсета GM45, който ни връща към 2008 година. При първоначалното си внедряване, Intel ME беше на отделен чип, който можеше да бъде физически премахнат. За съжаление, съвременните чипсети включват Intel ME като част от северния мост, който е от съществено значение за работата на компютъра. Официално няма начин да изключите Intel ME, дори ако някои експлотити изглежда са били успешно използвани за деактивирането му.

Четох, че работи на "пръстен -3" какво означава това?

Казвайки Intel ME, че работи в "пръстен -3" води до известно объркване. Защитните пръстени са различните механизми за защита, реализирани от процесор, който позволява на ядрото да използва някои инструкции за процесора, докато приложенията, изпълнявани върху него, не могат да го направят. Ключовият момент е софтуерът, работещ в „пръстен“, да има пълен контрол над софтуера, работещ на по-високо ниво. Нещо, което може да се използва за наблюдение, защита или представяне на идеализирана или виртуализирана среда за изпълнение на софтуера, работещ на по-високо ниво.

Обикновено, при x86, приложенията се изпълняват в пръстен 1, ядрото се изпълнява в пръстен 0 и евентуален хипервизор на пръстен -1. Понякога се използва “пръстен -2” за микрокода на процесора. И "пръстен -3" се използва в няколко документа, за да се говори за Intel ME като начин да се обясни, че има дори по-голям контрол от всичко, което работи на главния процесор. Но „пръстен -3“ със сигурност не е работещ модел на вашия процесор. Позволете ми да повторя още веднъж: Intel ME не е дори на CPU die.

Препоръчвам ви да разгледате по-специално първите страници на този доклад на Google / Two Sigma / Cisco / Splitted-Desktop Systems за преглед на няколко слоя на изпълнение на типичен Intel-базиран компютър.

Какъв е проблемът с Intel ME?

По проект Intel ME има достъп до другите подсистеми на дънната платка. Включва RAM, мрежови устройства и криптографски двигател. И това, докато дънната платка се захранва. Освен това, той може директно да осъществи достъп до мрежовия интерфейс, използвайки специална връзка за външна комуникация, така че дори ако наблюдавате трафика с инструмент като Wireshark или tcpdump, може да не виждате пакета данни, изпратен от Intel ME.

Intel твърди, че ME е необходим, за да получи най-доброто от вашия чипсет на Intel. Най-полезна, тя може да се използва особено в корпоративна среда за някои задачи за отдалечено администриране и поддръжка. Но никой извън Intel не знае точно какво може да направи. Да бъдеш близък източник, което води до легитимни въпроси относно възможностите на тази система и начина, по който може да се използва или злоупотребява.

Например, Intel ME има потенциал за четене на всеки байт в RAM в търсене на някоя ключова дума или за изпращане на тези данни през NIC. Освен това, тъй като Intel ME може да комуникира с операционната система и потенциално с приложенията, работещи на главния процесор, можем да си представим сценарии, при които Intel ME ще бъде използван от зловреден софтуер за заобикаляне на политиките за сигурност на ниво OS.

Тази научна фантастика ли е? Е, аз не съм лично запознат с изтичане на данни или друг експлойт, използвайки Intel ME като първичен атакуващ вектор. Но цитирането на Игор Скочински може да ви даде идеал за това, каква система може да се използва за:

Intel ME има няколко специфични функции, и въпреки че повечето от тях могат да се разглеждат като най-добрият инструмент, който бихте могли да дадете на ИТ човека, който отговаря за внедряването на хиляди работни станции в корпоративна среда, има някои инструменти, които биха били много интересни възможности за подвиг. Тези функции включват технология за активно управление, с възможност за дистанционно администриране, осигуряване и ремонт, както и функциониране като KVM. Функцията за отбрана на системата е най-ниското ниво на защитна стена, налична на машина на Intel. IDE Redirection и Serial-Over-LAN позволяват на компютъра да стартира над отдалечено устройство или да поправя заразената операционна система, а Identity Protection има вградена еднократна парола за двуфакторно удостоверяване. Има и функции за функция "против кражба", която деактивира компютъра, ако не успее да се регистрира на сървър в някакъв предварително определен интервал или ако "мрежа от отрова" е доставена. Тази функция против кражба може да убие компютъра или да уведоми за кодирането на диска, за да изтрие ключовете за криптиране на устройството.

Позволете ви да разгледате презентацията на Игор Скочински за конференцията REcon 2014, за да имате преглед от първа ръка на възможностите на Intel ME:

  • пързалки
  • видео

Като странична бележка, за да ви дадем представа за рисковете, погледнете CVE-2017-5689, публикуван през май 2017 г. относно ескалация на привилегии за местни и отдалечени потребители, използващи HTTP сървър, работещ на Intel ME, когато е разрешен Intel AMT,

Но не изпадайте в паника веднага, защото за повечето персонални компютри това не е проблем, защото не използват AMT. Но това дава представа за възможните атаки, насочени към Intel ME и софтуера, който работи там.

Какво знаем за Intel ME? Как е свързано с Minix?

Intel ME и софтуерът, който се изпълнява върху него, са с близък източник и хората, които имат достъп до свързаната информация, са обвързани от споразумение за неразкриване. Но благодарение на независимите изследователи все още имаме известна информация за него.

Intel ME споделя флаш паметта с BIOS, за да съхрани фърмуера си. Но за съжаление, голяма част от кода не е достъпен от обикновена дъмп на светкавицата, защото разчита на функции, съхранени в недостъпната ROM част на микроконтролера ME. Освен това се вижда, че частите от кода, които са достъпни, се компресират, като се използват неразкрити таблици за компресиране на Huffman. Това не е криптография, нейната компресия - объркване, може да се каже. Както и да е, това не помага в обратното инженерство Intel ME.

До своята версия 10, Intel ME се базираше на ARC или SPARC процесори. Но Intel ME 11 е базиран на x86. През април екип на Positive Technologies се опита да анализира инструментите, които Intel предоставя на OEM / продавачите, както и някои кодове за байпас на ROM. Но поради компресията на Хафман те не успяха да стигнат много далеч.

Те обаче успяха да анализират TXE, Trusted Execution Engine, система, подобна на Intel ME, но достъпна на платформите Intel Atom. Хубавото на TXE е, че фърмуерът не е кодиран от Huffman. И там намериха нещо смешно. Предпочитам да цитирам съответния параграф в extenso тук:

Освен това, когато погледнахме вътре в декомпресирания vfs модул, срещнахме низовете „FS: фиктивно дете за разклоняване“ и „FS: разклонение на върха на използваното дете“, които ясно произхождат от Minix3 кода. Изглежда, че ME 11 е базиран на ОС MINIX 3, разработен от Андрю Таненбаум :)

Нека направим нещата ясни: TXE съдържа код “заимстван” от Minix. Това е сигурно. Други съвети предполагат, че вероятно изпълнява цялостни изпълнения на Minix. И накрая, въпреки липсата на доказателства, можем да приемем, без много рискове, че ME 11 ще се основава на Minix също.

Доскоро Minix със сигурност не беше добре познато име на операционната система. Но наскоро се промениха няколко закачливи заглавия. Това и неотдавнашното отворено писмо на Андрю Таненбаум, авторът на Minix, вероятно са в основата на сегашния шум около Intel ME.

Андрю Таненбаум?

Ако не го познавате, Андрю С. Таненбаум е компютърен учен и почетен професор във Vrije Universiteit Amsterdam в Холандия. Поколения от студенти, включително и мен, са научили компютърни науки чрез книгите, работата и публикациите на Андрю Таненбаум.

За образователни цели той започва разработването на операционната система Minix, вдъхновена от Minix, в края на 80-те години. И е бил известен с противоречията си по Усенет с един млад човек, наречен Линус Торвалдс, за добродетелите на монолитни срещу микроядра.

За това, което ни интересува днес, Андрю Таненбаум обяви, че няма никаква обратна връзка от Intel относно използването на Minix. Но в отворено писмо до Intel, той обяснява, че преди няколко години се е свързал с инженери на Intel, които задават много технически въпроси за Minix и дори иска промяна на кода, за да може да избирателно отстранява част от системата, за да намали отпечатъка си.

Според Таненбаум, Intel никога не обяснява причината за техния интерес към Minix. "След този първоначален изблик на активност, имаше радио мълчание за няколко години", което е до днес.

В последната бележка Tannenbaum обяснява позицията си:

За да отбележа, бих искал да заявя, че когато Intel се свързва с мен, те не казват на какво работят. Фирмите рядко говорят за бъдещи продукти без NDA. Реших, че това е нов чип за Ethernet или графичен чип или нещо подобно. Ако бях подозирал, че може би строят шпионски двигател, със сигурност нямаше да си сътрудничи […]

Заслужава да се спомене, ако можем да поставим под въпрос моралното поведение на Intel, както по отношение на начина, по който са се обърнали към Tannenbaum и Minix, така и към целта, преследвана от Intel ME, строго погледнато, те действаха перфектно в съответствие с условията на лиценза на Berkeley, съпътстващ проекта Minix.

Повече информация за ME?

Ако търсите повече техническа информация за Intel ME и текущото състояние на познанията на Общността за тази технология, ви препоръчвам да разгледате презентацията за позитивната технология, публикувана за конференцията TROOPERS17 IT-Security. Макар да не е лесно разбираем за всички, това със сигурност е препратка към преценката на валидността на информацията, прочетена на друго място.

А какво да кажем за използването на AMD?

Не съм запознат с AMD технологиите. Така че, ако имате по-добра представа, да ни уведомите, използвайки раздела за коментари. Но от това, което мога да кажа, линията на микропроцесорите на ускорените процесори на AMD (APU) има подобна характеристика, в която вграждат допълнителен ARM-базиран микроконтролер, но този път директно върху CPU. Удивително достатъчно, че тази технология се рекламира като „TrustZone“ от AMD. Но както и за колегите от Intel, никой не знае какво прави. И никой няма достъп до източника, за да анализира повърхността на експлоатацията, която добавя към вашия компютър.

И така, какво да мислите?

Много е лесно да станем параноични за тези теми. Например, какво доказва, че фърмуерът, който се изпълнява на вашия Ethernet или Wireless NIC, не ви шпионира, за да предавате данни през някакъв скрит канал?

Това, което прави Intel ME по-голямо притеснение, е защото то работи в различен мащаб, като буквално е малък независим компютър, гледащ всичко, което се случва на хост компютъра. Лично аз бях засегнат от Intel ME, тъй като това е първоначалното съобщение. Но това не ми попречи да използвам Intel базирани компютри. Разбира се, бих предпочел, ако Intel направи избор да отвори източника на мониторинговия двигател и свързания с него софтуер. Или, ако са осигурили начин да го дезактивират физически. Но това е мнение, което се отнася само за мен. Вие със сигурност имате свои собствени идеи за това.

Най-накрая, казах по-горе, целта ми в написването на тази статия беше да ви дам възможно най-много информация, която може да бъде проверена, за да можете да направите собствено мнение

Препоръчано

Двигателят на Microsoft Edge за JavaScript е отворен код
2019
Върнете стария си компютър обратно в живота с 4MLinux
2019
Fix Невъзможност за влизане в Ubuntu след надстройка
2019