Інцидент із бібліотекою EngageLab SDK, популярним стороннім набором для push-сповіщень і мобільної аналітики, наочно продемонстрував, наскільки небезпечними можуть бути помилки в SDK для всієї екосистеми Android. Виявлена фахівцями Microsoft Defender Security Research Team уразливість відкривала шлях до обходу захисної моделі Android і несанкціонованого доступу до конфіденційних даних користувачів, включно з власниками криптовалютних гаманців.
Масштаб проблеми: десятки мільйонів установок Android-додатків
EngageLab SDK позиціонується як платформа для доставки персоналізованих і своєчасних push-сповіщень, що працюють на основі поведінкових даних користувача. Завдяки простій інтеграції цей SDK активно застосовувався в широкому спектрі Android-додатків, зокрема в цифрових та криптовалютних гаманцях.
За оцінкою Microsoft, застосунки криптовалютних і цифрових гаманців із уразливою версією EngageLab SDK загалом були встановлені понад 30 млн разів. Якщо додати нефінансові програми, що також використовували вразливий SDK, загальна кількість установок перевищує 50 млн. Назви конкретних додатків не розголошуються; відомо лише, що всі виявлені програми були або оновлені, або видалені з Google Play.
Про уразливість було повідомлено EngageLab у межах процедури відповідального розкриття в квітні 2025 року. Виправлення з’явилося в релізі EngageLab SDK 5.2.1, опублікованому в листопаді 2025 року. Проблема стосувалася гілки SDK, яка починається з версії 4.5.4, тож усі попередні версії потребують оновлення.
Як працювала атака: intent redirection і обхід Android sandbox
Intents та Android sandbox: коротке пояснення
Android використовує механізм intent — це спеціальні «повідомлення», за допомогою яких компоненти застосунків (activity, service, broadcast receiver тощо) можуть запускати дії один в одного. Паралельно з цим працює модель ізоляції застосунків — Android sandbox. Кожен додаток виконується у власному ізольованому середовищі, що обмежує доступ до даних інших програм без чітко наданих дозволів.
Мета sandbox проста: навіть якщо на пристрої є шкідливий застосунок, він не повинен мати можливості читати файли інших програм, отримувати доступ до їхніх внутрішніх компонентів або вкрадати дані без відома користувача й системи дозволів.
Intent redirection: використання «довіреної» програми як проксі
Уразливість у EngageLab SDK належить до класу intent redirection. Це ситуація, коли застосунок із більшими правами мимоволі дозволяє зловмиснику перенаправити або модифікувати intent, що обробляється менш захищеним чином. Якщо розробник неправильно перевіряє джерело та вміст intent, недобросовісний додаток може змусити «довірену» програму виконати дію, на яку сам зловмисник прав не має.
У випадку EngageLab SDK достатньо було встановити на пристрій жертви окремий шкідливий застосунок, який потім використовував програму з уразливим SDK як проксі. Через некоректну обробку intent відкривалася можливість доступу до експортованих компонентів і, потенційно, до даних із внутрішніх директорій додатків, включаючи журнали та файли, критично важливі для криптовалютних гаманців.
Microsoft зазначає, що на момент публікації немає підтверджених випадків реальної експлуатації цієї уразливості. Однак характер помилки та масштаби розповсюдження SDK роблять цей інцидент показовим прикладом того, як одна помилка в бібліотеці може поставити під загрозу значну частину мобільної екосистеми.
Ризики сторонніх SDK для криптовалютних гаманців та мобільної безпеки
Сучасні фінтех-сервіси й мобільні криптогаманці майже завжди покладаються на низку сторонніх SDK: для аналітики, монетизації, push-повідомлень, A/B‑тестування. Усі ці компоненти фактично стають частиною ланцюга постачання програмного забезпечення (software supply chain).
Проблема полягає в тому, що такі залежності часто залишаються «чорним ящиком» навіть для самих розробників застосунків. Одна критична помилка в популярній бібліотеці здатна миттєво масштабуватися на мільйони пристроїв. Історично подібні атаки на ланцюг постачання — від компрометації оновлень легітимного ПЗ до вбудовування шкідливих компонентів у SDK — вже неодноразово призводили до масових інцидентів у різних екосистемах.
Висока вартість даних у криптовалютних гаманцях робить цей сегмент особливо привабливим для зловмисників. Будь-яка слабка ланка в сторонньому SDK для таких додатків може мати масштабні наслідки: від витоку сесій та ключів до повної компрометації коштів користувача.
Рекомендації з кібербезпеки для розробників Android-додатків
Розробникам, які використовують або використовували EngageLab SDK, доцільно вжити такі заходи:
1. Негайне оновлення SDK. Перейти на версію 5.2.1 або новішу в усіх продуктивних і тестових збірках. Перевірити, щоб старі гілки коду, що ще підтримуються, також використовували виправлену версію.
2. Інвентаризація залежностей. Зібрати повний перелік сторонніх SDK і бібліотек, що інтегровані до застосунку, включно з їхніми версіями. Це фундамент для подальшого управління вразливостями та формування внутрішнього Software Bill of Materials (SBOM).
3. Безпечна обробка intent. Переглянути логіку роботи з intent: мінімізувати використання експортованих компонентів, перевіряти джерело запитів, застосовувати явні (explicit) intents там, де це можливо, і не покладатися на неконтрольовані припущення щодо довіри між застосунками.
4. Регулярний аудит сторонніх SDK. Впровадити процес моніторингу безпекових бюлетенів постачальників, автоматизовані перевірки на відомі уразливості та статичний аналіз коду інтеграції. Обмежувати кількість SDK до справді необхідного мінімуму.
Поради користувачам Android та власникам криптовалютних гаманців
Користувачам Android, особливо тим, хто зберігає значні обсяги цифрових активів, варто посилити власну цифрову гігієну:
1. Регулярно оновлювати додатки. Увімкнути автоматичні оновлення й перевіряти, щоб фінансові та криптовалютні сервіси завжди працювали на актуальних версіях.
2. Використовувати лише перевірені джерела. Встановлювати застосунки з офіційних магазинів, уникати завантаження APK із неперевірених сайтів, уважно ставитися до клонів популярних гаманців.
3. Контролювати дозволи. Звертати увагу на запитувані дозволи: фінансові додатки не повинні просити надмірний доступ до контактів, SMS, геолокації чи сторонніх файлів без зрозумілої причини.
Історія з EngageLab SDK демонструє: навіть «невидима» для користувача бібліотека для push-повідомлень може стати критичним елементом безпеки цілого класу застосунків. Чим більш цінні дані обробляє додаток, тим жорсткішими мають бути вимоги як до вибору сторонніх SDK, так і до процесів управління залежностями. Розробникам варто системно переглянути архітектуру безпеки та політики інтеграції сторонніх компонентів, а користувачам — не відкладати оновлення мобільних додатків, особливо пов’язаних із фінансами та криптовалютами, і свідомо ставитися до захисту своїх цифрових активів.