31.03.2014

Отчет с 17-ой встречи DEFCON группы

image

Первая в этом году конференция прошла 11 февраля 2014 года, в Санкт-Петербургском офисе компании Yandex, находящегося по адресу: Россия, Санкт-Петербург, Пискаревский проспект, дом 2, корпус 2, Литер Щ, БЦ "Бенуа". Добраться до которого можно было на бесплатном шаттле от станции метро Новочеркасская или автобусе УК "Теорема" от станции метро Площадь Ленина. Мероприятие началось в 19:00 и продлилось порядка двух с половиной часов.

Автор: K4Y0T

Тупой карандаш, лучше острой памяти...
С.Н. Мерзляков, 2009

Первая в этом году конференция прошла 11 февраля 2014 года, в Санкт-Петербургском офисе компании Yandex, находящегося по адресу: Россия, Санкт-Петербург, Пискаревский проспект, дом 2, корпус 2, Литер Щ, БЦ "Бенуа". Добраться до которого можно было на бесплатном шаттле от станции метро Новочеркасская или автобусе УК "Теорема" от станции метро Площадь Ленина. Мероприятие началось в 19:00 и продлилось порядка двух с половиной часов.

Как и прежде [1], желающие выступить и поделиться своими мыслями и наработками с сообществом, могли прислать заявку на электронный адрес defconrussia@gmail.com с темой "CFP17" для рассмотрения и утверждения.

Участникам встречи, предлагалось предварительно зарегистрироваться, выслав имя и фамилию на электронную почту (адрес указан выше) с темой "REG17", не позднее 10 февраля 2014 года. Вместе с тем, для прохода в конференц-зал Смольный необходимо было прибывать с паспортом.

Новость о проведении конференции появилась на официальном ресурсе Russian Defcon Group в конце января, но датированная 28 февраля по каким-то причинам. Убедительная запись из будущего, навела на мысль о предопределенности встречи сообщества…


Отмечу в положительную сторону, что специалисты (они же энтузиасты) отреагировали оперативно и начали предлагать различные темы для обсуждения на предстоящей встрече. За два-три дня до мероприятия, руководством DCG 7812, были выбраны и утверждены следующие темы и докладчики:
  • Under the hood of modern HIPS-es and Windows access control mechanisms. Василий Букасов, Дмитрий Щелкунов – @dschelkunov;
  • Patching hardware remotely: physics vs 0days. Иван Новиков aka Владимир Воронцов – @d0znpp;
  • Как я собирался фазить YotaPhone. Дмитрий Евдокимов - @evdokimovds.
Не смотря на небольшое количество времени для подготовки презентаций и незавершенность некоторых работ, доклады получились достаточно информативными и побудительными. Были в выступлениях и яркие моменты, к которым обратимся ниже…


Under the hood of modern HIPS-es and Windows access control mechanisms 
Василий Букасов, Дмитрий Щелкунов (@dschelkunov)

С первым докладом конференции выступил Василий Букасов из Калуги (RE:Crypt). В котором он рассказал о технологиях, на базе которых строятся современные HIPS (Host-based Intrusion Prevention System, системы предотвращения вторжений).

В агенде, специалист коснулся вопросов реализации проактивной технологии защиты, построенной на анализе поведения. Кроме того, Василий подробно остановился на деталях реализации механизмов безопасности в ОС Windows. В ходе доклада были освещены характерные, в том числе и архитектурные, ошибки при создании HIPS, ведущие к возможности осуществления вредоносных действий.

Первая часть доклада послужила введением в механизмы Windows по контролю доступа, такие как:

Security identifier (SID)… Идентификатор безопасности, представляющий собой уникальное значение переменной длины, используемое для идентификации участника безопасности или группы безопасности. Их значения остаются постоянными во всех версиях операционной системы.

Logon SID… Идентификатор безопасности, создаваемый процессом Winlogon для каждого интерактивного сеанса входа в систему.

Integrity Level… Интегральный уровень безопасности (untrusted, low, medium, high, system).

Acces token… Маркер доступа, определяющий контекст безопасности процесса или потока. Здесь, докладчик упомянул о привилегиях механизма, пометках SID, а также напомнил об актуальности токенов для версий ОС Windows Vista и выше.

Security descriptor… Списки контроля доступа, определяющие кто и какие действия может выполнять. Василий Букасов, напомнил сообществу о том, что существует два списка контроля доступа (ACLs): дискретный (DACL) и системный (SACL).

Access checks… Проверка доступа, мандатная метка (используемая в integrity level) и дискретная (используемая в дискретном списке DACL).

Mandatory policies… Мандатные политики (No-Write-Up, No-Read-Up и No-Execute-Up).
Так же, специалист вернулся к мандатному (Mandatory access control) и дискретному контролям доступа (Discretionary access control). Напомнил он и о специфических правах доступа: запрещено все, что не разрешено.

Impersonation… Имперсонация токенов. Часто понимается как способность треда (потока) использовать другую информацию о безопасности, нежели та, что доступна процессу, владеющему тредом. Василий продолжил рассуждением о том, что это механизм, предоставляющий возможность выполнить код в контексте безопасности целевого процесса, а также рассказал о двух интересных свойствах ипмерсонации.

Переходя ко второй части доклада Василия Букасова, о существующих технологиях реализации песочниц, сделаем небольшое отступление, в сторону не использования родного языка (это актуально для большинства докладов DCG 7812). Вся презентация специалиста из компании RE:Crypt, по некой причине, выполнена на английском языке, а не на родном Русском. По всей видимости, она рассчитана на максимальную интернациональную аудиторию. Хотя сегодня, ввиду все меняющейся политической ситуации (смещения сфер влияния), вполне можно готовить доклады на русском или китайском языках…

Далее, участникам встречи, были представлены следующие подходы к реализации HIPS (систем предотвращения вторжений):
  • Виртуализация;
  • Базирующийся на хуках (старая школа);
  • Основанный на механизмах контроля доступа Windows (новый тренд);
  • Микс из двух предыдущих (pizza).
Здесь, Букасов обратил внимание на новый тренд – совместное использование механизмов безопасности Windows (Adobe и других собственных механизмов), и песочницы. После чего, он продолжил обзор подходов к реализации HIPS:

Windows access control mechanisms… Механизмы контроля доступа Windows (Restricted token, Another user, Job restrictions и Separate desktop).

AppContainer… Механизм защиты Windows начиная с версии 8, наподобие песочницы (Lowbox token, Low integrity level, Capabilities и Separate local NamedObjects directory). Как заметил Василий Букасов, это некая прищепка сбоку к системе безопасности (работает с SID, но своими методами на уровне ядра безопасности), для метаприложений.

В третьей части доклада, специалист рассказал о типичных ошибках и уязвимостях, которые эксплуатируются в настоящее время:

Logon SID and broken Run As… Если используется Run As для запуска процессов под другим пользователем, они стартуют с текущим Logon SID. Букасов добавил, что в Windows XP была организована изоляция процессов, в то время как с версии Vista данный механизм уже сломали. Используя Logon SID неизвестного пользователя много чего можно сделать, намекнул Василий (отказ в обслуживании, убить все процессы и пр.)

Crossroads or how to make Run As secure… На распутье ;) Здесь специалист поведал о трех функциях, создающих процесс (CreateProcessWithLogonW, CreateProcessAsUser и CreateProcessWithTokenW). Рассказал и о том, как их починить, а также заявил, что MSDN лжет (сославшись на опыт в сфере ИБ и примеры).

Desktop is a security boundary… Рабочий стол – граница безопасности… Букасов напомнил присутствующим на конференции про приложения в рамках рабочего стола (экспериментируем с DESKTOP_HOOKCONTROL, при неустановленных или установленных правах доступа).

Василий продолжил демонстрацией примеров работы с хуками, как было реализовано в Windows XP (улучшимся до XP заметил он). Кроме того, специалист раскатал дизассемблером процедуры, реализованные в Windows Vista и выше. Он указал на дыру с хуками (на дырявый рабочий стол).

Подытоживая третью часть доклада, Василий Букасов вскользь коснулся и других подводных камней (для браузеров, продуктов Adobe и др.), таких как защита от соседей (Adobe атакует браузер), скриншоты (может делать любая программа), кейлогеры, а также доступ к сети, буферу обмена, веб-камере и микрофону (которые ничем не контролируются).

Четвертую часть доклада, специалист именовал как побег из песочницы (Escape from sandbox), и приступил к следующему слайду:

Competition of HIPS-es… Конкурентная борьба систем предотвращения вторжений. Василий Букасов рассказал об исследовании, проведенном некоторое время назад (8 участников, плюс одна свежая, но уже общедоступная техника инъекции). Вспомнил об основных хипсах, которые уже исправили, но находят и новые. Выделил 3 участника, наиболее хорошо сопротивлявшихся в ходе исследования, и отчитался о результатах остальных (точнее о выявленных недостатках).

После чего, докладчик высказал критические замечания по реализации защитных механизмов в ОС Windows (при запуске песочницы дают права администратора, Run As…), и порекомендовал ряд интересных ссылок для заинтересовавшихся (на слайде ссылочки выглядели слишком мелкими, смотрите pdf-версию).

В заключение, специалист из RE:Crypt поделился контактными данными с участниками встречи (Василий Букасов – fixer@re-crypt.com, Дмитрий Щелкунов – schelkunov@re-crypt.com), и ответил на несколько вопросов из зала (девушке, про десктопы и функции; парню, про материалы доклада, которые не рассматривались применительно к Linux и Android, а также для iOS, в которой все подписано). Букасов призвал не забывать, что Windows 8 попытались натянуть на все, следовательно метаприложения запускаются на всем!!

Patching hardware remotely: physics vs 0days 
Иван Новиков aka Владимир Воронцов (@d0znpp)

Строгий полумрак, очередной докладчик готовится к выступлению. На темном экране, в отсутствие слайдов, забавная надпись: Смольный видео ;) Владимир Воронцов, кстати завсегдатай встреч Russian Defcon Group, опускает занавес на стеклянные двери, дабы супостат не увидел неудобную информацию…

В качестве вступления, Владимир немного рассказал о себе, о своей страничке в сети и об увлечении web-технологиями. Заметил, что последнее время занялся физикой, она как наркотик! Приступил к первому незатейливому слайду, который демонстрировал универсальный алгоритм действий инженера на все случаи жизни, с применением скотча и ВД-40. На столь позитивной ноте, докладчик приступил к обзору основных вопросов, а именно: возможно ли удаленно пропатчить ваш компьютер? Какие методы и инструменты? Сколько это может стоить?

Воронцов поведал, что отчет охватывает физические методы взаимодействия с полупроводниками на расстоянии, а также методы бесконтактной записи на магнитные носители. Он продолжил рассуждениями о том, как повлиять на работу полупроводниковых приборов уже сегодня, как защищены современные процессоры (методики, стоимость, известные физические методы).

Как ни странно, вся нынешняя электроника основана на полупроводниках, с сарказмом отметилd0znpp. Вспомнил о волшебной эбонитовой палочке из курса школьной физики и электронах. Показал инфографику по основным типам транзисторов, и подробно остановился на применяемых техпроцессах. Кроме того, напомнил участникам встречи о построении логических элементов, токах в них и напряжениях.

Продолжил докладчик, рассуждениями об эволюции полупроводниковых приборов и связанных с этим явлением техпроцессах. К примеру, 32-нм техпроцесс с применением полупроводниковой подложки, planar. Кремний по сути песок, отметил Владимир и представил красиво оформленный слайд с графической подложкой, иронично напомнив, что он занимается вебом. На изображении были видны особенности планарных транзисторов (линейная структура) и других элементов (рассыпухи, как выразился специалист). После чего, он рассказал о 22-нм техпроцессе, отличающемся структурой похожей на вафли и 3-х мерных транзисторах.

Далее, Владимир Воронцов приступил к основному вопросу доклада, как можно повлиять на такие структуры полупроводников. Куда прилагать заряд если, скажем, дизайн CPU предполагает 9 слоев разводки (с меди не снять, копаем песок, он же кремний). Глядя на картинку мы не узнаем, как все это работает, как организована система вычислений (не документировано), поскольку еще и имеет место избыточность (дублирование элементов).

Вместе с тем, в рамках доклада d0znpp напомнил о влиянии электрического заряда на флеш и SSD-накопители. Выделил отличия и констатировал особенности в структурах построения памяти NAND и NOR (в основном расположение транзисторов). Еще раз отметил о важности хорошего контроллера для флешки, и об отсутствии возможности стереть ее память полностью.

После этого, Владимир предложил рассмотреть пассивные и активные методы регистрации изменений в полупроводниковых приборах. Была упомянута и активная X-Ray регистрация, посредством рентгеновского излучения. А где же любимая всеми и похоже засекреченная регистрация ультрафиолетовыми лучами (прим. автора)? Были рассмотрены и другие активные методы регистрации: электронная литография и электронная микроскопия.

И наконец, самый сок доклада, Remote debugging или говоря этичным языком Remote patching (отвлеченно заметил хакер). Докладчик продолжил кратким обзором исследования, проведенного в Кембридже с процессором SHARP. В ходе которого, ученые применили обычный коаксиальный кабель (зная его импеданс) и попросту тыкали в различные точки (имея исходные данные для точки Y, замеряли Х осциллографом).

Имея осциллограф, круто не делать это, пояснил Воронцов ;) И продолжил рассуждать о том, что оказывается он не один такой идиот (это вытекает из упомянутого серьезного исследования). Владимир продемонстрировал слайды, на которых наглядно были представлены предметы для создания электромагнитного поля, а некоторые были даже испытаны. Например, если тыкнуть в процессор пьезозажигалкой, он зависнет (попросту сойдет с ума, но включится снова). Были испытаны и электромагнитные катушки Гельмгольца, и даже петарды со спичками. Входе таких манипуляций d0znpp выявил, что удаленно взаимодействовать с электроникой еще как можно!

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

Вспомнил Владимир и еще об одном эксперименте, в рамках которого два российских исследователя, собрали коллиматор. Докладчик упомянул о корпускулярно-волновом дуализме, показав подготовленность в области физики. Коллиматор представлял из себя 2 дюралевые пластины (которые многократно шлифовали, до достижения нужного эффекта) и когда зазор между пластинами составил 2 мкм (равен размеру зерен на шлифующей шкурке), исследователям удалось добиться появления такого явления, как стоячая волна (по сути полное отражение, на выходе 30-нм пучок направленных фотонов).

Приступая к выводам, Владимир Воронцов сообщил, что используемые в настоящее время процессоры защищены теплоотводом. Однако, ничего не препятствует фундаментально внедриться в материю, в слои процессора (а там уже.., фундаментальные слова материи из 5 или 3 букв). Докладчик предложил уже сегодня задуматься о средствах защиты от дистанционного вмешательства, таких как напыление сверху процессора (похоже и других слоев) металлического слоя (с кобальтом работало). Экспериментально было установлено, что для 45-нм техпроцесса такая технология подходит, но для 22-нм, весьма проблематично реализовывается (нужно дебажить, отвлекся специалист).

Кроме того, если воздействовать на один транзистор в трехмерной структуре процессора (пересечением лучей, волн) то ничего не произойдет, поскольку элементы дублируются. Для целенаправленного изменения состояний необходимо знать всю логику соответствующего процессора (как вообще можно сертифицировать современные процессоры, если последняя документация была передана на процессор i286). Пока мы не знаем даже химию процессоров (не смотря на применение спектрального анализа). Очень многие функции не документированы, а для успешного анализ необходимо много процессоров одной серии. Остается фазить и наблюдать, убедительно подытожил Воронцов.

На последок, докладчик упомянул про контроллеры и отсутствие защиты в них, предложил поэкспериментировать. Напомнил, о том, что с флешки легко прочитать все. Владимир отметил, что дал много информации к размышлению, выразил надежду на появление тонких регистраторов (способные запечатлеть все шаги в динамике), и доступности хороших пучков. Сейчас, он анализирует как защищены security-девайсы (тьма полная в этом вопросе в сети), предложил присоединиться и порекомендовал интересный источник на 200 листов, из которого следует, что светить нужно из разных источников, лучше нескольких.

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

Завершая обзор выступления Владимира Воронцова отмечу, что видно очень многое хотел сказать, очень много мыслей в голове, еще большее хочется сделать. Пожелаем удачи и новых отчетов о достижениях Российской науки.

Как я собирался фазить YotaPhone 
Дмитрий Евдокимов (@evdokimovds)

Третий доклад, завершающий встречу, получился весьма презентационным. Дмитрий начал с обзора дизайна коробки чудо телефона, коих не много. Она похожа на коробочки iPhone или htc по строгости, но выполнена в виде армейской раскладки…

Специалист из Digital Security Research Group отметил, что дизайн телефона и сборка операционной системы выполнены в России. Телефон собран в Китае, как и приложения с закладками, с улыбкой заметил докладчик! Тестируемая модель YotaPhone была оснащена производительным двухъядерным процессором Qualcomm с тактовой частотой 1,7 ГГц под управлением операционной системы Android 4.2.2.

Дмитрий Евдокимов предложил посмотреть внутренности девайса (презентация также на английском языке). Он сообщил об участии в мероприятии по тестированию API изделия YotaPhone, что позволило получить доступ к API YotaPhone за несколько месяцев до официального релиза (нет в открытом доступе по сей день).

Говоря об отсутствии обновления до Android 4.4, докладчик предположил, что производители не ожидали такого количества проданных устройств (их два, иронично отметил Дмитрий, одно у него, второе сами знаете у кого…) Кроме того, специалист высоко оценил преимущество и идею использования двух экранов. Второй-то экран (точнее используемые им процедуры, отличные от стандартной операционки) и натолкнул его, ресёрчера (здесь как специалиста по новому виду атак), к выбору вектора атаки…

Развивая тему, Евдокимов рассказал об особенностях нативных Android, для таких аппаратов как Nexus и Yota Devices. После чего, он задался вопросом, как рисовать на втором дисплее (об используемых процедурах). И приступил к освещению методики получения root-доступа к смотрофону Yota (причем каждый слайд изобиловал доходчивой графикой и скриншотами). Для чего порекомендовал скачать USB-драйвер с 4pda.to и Frameroot (Gandalf exploit).

Дальше, специалист продемонстрировал технику анализа логов (поиск всего, что твориться). Заинтересовал его PlatinumAPI и дочерние процессы, которых нет в стандартной ОС Android. Затем, Дмитрий внедрился глубже, декомпилировал пару файлов и нашел 10 функций для фазинга!! Проанализировал код API, убедился в нативном взаимодействии с экраном. Зацепился за одну из процедур, и выделил 2 основных класса (так сказать, расставил брейкпоинты).

Добавим динамики, заявил хакер, повествуя о настройке связки IDA и Android. В ходе анализа интересующего двоичного кода в IDA Pro 6.5 был выявлен баг, который стал препятствием для дальнейшего анализа операционной системы, используемой в YotaPhone. Уведомление об этом было отправлено Дмитрием в адрес Ильфака Гильфанова (создателя IDA Pro). Устранение багов от Ильфака поступило оперативно, и код поддался воздействию инструмента…

А на этом пока все, хвастливо подвел черту Дмитрий Евдокимов, и пообещал в скором времени допотрошить YotaPhone и рассказать об этом сообществу. Пожелаем удачи исследователю и с нетерпением будем ждать продолжения.

Библиография:
  1. http://www.k4y0t.ru/cont/topic/gos_130609.html - K4Y0T Project. Отчет с 14-ой встречи DEFCON группы. K4Y0T, 2013.
или введите имя

CAPTCHA
K4Y0T
04-04-2014 23:27:27
Исходник на K4Y0T Project - http://k4y0t.ru/cont/topic/gos_140328.html
0 |