# NOIR сканирует Android-приложения через adb: куда утекают данные и как откатить

> 2026-11-02 · AI Release · @ai_release1

> #adb #Android #приватность #аудит #open #безопасность #InfoSec #утечкиданных

### ⚡ Главное за 5 секунд - Verlintas выпустил NOIR v0.1.1 — консольный аудит Android-приложений с компьютера: права, эндпоинты из APK, риск-скор. - Портативные сборки под macOS, Windows 10/11 и Debian/Ubuntu, Java 17 уже внутри, adb и jadx докачиваются при первом запуске. - Нужен кабель и включённая отладка по USB; root и интернет не требуются, но и полноту отчёта никто не гарантирует. ### 🔍 Что случилось Проект Verlintas/NOIR добрался до релиза 0.1.1. В репозитории 20 коммитов и три portable-архива: `noir-v0.1.1-macOS-portable.zip`, `noir-v0.1.1-Windows-portable.zip`, `noir-v0.1.1-Linux-portable.zip` плюс `SHA256SUMS.txt`. Внутри свой JRE, так что Java ставить не надо: распаковал, ткнул в `Start NOIR.command`, `Start NOIR.bat` или `Start-NOIR.sh` — и поехало. Механика такая. По adb тулза читает список пакетов и их права. URL из `dex` выдёргивает прямо на телефоне через `unzip` + `strings` — обратно на компьютер уходят килобайты, а не целый APK. Дальше разбирает бинарный `AndroidManifest.xml`: ищет экспортированные компоненты без permission, cleartext-трафик, backup, debuggable, targetSdk. Отдельно ловит общие UID вроде `android.uid.system` и показывает, какие пакеты сидят на одном наборе прав. Риск-скор считает по вендору и категории — телеметрия, реклама, локация, клавиатуры. Права переводит в человеческое: «может достать локацию/контакты/микрофон», и пары «данные → домен» сводит в одну таблицу. Первый запуск — мастер на два-три `y/n`. Он проверит `adb` (`noir doctor` выдаёт примерно такое: `platform Mac OS X aarch64 java 17.0.19 adb Version 37.0.1-15733141 device 178b0d2f`), предложит скачать недостающее в `~/.noir/tools`, подождёт устройство до 180 секунд. Потом спросит про «эти 19 безопасных действий» — и на `y` выполнит их, записав файл откатa. Команда `deep` тянет один APK локально и через jadx ищет `Runtime.exec`, `setApplicationEnabledSetting`, `DexClassLoader`, `MediaProjection`. ### 🧠 Наш разбор Системные дашборды приватности давно показывают, кто просил камеру. Они не показывают, куда уходят данные. Вот эта связка «право → конкретный домен» и есть ниша NOIR. Наша оценка: это не замена настройкам Android, а инструмент для тех, кто ставит APK со стороны и хочет понимать, что подписал. Для пользователя выигрыш простой: один прогон перед установкой сомнительной сборки, без root, без отправки отчёта наружу — README прямо обещает «не, не загружает ничего». Деньги: ноль. Но риск-скор — эвристика по имени пакета и домену. Она ошибается в обе стороны, и я бы не удалял приложение только потому, что цифра красная. Кто проигрывает? Пожалуй, никто всерьёз. Инструмент локальный, в массы не пойдёт, а телеметрии от его существования не убудет. Мы считаем, что главная ценность тут не в скоринге, а в манифест-слое и откате: именно этого не хватает ручному разбору через `aapt`. ### ⚠️ Чего мы не знаем Точность неизвестна. В README нет ни одного замера ложных срабатываний, нет и опубликованной формулы риск-скора — только список факторов. Непонятно, ловит ли `strings` адреса, которые собираются в рантайме (Remote Config, OkHttp-интерцепторы). 20 коммитов — проект очень молодой, стороннего аудита кода не было. И да, «19 безопасных действий» стоит прочитать глазами до нажатия `y`. ### 💬 О чём спорить - Жать ли `y` на 19 автоматических действий в инструменте, у которого 20 коммитов и нет внешней проверки кода? - Красный риск-скор по имени пакета и домену — достаточный повод снести приложение или только повод присмотреться? - Локальный скан без сети и root — это честный компромисс или ручной разбор манифеста всё равно надёжнее? **Прогноз:** в течение квартала у проекта появится либо публичное описание методики скоринга, либо issue-тред с разбором ложных срабатываний. Это первый вопрос, который задают любому аудитору приватности. **Источник:** GitHub / Verlintas/NOIR

[Источник](https://github.com/Verlintas/NOIR)
