9-годишна грешка в ядрото на Linux, наречена „Мръсна крава“, може да руутне всяка версия на Android

Dirty Cow е новооткрит, но 9-годишен бъг, който може да се използва за предоставяне на root достъп на всички версии на Android.

Въпреки факта, че десетки хиляди потребители активно се вглеждат в изходния код на ядрото на Linux, активно търсейки пропуски в сигурността, не е нечувано сериозни грешки да останат незабелязани. В края на краищата, въпреки че шансовете да пропуснете нещо невероятно сериозно са намалени, ако имате повече очи, които проверяват кода, всички ние все още сме хора и сме длъжни да направим грешка. Грешката този път изглежда доста сериозна, за съжаление. А експлойт за ескалиране на привилегии беше открит наскоро миналата седмица и въпреки че вече е закърпен в основното Linux ядро, грешката може потенциално да бъдат експлоатирани на почти всеки телефон с Android на пазара, докато всяко устройство не получи подходящата корекция на ядрото.


Въведете Dirty Cow

Грешката за ескалиране на привилегии е известна разговорно като експлойта Dirty Cow, но е каталогизирана в системата за проследяване на грешки на ядрото на Linux като CVE-2016-5195. Въпреки че беше открит едва миналата седмица, грешката съществуваше в кода на ядрото на Linux за 

9 години. Освен това кодът, който може да се използва, се намира в част от ядрото на Linux, която се доставя практически всяка модерна операционна система, изградена върху ядрото на Linux -- това включва Android, от начинът. По-лошото е, че изследователите, които разкриха експлойта, са открили доказателства, че експлойтът е такъв се използва злонамерено в реалния свят, така че те съветват всички и всички доставчици, доставящи софтуер, изграден върху ядрото на Linux, незабавно да коригират експлойта.

Dirty Cow сама по себе си не е експлойт, а по-скоро уязвимост. Въпреки това, тази уязвимост позволява ескалиране на привилегията на процес на потребителско пространство, предоставяйки му привилегии на супер потребител. Използвайки тази уязвимост, злонамерен процес на потребителско пространство може да има неограничен root достъп до устройството на жертвата. В по-технически термини, грешката включва състояние на надпревара на техниката за дублиране на паметта на Linux, известна като копиране при запис. Използвайки това състояние на надпревара, потребителите могат да получат достъп за запис до съпоставяния на паметта, които обикновено са настроени само за четене. Повече подробности за уязвимостта могат да бъдат извлечени от тук, тук, и тук.

Твърди се, че уязвимостта в сигурността е доста тривиална за използване и наистина в рамките на няколко дни след оповестяването на уязвимостта proof-of-concept привилегия-ескалация експлойт е демонстрирано за всички Android устройства. Всяко устройство с Android, работещо с версия на ядрото на Linux, по-висока от 2.6.22 (прочетете: всяка съществуваща дистрибуция на Android) потенциално може да стане жертва на този експлойт за доказване на концепцията. Въпреки че експлойтът за доказване на концепцията всъщност не постига root достъп, атаката на системата с помощта на тази уязвимост прави това доста лесно. В имейл, изпратен до ArsTechnica, Phil Oester, разработчик на ядрото на Linux, който каталогизира известни експлойти в реалния свят на Dirty Cow на неговия уебсайт каза това за грешката:

Всеки потребител може да стане root за < 5 секунди в моето тестване, много надеждно. Страшни неща.

Уязвимостта се използва най-лесно с локален достъп до система като shell акаунти. По-малко тривиално, всяка уязвимост на уеб сървър/приложение, която позволява на атакуващия да качи файл в засегнатата система и да го изпълни, също работи.

Конкретният експлойт, който беше качен в моята система, беше компилиран с GCC 4.8.5, издаден 20150623, въпреки че това не трябва да означава, че уязвимостта не е била налична по-рано от тази дата, като се има предвид нейната дълголетие. Що се отнася до това кой е насочен, всеки, който работи с Linux на уеб сървър, е уязвим.

През последните няколко години улавям целия входящ трафик към моите уеб сървъри за съдебномедицински анализ. Тази практика се оказа безценна в много случаи и бих я препоръчал на всички администратори. В този случай успях да извлека качения двоичен файл от тези заснемания, за да анализирам поведението му и да ескалирам към подходящите поддържащи ядрото на Linux.

След по-нататъшна работа на разработчиците за демонстриране на ефективността на използването на Dirty Cow на Android, един разработчик успя да успешно руутна своя HTC устройство в рамките на секунди чрез използване на уязвимостта. Ние от XDA обикновено приветстваме възможността потребителите да придобият root достъп, но не празнуваме съществуването на root експлойти като този, особено този, който е толкова широко разпространен и потенциално невероятно опасен за прекратяване потребители. За да ви даде представа колко опасна може да бъде Мръсната крава в дивата природа, YouTuber Computerphile събра кратко видео демонстриране на потенциалните вектори за злонамерени атаки, които хакерите могат да използват, за да получат безшумно root достъп на вашия устройство.


Източник: ArsTechnica [1]

Източник: ArsTechnica [2]