ADB vs Spy Cam
Как проверить, ведет ли какое-нибудь приложение на Android-смартфоне фото- или видеорепортаж, хотя ему это ни разу ни к чему? Нижепредлагаемый вариант совсем не идеален, но не требует «рута» или кастомной прошивки.
Что требуется установить:
- ADB (например, в составе Android SDK Platform Tools);
- драйвер для телефона (при необходимости).
Включаем на телефоне режим отладки через USB и подключаем телефон к USB-порту компьютера.
Открываем командную строку в каталоге, в который установились «тулзы».
Проверяем, что подключение успешно:
adb devices
Запускаем оболочку:
adb shell
Затем вводим следующие «магические» символы:
while true; do ps `while ! (dumpsys media.camera | grep -E "PID") do done | grep -o "[^: ]*$"` | grep -o "[^S ]*$" ; date; sleep 1; done
И ничего не происходит :-) Пока что-то не решит немного поснимать :-)
Означенный «магический» набор символов запускает с максимально возможной скоростью мониторинг доступа к сервису media.camera. Если камера не активна, dumpsys выдает примерно такое:
А если камера понадобилась, то появляется такое:
grep-ы проверяют наличие »PID» и, если таки эта цепочка есть, то вырезают из строки номер процесса и скармливают его команде ps, которая выводит данные об этом процессе, а еще один grep вырезает его имя. После обнаружения активности камеры делаем паузу на секунду, чтобы сообщения не сыпались слишком часто.
Простейший пример — после запуска штатного приложения смартфона для фото/видеосъемки начинают с интервалом в 1 секунду сыпаться сообщения с именем процесса и датой/временем:
»
Но есть и более хитрые приложения, их можно найти по ключевому слову «spy cam» (использующие трюк, например, с однопиксельным превью (http://www.ez.ai/2014/05/exploring-limits-of-covert-data.html)). Подобное творение при запуске съемки сворачивается и ведет репортаж, но сообщения сыпятся исправно:
Но ведь ничто не мешает реализовать подобную функциональность и в приложении с более безобидным названием (https://www.zdnet.com/article/this-scary-android-malware-can-record-audio-video-and-steal-your-data/), а разрешения — ну так случаи всякие бывают. Да и «легальное» приложение может вести репортаж, когда ему заблагорассудится (я встречал упоминание об одном таком случае).
Способ проверен на смартфонах Huawei SCL-L01 и Huawei G700-U20.