Security-ресерчеры продемонстрували повнофункціональний експлойт для Android

Дослідники ізраїльської компанії NorthBit продемонстрували один з перших експериментальних повнофункціональних експлойтів для Android всіх версій до 5.1. Експлойт заснований на вже закритої оновленням Nexus Security Bulletin — September 2015 уразливості з ідентифікатором CVE-2015-3864 (Stagefright), яка наробила в минулому році багато шуму. Уразливість була присутня в бібліотеці Android під назвою Stagefright, яка використовується в системному компоненті mediaserver. Вона дозволяла зловмисникам отримувати повний доступ до пристрою через відправку спеціальним чином сформованого MMS-повідомлення користувачеві.



Експлойт NorthBit отримав назву Metaphor. Крім детального опису механізму експлуатації уразливості, дослідники представили вразливі місця в Android для обходу захисних механізмів DEP & ASLR, які використовуються для захисту від експлойтів, які покладаються на розміщення шелл-коду в області даних, а також спираються на фіксовані адреси в пам'яті Android для стабільної експлуатації уразливості. Як і в Windows, обхід виконується за рахунок відомих методів ROP і heap-spray.

Атака з використанням експлойта поділяється на кілька кроків.

  1. На першому етапі вибирається вектор атаки, наприклад, шкідливе перенеправление MitM або XSS, шкідлива посилання в цьому повідомленні, шкідливого вмісту HTTP.
  2. Частина експлойта на веб-сторінці у вигляді коду JavaScript створює т. н. сесію атаки і отримує ідентифікатор пристрою Device ID, після чого відправляє цю інформацію на сервер зловмисників. Цей код спеціалізується на диригування всього подальшого процесу експлуатації із залученням декількох шкідливих файлів MPEG4.
  3. У разі необхідного зловмисникам ID, жертві надсилається спеціальним чином сформований відео-файл формату MPEG4 (crash.mp4).
  4. Android приваблює процес mediaserver для відтворення відео-файлу, який викликає аварійне завершення системного процесу mediaserver. Такий крок необхідний для установки процесу в початковий стан, що дозволить коректно виконати експлуатацію уразливості. Після аварійного завершення, процес автоматично запуститься ще раз.
  5. Далі код експлойта відправляє запит на віддалений сервер зловмисників для отримання ще одного файлу MPEG4 під назвою leak.mp4. Він необхідний для розкриття системних покажчиків пам'яті Android і обходу ASLR.
  6. Віддалений сервер, на основі надісланої йому інформації Device ID експлойтів на попередньому кроці, повертає йому leak.mp4, а також відносне зміщення в системному файлі libc.so для формування гаджетів ROP і обходу DEP.
  7. Для відтворення leak.mp4 Android знову привертає процес mediaserver, який виконує розбір фальшивих метаданих файлу і використовується експлойтів для обходу ASLR. Для обходу ASLR використовується універсальний метод розрахунку дельти через вразливе місце його початкового формування на використовуваному в Android Linux-алгоритмі для ARM 32-біта. Результатом обходу ASLR стає успішне виявлення в пам'яті заголовка виконуваного ELF-файл, на основі чого формується дельта для обчислення абсолютних адрес в процесі.
  8. На цьому етапі всі підготовчі дії завершені та код JavaScript запитує у віддаленого сервера сам RCE-експлойт для уразливості CVE-2015-3864, надаючи йому згадуваний ID пристрою і деяку додаткову інформацію про розташування модулів Android в пам'яті.
  9. Віддалений сервер відправляє шкідливого коду JavaScript файл rce.mp4, а також всю інформацію про адреси в пам'яті, необхідних для успішної експлуатації уразливості. Адреси були заздалегідь розраховані із залученням leak.mp4.
  10. На останньому етапі шкідливий код JavaScript запускає на виконання rce.mp4, що призводить до спрацьовування вразливості та віддаленого виконання коду. Так як експлойт виконується в контексті системного процесу mediaserver, він отримує додаткові привілеї в Android.
Рис. Демонстрація роботи експлойта Metaphor. Жертва проходить за посиланням на веб-сторінку із зображенням тварин, де знаходиться шкідливий відео-контент з експлойтів.

За підрахунками аналітиків ринку, сотні мільйонів пристроїв під управлінням Android працюють на вразливих для Metaphor версії цієї мобільної ОС. Установка оновлень Android для своїх пристроїв є найкращою мірою захисту від подібного роду вразливостей, але що робити користувачам смартфонів, виробники яких не адаптують для них випущені Google нові прошивки. Що ж, на це питання поки немає остаточно відповіді… Ми рекомендуємо користувачам не переходити за фішинговим посиланнями (як це було продемонстровано на відео) і використовувати антивірусне ПЗ в якості однієї з основних заходів захисту свого пристрою.

Повний опис функціонування Metaphor можна знайти посилання.
Описувана вразливість була закрита Google у вересні минулого року оновленням Nexus Security Bulletin — September 2015.



Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.