Марк Дауд (Mark Dowd) из австралийской компании Azimuth Security обнаружил серьёзную уязвимость в «сверхзащищённом» смартфоне BlackPhone. Она позволяет перехватывать сообщения, удалённо считывать список контактов, определять местоположение абонента и компрометировать приватные данные множеством других способов.
Проект BlackPhone был основан Silent Circle и Geeksphone в ответ на массу свидетельств о тотальной слежке за абонентами сотрудниками АНБ и других спецслужб по всему миру. Сноуден, Ассанж и другие хактивисты уже не первый год удивляют общественность всё новыми подробностями о работе PRISM и аналогичных систем мониторинга трафика.
Ответные меры обеспечения приватности и анонимности базируются на шифровании данных. Однако чисто программное решение часто оказывается бесполезным на практике. Что толку от защищённого приложения, если оно работает в среде уязвимой ОС и на типовой аппаратной платформе с открытым доступом к критичным данным?
Одной из попыток создать полностью защищённое устройство стал BlackPhone – смартфон с функцией шифрования голосовых вызовов, текстовых сообщений, MMS и развитыми средствами противодействия отслеживанию действий пользователя в сети.
BlackPhone работает под управлением PrivatOS – модификации ОС Android с обилием интегрированных средств для защиты данных. Создали его в компании SGP Technologies – объединении двух других технологических стартапов.
Первым участником стала Geeksphone – испанская фирма, специализирующаяся на разработке программных решений для мобильной телефонии с открытым исходным кодом.
Средства шифрования для BlackPhone писали в Silent Circle, соучредителями которой стали такие известные криптографы, как Филипп Циммерман (Philip Zimmermann) и Джон Каллас (Jon Callas).
Совместными усилиями смартфон был выпущен во второй половине прошлого года. По текущему курсу BlackPhone стоит свыше сорока тысяч рублей. Он позиционируется как максимально защищённый от прослушивания и перехвата данных смартфон, позволяющий выполнять анонимный поиск в интернете и предупреждающий о подключении к сомнительным точкам доступа примерно также, как это делает CryptoPhone 500.
Однако стойкие криптографические алгоритмы и авторитет разработчиков, как это уже часто бывало, оказались сведены на нет кривой реализацией единственного приложения. В ходе аудита Azimuth Security оказалось, что для выполнения удалённого НСД достаточно знать идентификатор пользователя в системе Silent Circle или номер его телефона.
Далее злоумышленник отправляет на него сообщение, содержащее управляющие команды. Его получает приложение SilentText (также доступное в Google Play), которое использует библиотеку libscimp.
Она содержит уязвимость по типу «утечка памяти», поэтому модифицированное сообщение обрабатывается как локальная команда с правами текущего пользователя – владельца смартфона.
В блоге компании Марк Дауд пишет, что таким образом можно незаметно делать практически что угодно: получить и расшифровать сообщения, угнать аккаунт SilentCircle, считать данные GPS и определить местоположение жертвы, считать и записать любой файл с карты памяти и внешних устройств, если они подключены к BlackPhone.
Можно даже создать скрипт и прописать его на автозапуск, гарантированно выполняя любой код при загрузке системы. Таким образом можно повысить привилегии до высшего уровня.
Марк отмечает, что уязвимость, получившая название BlackPwn даёт вомзожность переключиться в режим отладки и получить даже больший контроль над криптофоном, чем разработчики изначально предлагают его легитимному владельцу.
Марк Дауд принадлежит к группе «этических хакеров» и не пытается погреть руки в пламени чужого пожара. Поэтому после обнаружения уязвимости он сообщил о ней разработчикам приватным письмом. К чести Silent Circle, они сразу признали проблему и выпустили исправление уже через сутки. Для сравнения: Microsoft обвиняет Google в том, что в рамках Project Zero последняя публикует отчёты о найденных уязвимостях слишком быстро – спустя 90 дней после их обнаружения и независимо от наличия выпущенных исправлений.