CyberPeople

Операція NoVoice: Android-rootkit, що переживає скидання до заводських налаштувань та викрадає WhatsApp — 2,3 мільйони інфікованих пристроїв

Операція NoVoice: Android-rootkit, що переживає скидання

McAfee виявив rootkit NoVoice у 50+ додатках Google Play. Стеганографія, 22 exploit, викрадення WhatsApp. Скидання не допоможе.

Операція NoVoice: Android-rootkit, який виживає після скидання до заводських налаштувань та перехоплює WhatsApp

Понад 2,3 мільйона Android-пристроїв були скомпрометовані витонченим rootkit, який ховався у 50+ додатках Google Play із вигляду цілком легітимних, використовує 22 відомі вразливості для отримання доступу на рівні ядра, застосовує steganography для приховування корисного навантаження у звичайних PNG-зображеннях та зберігається навіть після скидання до заводських налаштувань. Його головна мета: непомітне клонування WhatsApp-сесій жертв та передача їх зловмисникам.

Дослідницька група McAfee Mobile Research Team, що працює у складі Google App Defense Alliance, розкрила кампанію під назвою Operation NoVoice -- одну з найбільш технічно складних операцій з поширення Android-malware, виявлених за останні роки. Заражені додатки вже видалені з Google Play, але шкоду, завдану мільйонам пристроїв зі застарілими версіями Android, неможливо виправити простим скиданням.

Ось усе, що потрібно знати захисникам та користувачам.

Як це почалося: 50+ додатків, жодної підозри

Кампанія NoVoice поширювалася через понад 50 додатків у Google Play, замаскованих під звичайне утилітарне ПЗ: програми для очищення телефону, менеджери фотогалереї та казуальні ігри. Ці додатки не запитували підозрілих дозволів і справді виконували заявлену функціональність. У користувачів не було жодних причин їм не довіряти.

Сумарно шкідливі додатки набрали щонайменше 2,3 мільйона завантажень до того, як McAfee повідомив про них і Google видалив їх з магазину. Додатки більше недоступні для завантаження, але пристрої, на які їх було встановлено і які не мали необхідних патчів безпеки, залишаються скомпрометованими.

Особливо небезпечним NoVoice робила його терплячість. Додатки нормально функціонували на поверхні, водночас непомітно профілюючи кожен пристрій та зв'язуючись з інфраструктурою командних серверів (C2) у фоновому режимі, очікуючи інструкцій для початку справжньої атаки.

Трюк зі steganography: malware, приховане в зображеннях

NoVoice використовував елегантну техніку маскування, яка дозволяла шкідливому навантаженню проходити непоміченим через систему безпеки Google Play та більшість сторонніх антивірусних рушіїв.

Зловмисники вбудовували зашифроване корисне навантаження (enc.apk) у звичайний PNG-файл за допомогою steganography. Шкідливі дані були дописані після маркера IEND -- стандартного індикатора кінця файлу для PNG-зображень -- з префіксом магічного значення CAFEBABE. Оскільки переглядачі зображень та стандартні сканери безпеки припиняють зчитування PNG-файлу на маркері IEND, приховане навантаження було фактично невидимим для автоматизованого аналізу.

Потрапивши на пристрій, malware витягував приховане навантаження як h.apk, завантажував його безпосередньо в оперативну пам'ять системи та негайно видаляв усі проміжні файли з диска, щоб ліквідувати криміналістичні сліди. Такий підхід означав, що навіть якщо дослідник безпеки вивчав файлову структуру встановленого додатку, витягнутий шкідливий компонент не залишав очевидних артефактів.

Зловмисники додатково обфускували свою роботу, приховуючи шкідливі компоненти всередині пакету з назвою com.facebook.utils, змішуючи свій код з легітимними класами Facebook SDK. Шкідливий код було інтегровано у шлях ініціалізації Facebook SDK додатку, що забезпечувало його непомітне виконання при звичайному запуску без виклику додаткових діалогів дозволів чи видимої для користувача поведінки.

15 перевірок перед атакою: захист від аналізу

Перед розгортанням будь-якого exploit NoVoice виконував серію з 15 перевірок, покликаних переконатися, що він працює на реальному пристрої жертви, а не в середовищі аналізу дослідника безпеки. Ці перевірки включали пошук:

  • Середовищ емуляторів, які зазвичай використовуються аналітиками malware
  • Активних дебагерів, підключених до процесу
  • VPN та proxy-з'єднань, що можуть свідчити про перехоплення трафіку
  • Хуків рутингу від фреймворків на кшталт Magisk або Xposed
  • GPS-геофенсингу для виключення певних географічних регіонів

Примітно, що malware було сконфігуровано уникати зараження пристроїв, фізично розташованих у Пекіні та Шеньчжені (Китай). Якщо дозволи на геолокацію були недоступні, зараження продовжувалося -- що свідчить про те, що виключення було свідомим операційним рішенням зловмисників, а не технічним обмеженням.

22 exploits, одна мета: root-доступ

Основа можливостей NoVoice спиралася на арсенал з 22 окремих exploits, ідентифікованих дослідниками McAfee. Усі вони були спрямовані на відомі вразливості Android, виправлені між 2016 та 2021 роками. Хоча це означає, що оновлені пристрої вони не можуть скомпрометувати, мільйони телефонів по всьому світу -- і значна частка пристроїв в Україні -- досі працюють на версіях Android з рівнем патчів безпеки, що передують цим виправленням.

C2-сервер malware відігравав активну роль у виборі exploit. Після профілювання кожного цільового пристрою (збір даних про апаратне забезпечення, версію ядра, версію Android, рівень патча безпеки, встановлені додатки та наявний статус root) сервер обирав і доставляв оптимальний ланцюжок exploits для конкретної комбінації апаратного та програмного забезпечення. Malware опитував C2-сервер кожні 60 секунд на предмет оновлених payload.

Триетапна атака на ядро

Глибокий аналіз McAfee одного з ланцюжків exploits виявив витончену триетапну атаку на ядро:

  1. Етап 1 -- Читання пам'яті ядра: Use-after-free вразливість у IPv6 використовувалась для отримання можливості читання довільної пам'яті ядра.
  2. Етап 2 -- Читання/запис пам'яті ядра: Вразливість драйвера Mali GPU використовувалась для ескалації від доступу тільки на читання до повного доступу на читання/запис до пам'яті ядра.
  3. Етап 3 -- Повна компрометація: З необмеженим доступом до пам'яті ядра exploit модифікував облікові дані процесу та повністю вимикав захист SELinux, надаючи malware необмежений root-доступ до пристрою.

Інші exploits в арсеналі були спрямовані на додаткові use-after-free помилки ядра, вразливості драйвера Mali GPU та помилки обробки IPv6 у різних версіях ядра Android.

Невбивний rootkit: як NoVoice забезпечує персистентність

Після отримання root-доступу компонент-інсталятор rootkit -- ідентифікований дослідниками як CsKaitno.d -- розшифровувався з вбудованого ресурсу та записувався на диск. З цього моменту NoVoice будував багатошарову архітектуру персистентності, яка робила видалення надзвичайно складним.

Підміна системних бібліотек

Rootkit замінював критичні системні бібліотеки Android, зокрема libandroid_runtime.so та libmedia_jni.so, на шкідливі wrapper-бінарники. Ці перехоплюючі wrapper перехоплювали виклики системних функцій та перенаправляли виконання на код, контрольований зловмисниками. Оскільки libandroid_runtime.so завантажується кожним Android-додатком при запуску, ця єдина модифікація означала, що кожен додаток на пристрої виконував код зловмисника з моменту свого запуску.

Скрипти відновлення та перехоплення обробника збоїв

NoVoice встановлював скрипти відновлення на системний розділ та замінював системний обробник збоїв Android на завантажувач rootkit. Якщо пристрій аварійно завершував роботу та перезавантажувався, скомпрометований обробник збоїв перезавантажував rootkit раніше, ніж будь-який інший системний компонент міг цьому завадити.

Резервні payload

Додаткові шкідливі payload зберігалися на системному розділі -- розділі, який не зачіпається при стандартному скиданні до заводських налаштувань. Саме це є критичною причиною того, чому скидання до заводських налаштувань не може видалити NoVoice. Шкідливий код знаходиться у місці, яке процес скидання вважає частиною самої операційної системи.

Watchdog-демон

Персистентний watchdog-демон запускався кожні 60 секунд, перевіряючи цілісність rootkit на всіх рівнях персистентності. Якщо будь-який компонент виявлявся відсутнім або пошкодженим, watchdog автоматично перевстановлював його. Якщо перевірки цілісності повністю провалювалися, демон примусово перезавантажував пристрій, спричиняючи перезавантаження rootkit через скомпрометований обробник збоїв або скрипти відновлення.

Трюк з беззвучним аудіо

Назва кампанії -- "NoVoice" -- походить від конкретної технічної деталі: malware вбудовував беззвучний аудіоресурс (R.raw.novioce -- зверніть увагу на навмисну помилку у написанні) в один зі своїх пізніших payload. Цей аудіофайл з нульовою гучністю відтворювався безперервно, щоб підтримувати роботу foreground-сервісу Android, використовуючи виняток операційної системи для медіавідтворення, який забороняє системі завершувати сервіси, що активно відтворюють аудіо. Malware підтримував постійне фонове виконання, залишаючись абсолютно непомітним для користувача.

Перехоплення сесії WhatsApp: справжнє корисне навантаження

Хоча фреймворк NoVoice був архітектурно розрахований на прийом та виконання будь-яких завдань від C2-сервера, єдиний підтверджений payload для крадіжки даних, виявлений дослідниками McAfee, був спрямований на одну ціль: WhatsApp.

При запуску WhatsApp на зараженому пристрої інтегрований код rootkit -- який виконувався у процесі кожного додатку завдяки скомпрометованій системній бібліотеці -- фіксував запуск WhatsApp та витягував:

  • Бази даних шифрування, що містять історію повідомлень
  • Ключі протоколу Signal, що використовуються для наскрізного шифрування
  • Ідентифікатори облікового запису, включаючи номер телефону жертви
  • Дані резервного копіювання Google Drive для хмарних архівів повідомлень

Ці дані ексфільтрувалися на C2-сервер, що дозволяло зловмисникам клонувати WhatsApp-сесію жертви на контрольованому зловмисниками пристрої. З клонованою сесією зловмисник міг читати всі вхідні та вихідні повідомлення, видавати себе за жертву у розмовах, отримувати доступ до групових чатів та спільних медіафайлів, а також потенційно переходити до компрометації контактів жертви через соціальну інженерію.

Той факт, що було виявлено лише payload, спрямований на WhatsApp, не означає, що це була єдина можливість операції. Модульний фреймворк був побудований для прийому будь-якого завдання у будь-який час, що робить NoVoice гнучкою платформою для стеження, крадіжки даних або подальшої експлуатації.

Зв'язок із сімейством malware Triada

Дослідники безпеки виявили значну технічну схожість між NoVoice та відомим сімейством malware Triada -- добре задокументованою лінійкою Android-rootkit, що діє вже кілька років. Декілька конкретних індикаторів пов'язують ці дві загрози:

  • NoVoice встановлює системну властивість os.config.ppgl.status для позначення пристрою як скомпрометованого. Це відомий індикатор компрометації для Android.Triada.231 -- варіанту Triada, який використовує ідентичну властивість для відстеження стану інсталяції.
  • Як NoVoice, так і Triada забезпечують персистентність через підміну libandroid_runtime.so та перехоплення системних функцій, щоб кожен додаток виконував код зловмисника при запуску.
  • Загальна архітектура персистентності -- заміна системних бібліотек, watchdog-процеси, встановлення скриптів відновлення -- повторює патерни, встановлені попередніми варіантами Triada.

Чи є NoVoice еволюцією Triada, відгалуженням іншої групи, що використовує техніки Triada, чи повністю окремою операцією, що конвергувала до подібних методів -- залишається відкритим питанням для спільноти кіберрозвідки.

Значення для українських користувачів

Ця загроза має особливе значення для українських користувачів, і CyberPeople вважає важливим розглянути ризики у специфічному контексті України.

Застарілі пристрої та вікно вразливості

Ринок смартфонів в Україні значною мірою орієнтований на бюджетні та середні Android-пристрої. Домінують Xiaomi, Redmi та Samsung, при цьому багато користувачів купують доступні моделі або продовжують використовувати старі пристрої. За даними StatCounter для України, хоча більшість користувачів Android вже перейшли на Android 11 або новіші версії, помітний сегмент -- за оцінками, понад 15% українських користувачів Android -- залишається на Android 10 або старших версіях. Багато з цих пристроїв мають рівень патчів безпеки, який передує порогу травня 2021 року, необхідному для захисту від exploits NoVoice.

Економічний тиск через війну ще більше подовжив життєвий цикл пристроїв. Оновлення до нового смартфона не завжди є пріоритетом, коли на першому місці стоять більш фундаментальні потреби. Це створює структурно більшу поверхню атаки в Україні порівняно із західноєвропейськими ринками, де цикл оновлення пристроїв коротший.

Воєнний OPSEC та клонування WhatsApp-сесій

WhatsApp використовується в Україні для особистого спілкування та, в деяких випадках, для координації, що стосується чутливих питань воєнного часу. Можливість непомітно клонувати WhatsApp-сесію становить серйозну загрозу операційній безпеці:

  • Збір розвідданих: Противник з доступом до клонованих WhatsApp-сесій може відстежувати особисте листування військовослужбовців, волонтерів, держслужбовців чи журналістів.
  • Імпресонація та соціальна інженерія: З клонованою сесією зловмисник може видавати себе за жертву перед її контактами, потенційно витягуючи інформацію або поширюючи дезінформацію.
  • Картографування мережі контактів: Доступ до групових чатів розкриває організаційні структури, мережі контактів та комунікаційні патерни, які є цінними для розвідувальних цілей.

Хоча немає публічних доказів, які пов'язують Operation NoVoice з будь-яким державним актором, можливість, яку вона надає -- непомітне, персистентне стеження за WhatsApp, що переживає скидання до заводських налаштувань -- точно відповідає типу інструменту, який розвідувальні служби вважали б цінним в умовах конфлікту.

Вибір месенджера

Українським користувачам, які працюють із чутливою комунікацією, варто уважно оцінити свій вибір платформи для обміну повідомленнями. Signal пропонує сильніший архітектурний захист від клонування сесій, а секретні чати Telegram забезпечують шифрування, прив'язане до пристрою, яке неможливо відтворити на іншому пристрої. Проте стандартні хмарні чати Telegram мають деякі з тих самих ризиків, що й WhatsApp, у разі компрометації на рівні пристрою. Жоден месенджер не може захистити своїх користувачів, якщо базова операційна система була скомпрометована rootkit.

Відомі індикатори компрометації

Хоча McAfee не опублікував повний список усіх 50+ назв шкідливих додатків або деталей C2-інфраструктури, наступні індикатори були розкриті:

Технічні індикатори: - Наявність бінарного файлу CsKaitno.d на пристрої - Модифіковані системні бібліотеки libandroid_runtime.so або libmedia_jni.so - Встановлена системна властивість os.config.ppgl.status - Пакет, що містить com.facebook.utils, з кодом, який не відповідає легітимному Facebook SDK - Беззвучний аудіоресурс R.raw.novioce у встановлених додатках - Незрозумілий foreground-сервіс, що відтворює аудіо з нульовою гучністю

Поведінкові індикатори: - Неочікуваний розряд батареї від фонових сервісів - Незвична поведінка WhatsApp (завершення сесій, неочікувані сповіщення про вхід) - Перезавантаження пристрою без дій користувача - Завершення роботи або вимкнення додатків безпеки

Категорії додатків, що використовувалися як носії: - Програми для очищення та оптимізації телефону - Додатки для фотогалереї та управління зображеннями - Казуальні ігри

Усі виявлені шкідливі додатки видалено з Google Play. Google Play Protect автоматично позначить та видалить відомі додатки-носії NoVoice на пристроях, де він активований.

Як перевірити, чи ви постраждали

Крок 1: Перевірте рівень патча безпеки

Відкрийте Налаштування > Про телефон > Рівень виправлення системи безпеки Android (точний шлях залежить від виробника). Якщо ваш рівень патча безпеки -- травень 2021 року або пізніше, ваш пристрій не є вразливим до exploits, що використовуються NoVoice. На цьому можна зупинитися.

Крок 2: Перегляньте встановлені додатки

Якщо ваш рівень патча передує травню 2021, перегляньте встановлені додатки. Видаліть усі утилітарні додатки (програми для очищення, інструменти для галереї, казуальні ігри), які ви не впізнаєте, які не мають відгуків або були опубліковані невідомими розробниками. Зверніть особливу увагу на додатки, встановлені до квітня 2026 року.

Крок 3: Перевірте ознаки компрометації

Зверніть увагу на поведінкові індикатори, перелічені вище: незрозумілий розряд батареї, аномалії сесій WhatsApp, спонтанні перезавантаження або вимкнені засоби безпеки. На рутованому пристрої або пристрої з увімкненим режимом розробника перевірте наявність системної властивості os.config.ppgl.status.

Крок 4: Якщо скомпрометовано -- потрібна перепрошивка

Скидання до заводських налаштувань не видалить NoVoice. Rootkit знаходиться на системному розділі, який зберігається при скиданні до заводських налаштувань. Єдине надійне усунення -- повна перепрошивка з використанням офіційної прошивки від виробника. Цей процес відрізняється залежно від виробника пристрою:

  • Samsung: Використовуйте утиліту Samsung Odin з офіційною прошивкою з SamMobile або серверів Samsung
  • Xiaomi/Redmi: Використовуйте MiFlash з офіційним ROM з вебсайту Xiaomi
  • Інші виробники: Зверніться до документації підтримки виробника щодо процедур переустановлення прошивки

Після перепрошивки налаштуйте пристрій як новий, а не відновлюйте з резервної копії, яка могла бути створена, коли пристрій був скомпрометований.

Рекомендації щодо захисту

Для індивідуальних користувачів

  1. Тримайте пристрій оновленим. Переконайтеся, що рівень патча безпеки Android є актуальним. Пристрої з патчами від травня 2021 року або пізніше захищені від усіх відомих exploits NoVoice.
  2. Увімкніть Google Play Protect. Перевірте, чи він активний у налаштуваннях Google Play Store. Він забезпечує автоматичне сканування та видалення відомих шкідливих додатків.
  3. Ставтеся скептично до утилітарних додатків. Програми для очищення телефону, оптимізації батареї та подібні "обслуговуючі" інструменти є класикою серед носіїв malware. Сучасні версії Android виконують ці завдання самостійно.
  4. Перевіряйте видавців додатків. Перед встановленням перевірте репутацію розробника, кількість опублікованих додатків, автентичність відгуків та тривалість його присутності на Google Play.
  5. Розгляньте оновлення пристрою. Якщо ваш пристрій більше не отримує оновлень безпеки, він є загрозою. Бюджетні Android-пристрої від Xiaomi, Samsung та інших виробників, що отримують регулярні патчі, доступні за прийнятними цінами.

Для організацій

  1. Впровадьте Mobile Device Management (MDM). Забезпечте мінімальні вимоги до рівня патчів безпеки на всіх корпоративних та BYOD-пристроях, що мають доступ до ресурсів організації.
  2. Застосуйте whitelisting додатків. Обмежте перелік додатків, які можна встановлювати на пристрої з доступом до організаційних даних або комунікацій.
  3. Проводьте перевірки відповідності пристроїв. Регулярно перевіряйте, що пристрої працівників відповідають мінімальним стандартам безпеки перед наданням доступу до чутливих систем.
  4. Встановіть протоколи безпечної комунікації. Визначте, які месенджери затверджені для різних рівнів чутливості комунікації. Переконайтеся, що персонал розуміє: компрометація на рівні пристрою зводить нанівець шифрування на рівні додатку.
  5. Плануйте сценарії компрометації пристроїв. Майте готові процедури для перепрошивки та ротації облікових даних у разі підозри на компрометацію пристрою.

Загальна картина

Операція NoVoice нагадує, що проблема фрагментації екосистеми Android -- це не просто незручність, а криза безпеки. Exploits, що використовувалися NoVoice, були виправлені роки тому, проте мільйони пристроїв залишаються вразливими, оскільки виробники припинили надавати оновлення або користувачі їх не встановили.

Для фахівців з кібербезпеки технічна витонченість механізмів персистентності NoVoice -- багатошаровий підхід, що поєднує підміну системних бібліотек, watchdog-демони, перехоплення скриптів відновлення та маніпуляцію обробником збоїв -- демонструє зрілість технік мобільних rootkit, які, ймовірно, будуть відтворені та вдосконалені іншими зловмисниками.

Для українських користувачів зокрема ця кампанія підкреслює важливість ставлення до безпеки мобільних пристроїв як до складової особистої та організаційної операційної безпеки. В контексті, де противники активно шукають розвідувальні переваги, скомпрометований смартфон -- це не просто порушення приватності, а потенційний пролом у безпеці з реальними наслідками.

Додатки зникли з Google Play. Exploits виправлені в сучасних версіях Android. Але для 2,3 мільйона вже заражених пристроїв rootkit мовчить -- і скидання до заводських налаштувань його не змусить замовкнути.


Цей аналіз базується на дослідженнях McAfee Mobile Research Team та публікаціях BleepingComputer, CyberInsider, Cybersecurity News та інших джерел. CyberPeople оновлюватиме цю статтю в міру появи додаткових технічних деталей, IOC або інформації про атрибуцію.

Джерела: - McAfee Labs -- Operation NoVoice: Rootkit Tells No Tales - McAfee -- Operation NoVoice: Android Malware Found in 50+ Apps - BleepingComputer -- NoVoice Android malware on Google Play infected 2.3 million devices - CyberInsider -- Android rootkit NoVoice infects 2.3 million devices - Cybersecurity News -- NoVoice on Google Play with 22 Exploits

Будьте попереду загроз

Щотижневий огляд кібербезпеки у вашій поштовій скриньці.

Автор CyberPeople

Попередня Як північнокорейські хакери викрали $285 млн з Drift Protoco...

Коментарі

Коментарів ще немає. Будьте першим!

Залишити коментар

Ваша електронна адреса не буде опублікована.