Няколко уязвимости, открити в често срещани Android IDE, включително Android Studio, IntelliJ IDEA и Eclipse

Нов тип уязвимост на Android, наречена ParseDroid, е открита в инструменти за разработчици, включително Android Studio, IntelliJ IDEA, Eclipse, APKTool и други.

Когато мислим за уязвимости на Android, обикновено си представяме уязвимост от нулев ден, която използва някакъв процес за ескалиране на привилегии. Това може да бъде всичко - от подвеждане на вашия смартфон или таблет да се свърже със злонамерена WiFi мрежа или позволяване на код да бъде изпълнен на устройство от отдалечено място. Има обаче нов тип уязвимост на Android, която беше открита наскоро. Нарича се ParseDroid и използва инструменти за разработчици, включително Android Studio, IntelliJ IDEA, Eclipse, APKTool, услугата Cuckoo-Droid и други.

ParseDroid обаче не е изолиран само от инструментите за разработчици на Android и тези уязвимости са открити в множество Java/Android инструменти, които програмистите използват в наши дни. Няма значение дали използвате инструмент за разработчици за изтегляне или такъв, който работи в облака,

Проучване на Check Point откри тези уязвимости в най-разпространените инструменти за разработка на Android и Java. Веднъж експлоатиран, нападателят има достъп до вътрешните файлове на работната машина на разработчика.

Check Point Research първо се зарови в най-популярния инструмент за обратно инженерство от трета страна Приложения за Android (APKTool) и установи, че функциите му за декомпилиране и изграждане на APK са уязвими за атака. След като разгледаха изходния код, изследователите успяха да идентифицират XML External Entity (XXE) уязвимост, която е възможно, защото неговият конфигуриран XML анализатор на APKTool не деактивира препратките към външни обекти, когато анализира XML файл.

Веднъж експлоатирана, уязвимостта разкрива цялата файлова система на операционната система на потребителите на APKTool. На свой ред това потенциално позволява на атакуващия да извлече всеки файл на компютъра на жертвата, като използва злонамерен файл „AndroidManifest.xml“, който използва XXE уязвимост. След като тази уязвимост беше открита, изследователите след това разгледаха популярни Android IDE и установиха, че чрез просто зареждане на злонамерен файл „AndroidManifest.xml“ като част от всеки проект за Android, IDE започва да изхвърля всеки файл, конфигуриран от нападател.

Кредити: Check Point Research

Check Point Research също демонстрира сценарий на атака, който потенциално засяга голям брой разработчици на Android. Той работи чрез инжектиране на злонамерен AAR (Android Archive Library), съдържащ XXE полезен товар, в онлайн хранилища. Ако жертва клонира хранилището, тогава нападателят ще има достъп до потенциално чувствителна собственост на компанията от файловата система на OS на жертвата.

Кредити: Check Point Research

И накрая, авторите описаха метод, чрез който могат да изпълнят отдалечен код на машината на жертвата. Това става чрез използване на конфигурационен файл в APKTool, наречен „APKTOOL.YAML“. Този файл има раздел наречени "unknownFiles", където потребителите могат да посочват файлови местоположения, които ще бъдат поставени по време на повторното изграждане на APK. Тези файлове се съхраняват на машината на жертвата в папка „Неизвестно“. Чрез редактиране на пътя, където се записват тези файлове, нападателят може да инжектира всеки файл, който пожелае в файловата система на жертвата, тъй като APKTool не потвърди пътя, където се извличат неизвестни файлове от APK.

Файловете, които нападателят инжектира, водят до пълно отдалечено изпълнение на код на машината на жертвата, което означава, че нападателят може експлоатирайте всяка жертва с инсталиран APKTool, като създадете злонамерено създаден APK и накарате жертвата да се опита да декодира и след това възстановете го.

Кредити: Check Point Research

Тъй като всички IDE и инструменти, споменати по-горе, са междуплатформени и общи, потенциалът за използване на тези уязвимости е голям. За щастие, след като се свърза с разработчиците на всяка от тези IDE и инструменти, Check Point Research потвърди, че тези инструменти вече не са уязвими за този вид атака. Ако използвате по-стара версия на някой от тези инструменти, препоръчваме ви да актуализирате незабавно, за да се предпазите от атака в стил ParseDroid.


Източник: Check Point Research