ZeroNights 2012. Впечатления

В мире проводится, как минимум, около 100 различных конференций по информационной безопасности, поднимающих технические вопросы и просто рассказывающих о продуктах, глобально нацеленных на повышение состояния безопасности. Однако, в России такого формата конференций крайне мало, именно поэтому было принято решение оценить уровень сугубо технической конференции Zeronights - молодой по меркам остальных, существующей всего два года. Естественно, чтобы прочувствовать атмосферу подобного события необходимо там оказаться ещё раз, и мы уверены, что оно будет того стоить.

До начала конференции на просторах необъятной паутины ходили домыслы и толки, какой из двух дней окажется хардкорнее другого. Считалось, что первый, потому что второй был абсолютно мобильным. Авторитетно можно заявить, что удались оба дня. Атмосферу организаторам удалось выдержать на высоком уровне, полудомашнем-полукорпоративном, что способствовало активному знакомству и общению.

Дабы не затягивать со вступительным словом, расскажем о докладах, которые удалось посетить, и которые оказались наиболее запоминающимися. Часть из них уже можно найти здесь: http://www.slideshare.net/DefconRussia, например, доклад Евгения Соболева из ЗАО "ПМ" на тему "Типичные ошибки ИБ в корпорациях и крупных организациях" Сама же программа мероприятия расположена на официальном сайте http://2012.zeronights.ru/includes/program.pdf.

День первый

Ключевой доклад: "OPSEC: Тюрьма - это для wuftpd", The Grugq.

Доклад, как это и принято, рассчитан на рекламу и поднятие интереса аудитории. Подобного рода докладов ранее уже было довольно много, например, того же Брюса Шнайера или У.Диффи (да-да-да, того самого, что Диффи и Хеллман). Основная мысль доклада состоит в том, что надо чётко разделять две свои личности, криминальную и обычную, и не фейлить, как это случается у других, зачастую из-за EXIF'ов или "студентов", которые пристают с "покажи-расскажи-объясни". Докладчик привел массу примеров, "кто" … "как" … "когда" … за "что" и вследствие "чего". Конечно, не Митник, иначе можно было бы получить бонусную книгу с автографом, но тоже неплохо.

"Прикладная анти-форензика: руткиты, уязвимости ядра и все-все-все", Дмитрий Олексюк (aka Cr4sh).

Сугубо технический доклад высокого уровня, первые 20 минут автор долго рассказывал в деталях массу интересных вещей, правда потом сказал, что вообще это всё работает только под XP… что вызвало нервное похихикивание и синхронный "facepalm". Тем не менее, в историческом плане идея была обрисована конкретно и было понятно, почему именно она взята за основу. Основной упор делался на попытки записать в реестр любые данные, чаще бинарные, т.к. статистически их обнаружилось больше, чем строковых. Эти попытки сопровождались занесением в реестр тысяч и даже десятков тысяч ключей, не просто мёртвых, но в текущей версии Windows просто ненужных и доставшихся в наследство от предыдущей. Если нам не изменяет память, то большая часть идей автора при реализации под новые ОС потерпела неудачу в случае платформы x64 (вплоть до буткитов), но автор не сдается, продолжает работать и предлагает стабильные решения под Windows x32.

"Уязвимости подсчета ссылок в ядре Windows: практический анализ", Mateusz 'j00ru' Jurczyk.

Еще один доклад с большим количеством технических деталей оказался более удачным в практическом смысле по сравнению с предыдущим, и авторам удалось разрешить проблемы x64-платформы. Основная идея состояла в том, что есть варианты атак, при которых можно разыменовать ресурс, но при этом счётчик подобных ресурсов не декрементируется, и в подобные ресурсы, точнее, по указателям на них, можно располагать свой (не-)вредоносный код.

В это же время проходил воркшоп Артема Гавриченкова "Как не надо писать приложения, основанные на протоколе TCP: взгляд оператора сети".  На наш взгляд, это очень полезный для разработчиков доклад.

Много рекламы сервиса Qrator было во время доклада "DDoS-атаки 2012: искусство выживания" - и рассказ вылился в обсуждение проблемы с Александром Ляминым и остальными участниками. Давались дельные рекомендации по настройкам.

Своё виденье на то, "Как бы я атаковал корпоративную сеть крупной корпорации", было представлено Александром Поляковым примерно, так: "ломаем партнера, далее перехват паролей - при его сбросе, восстановлении, создании пользователя".

День второй

Два докладчика с темой "Темная и светлая сторона (не) безопасности iCloud", Андрей Беленко и Дмитрий Скляров, в своём стиле представили материалы по извлечению данных из новых версий iOS. Особо не делая качественной оценки криптостойкости алгоритмов, точнее, реализаций, они отметили, что ключей шифрования стало больше: к хардварным ключам добавились мастер-ключи и , классовые ключи. - Это распределение по типу данных, когда, если говорить образно, контакты шифруются на одном классовом ключе, календарь на другом. Докладчики отметили, что в iCloud хранится много данных, к которым можно получать доступ через web, однако, если туда сохраняется резервная копия содержимого устройства, то получить доступ к этой резервной копии нельзя. Сохраняются три последних бэкапа, а восстановление данных возможно только на чистое устройство.

Авторы отметили, что они сделали извлекалку для iOS и для iCloud. В последнем случае они попытались воссоздать алгоритм работы самого телефона. Текст доклада можно найти здесь: https://viaforensics.com/android-forensics/icloud-insecurity-examining-ios-data-backup-cloud.html.

Следующий докладчик, Алексей Трошичев, предложил тему: "Mitm нападение на iOS. Техника и последствия", гармонично дополнив ряд пробелов в знании на тему iOS-безопасности. Он отметил, что данные, зашифрованные на устройстве, не зашифрованы в облаке. Правда, из предыдущего доклада следовало, что часть данных вообще могла быть дважды зашифрована, из-за раздельных классовых ключей и ключа "data encryption"). В целом автор доклада сделал упор на то, что не так сложно получить fake-сертификат разработчика и слушать трафик. Причем они якобы пытались в первый день ZeroNights кого-то послушать и нашли всего лишь 1,5 человека с iOS.

В это же время проходил ещё доклад "The Diviner - Прорыв в цифровом ясновидении - Как получить доступ к исходному коду и серверной памяти ЛЮБОГО приложения" от Shay Chen. Если говорить кратко, то предпосылками были две вещи:

Трем четвертям всех сканеров уязвимостей, как сигнатурным верификаторам, присуща "шаблонность".

Три четверти всех фаззеров лишены аналитических способностей.

И, собственно, логичный вывод: с целью уменьшения "monkey work" переходим на использование DIVINER, который, кстати, расположен по адресу: http://code.google.com/p/diviner/. Используя лог ZAP, можно построить схему взаимосвязи web-страниц, которая описывает использование переменных, задаваемых на разных страницах. Продукт сравнительно молодой (всего 1,5 года), но вызывает интерес как у разработчиков, так и аудиторов.

Довольно интересным показался доклад про ложную безопасность Android под названием "За кулисами Android: варианты атаки и радикальные меры защиты"" от Сергея Карасикова. Первая половина была исключительно техническая, её детали можно найти на http://habrahabr.ru/post/160035/. По сути, докладчики предложили вариант скрытого зашифрованного раздела для Android, правда для этого нужен root, что было плохо, по их словам в начале доклада, и внезапно оказалось хорошо в конце доклада. Сказать, что были рассмотрены какие-то варианты атак, нельзя, ибо варианты: "на вас напали с целью отжать телефон" или "вот стучатся в дверь маски-шоу и надо срочно запаролиться", всё-таки специфичны. Интересно утверждение, что "пользование библиотекой Android для шифрования может закончиться тем, что если накроются данные, их нельзя будет восстановить, а в случае предлагаемого решения успех восстановления данных на 90% гарантирован". Ну, что ж, поверим им на слово. 

В это же время проходил воркшоп по теме "Предупрежден - значит вооружен: AddressSanitizer и ThreadSanitizer" от Александра Потапенко и Дмитрия Вьюкова о двух решениях для поиска ошибок типа Buffer Overflow, Use After Free, Race Condition в чужом C-коде, что может заинтересовать и аудиторов и разработчиков, причем в равных соотношениях. Решения находятся здесь: http://code.google.com/p/address-sanitizer/ и здесь: http://code.google.com/p/thread-sanitizer//

Алиса Шевченко, с докладом "История о несуществующих уязвимостях нулевого дня, стабильных эксплойтах для бинарных приложений и пользовательском интерактиве" затронула, в основном, тему DLL-injection с различными вариантами доставок до конечного целевого объекта под управлением Windows. Так, например, была рассмотрена классика ".docx + .dll" с вариациями, рассказано, куда что запрятать, чтобы не было видно в архиве или всё распаковывалось в одну временную рабочую папку, чтобы файлы лежали в одном месте. Под конец, докладчик в своем фирменном стиле поблагодарила своих стажёров за всю выполненную работу и пригласила всех желающих. J

Первый доклад с фасттрека "Где моя тачка, чувак?", от Дмитрия "chipik" Частухина и Глеба Чербова. Они наглядно показали, что управление посредством СМС-устройств слежения за детьми или машинами без пароля или с нестойким паролем -- это крайне плохо. По их словам, нашлось то ли 40, то ли 60 процентов незапароленных и слабопарольных устройств (пароли типа 1234\123456), что и наглядно было показано, как машина, стоящая на парковке, через минуту может мчаться со скоростью 600км/ч в Санкт-Петербург.

Следующий доклад назвать 15-минутным крайне сложно. Пожалуй, это единственный доклад, выпавший из формата на фоне других. "Новое в хешировании паролей: ROM-port-hard функции (развитие идей script и security through obesity)". Александр "SolarDesigner" Песляк грузил математикой и результатами наработок, рассматривая возможности улучшения методов противодействия быстрому "перебору хешей" в различных вариациях: парольные списки, rainbow и т.п. Он выделял особенно принцип безопасности через "ожирение", при котором БД с хешами раздувается, из-за ее заполнения множеством ложных значений. Также были затронуты вопросы переноса вычислительных ресурсов, с целью помешать злоумышленнику воссоздать аналогичную схему, например, что-то вынести в ОЗУ, что-то на SSD. Доклад сравним с докладом "Уязвимости подсчета ссылок в ядре Windows: практический анализ" с первого дня по степени детальности и проработки. Категорически стоил посещения, даже непрофессионалами.

"Питоновский арсенал для реверса" от Дмитрия "D1g1" Евдокимова отметился непередаваемой страстью автора к Python как крайне полезному для IDA инструментарию и по причине того, что на данный момент у автора есть вики, которую можно читать и дополнять комментариями.

"Как поймать своего "хакера" или безопасность "на коленках", Игорь Гоц, Сергей Солдатов. Один день из жизни сисадмина. Доклад полезен для тех, кто планирует анализировать логи и показывает, как ловить тех, кто ломится в попытке получить несанкционированный доступ. В целом, идеи по простоте заимствованы (по аналогии, а не напрямую) у Криса Касперски и выглядят так, что решение по своей простоте всегда лучше той или иной индустрии программных решений. Впрочем, с точки зрения эвристики это корректно, т.к. излишне избыточный и сложный функционал не обоснован. Но авторы просто отметили несколько случаев, причем костыльных: как они справились с решением детектирования вновь создаваемых сервисов (что нехарактерно для стабильного веб-сервиса) и прочих событий, которые в системе происходят и необычны в рамках Windows-решений.

Короткий доклад "Заражение 3G модемов", рассказанный Олегом Купреевым, повествовал, что для таких модемов ПО и железо делает компания Huawei, у которой также есть утилита по созданию образа с устройства, который можно потом "допилить", благо свободного места на 30 Мб. Автор наглядно показал, что если мегафоновский аппарат идёт с ПО от МТС, то нет никаких конфликтов в работе, разница только в картинках и логотипах. В целом интересно, правда, вектор атак только один - подкинуть кому-нибудь взамен одного устройства заражённое.

Последним докладом на 15 минут был доклад нашего сотрудника Евгения Соболева, который рассказал, какие именно ошибки при всём комплексном подходе забывают учитывать в крупных организациях сотрудники ИБ.

Последний доклад на полчаса - "Безопасность мобильных приложений" от Александра Полякова и Дмитрия "D1g1" Евдокимова о безопасности клиент-банков под iOS. Докладчик рассказал, что готовится продукт по автоматическому анализу, а также по выкачиванию приложений изApple-магазина, замяв детали ввиду сильно недоработанного ПО. 

На этом мероприятие закончилось. Вернее, оно закончилось не на этом докладе, а на Zero Day шоу ;) С нетерпением ждём в дальнейшем столь же интересных мероприятий. 

Юрий Чемёркин

Исследователь, 

ЗАО "Перспективный Мониторинг"