суббота, 28 июля 2012 г.

О механизмах блокирования Android-устройств

О механизмах блокирования Android-устройств - I

Большинство существующих инструкций и процедур, предписывают строгое соблюдение правил при расследовании инцидентов в отношении мобильных устройств. Все они варьируются на основе функциональных особенностей таких устройств, связанных архитектурными подходами к управлению потоками данных, а также пользовательскими сценариями. Наиболее популярные пункты таких предписаний обычно гласят, что устройство должно быть переведено в состояние, при котором оно не сможет взаимодействовать с беспроводными сетями или же будет подключено к постоянному источнику питания, (стирание данных с устройства при отсутствии питания считается одной из практик обеспечения защиты информации). Несмотря на это, общие подходы к расследованию инцидентов очень сильно меняются от платформы к платформе, от очередного революционного GUI к другому. Тем более это актуально в условиях набора неизвестного ПО, которое может включать вредоносный код, например, удаляющий данные при отсутствии подключения к серверу управления. Данная статья рассматривает защитные механизмы Android-платформы по блокированию устройств, известные как «Password Lock Protection» и «Pattern Lock Protection», которые могут создавать препятствия при доступе к устройствам, и требуют специального подхода к ведению процесса расследования при соответствии процедурам.

 

 

 

Password Lock Protection

Данный защитный механизм известен давно и представляет собой защиту на основе пароля, введённого пользователем. Подобный механизм может осуществлять как обычную защиту от доступа к устройству, так и расширяться, увеличивая значимость обладания последним. Наиболее известные примеры приведены ниже: • блокирование по истечению определённого (заданного) временного интервала; • удаление данных после определённого (заданного) количества неудачных попыток ввода пароля; • шифрование файловой системы на основе ключей, сгенерированных на основе пароля. Пароли для Android-устройств создаются с применением буквенно-циферного множества символов в отличие от подвида, известного как «PIN Lock Protection», который ориентирован на применение только цифрового множества символов.

 

Pattern Lock Protection

Этот механизм блокирования устройств известен более высокой степенью адаптации под мобильные устройства (имеются в виду touch или multi-touch устройства, естественно) нежели парольная защита, т.к. ввод спецсимволов в купе с редуцированной клавиатурой понижают скорость разблокировки при частом блокировании экрана, а через некоторое время и само желание его блокировать. Последнее часто приводит, к тому, что пользователи начинают применять более простые пароли, не отвечающие требованиям безопасности (сложности). В данном механизме защиты для разблокирования пользователи «рисуют» шаблон (см. рисунок ниже), созданный ранее, и если он корректен, то процесс разблокировки является успешным

 

Способы противодействия

 

Поддержание активности устройства

Для Android-устройств разброс границ типичного временного интервала, по истечению которого устройство блокируется с использованием парольного механизма, обычно варьируется от нескольких секнд до 15 минут. Хоть это и довольно короткий промежуток времени, но его может вполне хватить для получения полного доступа к устройству без необходимости ввода пароля. Поэтому, если устройство находится в этом состоянии, и необходимо получить к нему доступ, то первым делом нужно увеличить временной интервал появления экрана блокировки. Типичное название раздела, где располагается подобная настройка, может иметь название «Display  Screen Timeout/Lock». В зависимости от локализации и модели телефона, оно может варьироваться, ровно также как и наличие элемента «Отключить тайм-аут», который может быть заменён на элемент, соответствующий максимальному временному значению. В этом случае, останется только периодически подвергать устройство минимальной активности, однако следует иметь в виду, что данная активность не должна влиять на запуск/остановку процессов и программ, это может привести к изменениям в системе, которые не смогут быть учтены и тем более отражены в протоколах. Учитывая, что последнее является обязательным пунктом, то, даже факт отключения записи времени блокирования, да и, в принципе, любая совершаемая активность должны протоколироваться. Также интересны опциональные настройки «Enable USB debugging» и «Stay awake», первая из которых позволяет получать доступ для извлечения данных, в то время как вторая, не позволит подключенной к зарядному устройству Android-платформе уходить в т.н. «спящим режим», препятствуя, таким образом, появлению экрана блокировки. Также первая настройка тесно связана с консольной утилитой «Android Debug Bridge (ADB)», которая позволяет производить установку и удаление приложений, копирование файлов с/на устройства(-о), а также извлечение дополнительной информации о логах или запущенных процессах.

 

Легальное блокирование

Около года назад исследователь по информационной безопасности Thomas Cannon [http://goo.gl/skVol], разработал механизм, который легально позволяет блокировать появление экрана блокировки, и основан на использовании стандартного API, доступного для разработчиков. Он же применяется и для отключения возможности блокировки экрана при наступлении таких событий, как входящие или исходящие звонки.

 

Разблокировка посредством Google-аккаунта

Данный механизм создавался на случай превышения лимита (как правило, 10) неудачных попыток ввода пароля/пина на устройстве. При наступлении такого события появляется диалог, который запрашивает почтовый логин и пароль, с которых было зарегистрировано устройство, с целью сброса текущего способа блокировки. Интересно, что данный механизм не требует подключения к сети, поскольку Android-устройства кэшируют эти данные и, соответственно, сравнивают их с введёнными без обращения в сеть. Разблокировка при наступлении «особого» события Как правило, таким событием может быть постановление суда, обязующее корпорацию Google разблокировать устройство. Несмотря на высокую вероятность данного события, Google требует онлайн-присутствия устройства, что может повлечь за собой определённые риски, стирания или модификации хранимых данных. Здесь правильным с точки зрения методик, принятых в криминалистике, будет использование WiFi канала вместо EDGE/3G. Это позволит технически прибегнуть к протоколированию трафика с применением утилит, типа сниффер, с целью организационно отметить факт происходящих изменений в процессе разблокировки либо последующего изучения полученных данных.

 

Отпечатки пальцев

Известна научная работа ряда авторов - Adam J. Aviv, Katherine Gibson, Evan Mossop, Matt Blaze, and Jonathan M. Smith - «Smudge Attacks on Smartphone Touch Screens» [http://goo.gl/XvULn], согласно которой были проведены эксперименты по изучению экранов Android-устройств в трёх состояниях: 1. «из коробки»; 2. после некоторого количества использования механизма разблокирования «Pattern Lock Protection»; 3. после попыток удаления следов пользования данным механизмом. Данный эксперимент представляет собой идеализированную модель, т.к. не была оценена степень влияния клавиатуры как неотъемлемого элемента использования устройства. На практике это может привести к неточному извлечению результатов в определении направлений пользовательского рисунка при разблокировании устройства (механизм «Pattern Lock Protection»). Основная модель атаки подразумевает собой вариант фотографирования экрана с повышенной контрастностью. Также работа отмечает, что попытки удаления следов пальцев эффективно противодействуют данной модели атаки.

 

 

 

О механизмах блокирования Android-устройств - II

 

Предыдущая статья о механизмах блокирования Android-устройств содержала анализ механизмов блокирования, характерных для платформы Android. Механизмы, известные как «Pattern Lock» и «Password Lock» были также рассмотрены в статье Forensics Focus. Оба механизма могут быть использованы в качестве способов обойти защитные механизмы Android-устройств при криминалистическом исследовании.

 

Механизм блокировки «Pattern Lock» представляет собой множество жестов, которые обладатель устройства может совершить для его разблокировки. Такое множество содержит 895824 комбинаций возможных жестов. Как было сказано в прошлой статье, набор перемещений между 9 точками при создании пароля-жеста, всего лишь представляет числовую комбинацию, но все же лучше, чем 4-значный PIN-механизм. Эта числовая комбинация программно обычно выглядит как строковая комбинация «1→2→3→4→5→6→7» с отсчётом от нуля в шестнадцатеричном (hex) виде, т.е. «0х00→0х01→0х02→0х03→0х04→0х05→0х06». Однако, при хранении этой комбинации используется hash-значение от hex-представления, получаемое при применении алгоритма SHA1, например «0×82 0×79 0x0A 0xD0 0xAD 0xEB 0×07 0xAC 0x2A 0×78 0xAC 0×07 0×03 0x8B 0xC9 0x3A 0×26 0×69 0x1F 0×12». Итоговый результат (хеш-значение) хранится в файле «/data/system/gesture.key».

 

Механизм блокировки «Password Lock», в отличие от предыдущего, основан на применении пользователем символов, состоящих из набора цифр, букв и специальных символов, количество комбинаций которых на порядки больше, чем предыдущее, поэтому создание словаря может не дать эффективного решения задачи обхода механизма. Здесь подход со стороны платформы к хранению и размещению пользовательского парольного файла ничем не отличается от описанного выше способа хранения: Итоговый результат (хеш-значение), полученный от применения алгоритма SHA1, хранится в файле «/data/system/pc.key».

 

Так как указанный файл расположен во внутреннем хранилище устройства (не на карте памяти), в папке «data/system», то по умолчанию к нему нет прямого доступа. Чтобы к нему добраться, потребуется утилита ADB, права root на доступ к файловой системе и активированная опция «USB Debugging mode». Получив возможность взаимодействовать с обоими файлами «gesture.key» и «pc.key», можно осуществлять подмену файлов на заранее заготовленный файл с известным паролем или набором жестов, либо же удалить эти файлы, сняв таким образом защиту устройства.

 

 

Специалистами Forensic Focus было потрачено всего несколько минут, чтобы получить словарь всех комбинаций для обхода механизма «Pattern Lock» от 1234 до 987654321. Сам словарь можно скачать по ссылке.

Опубликовано [http://advancedmonitoring.ru/article]

 

Комментариев нет:

Отправить комментарий