Рутковская, Йоанна

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
Йоанна Рутковская
Joanna Rutkowska
LinuxCon Europe Joanna Rutkowska 03.jpg
Дата рождения:

1981

Место рождения:

Варшава, ПНР

Страна:

Flag of Poland.svg Польша

Научная сфера:

информационные технологии

Место работы:

Invisible Things Labs

Альма-матер:

Варшавский политехнический институт

Известна как:

автор ПО Blue Pill,
автор ОС Qubes

Сайт:

invisiblethingslab.com

Йоанна Рутковская на Викискладе

Йоа́нна Рутко́вская[1] (польск. Joanna Rutkowska; 1981(1981), Варшава) — польский специалист и исследователь в области компьютерной безопасности. Известна в первую очередь по её исследованиям низкоуровневой защиты и скрытого программного обеспечения[2].

О себе отзывается[3] так:

Я — исследователь, который фокусируется на проблемах безопасности системного уровня, например, в ядре, гипервизоре, чипсете и т. д. Именно исследователь, а не охотник за уязвимостями или тестер. Меня больше интересуют фундаментальные проблемы, а не какие-то конкретные «дыры» в каких-либо программах пользователей. Например, может ли ОС или платформа обеспечить какую-либо защиту пользователя, несмотря на то, что приложения, например, Adobe Reader или IE могут быть потенциально скомпрометированы? Я верю в «безопасность путём изоляции».

После ее выступления на Black Hat в 2006 году во многих публикациях её стали называть хакером, однако сама Йоанна против этого, заявив об этом в одном из интервью в конце 2007 года[4]:

Я не считаю себя хакером (хотя в прессе меня часто так называют). Я считаю себя исследователем в области компьютерной безопасности, а с недавних пор — ещё и бизнесвумен.

Биография[править | править вики-текст]

Детство и юность (1981—2003)[править | править вики-текст]

Родилась в 1981 году в Варшаве, Польша. В 11 лет получила свой первый компьютер[5]. Им стал PC/AT 286, оснащенный процессором, работающим на частоте 16 МГц, 2 Мбайт памяти[3] и 40-мегабайтным жёстким диском[5].

« У него была монохромная видеокарта Hercules и большинство игр на нем не работало, так что мне ничего не оставалось, кроме как начать программировать.
Йоанна Рутковская[5]
»

Практически сразу познакомилась с GW-BASIC, а примерно через год перешла на Borland Turbo Basic[3]. Начав программировать, Йоанна стала интересоваться как работает операционная система. В возрасте примерно 14 лет она начала изучать язык ассемблера для архитектуры x86 (на MS-DOS) и плавно перешла к написанию вирусов, после чего больше сосредоточилась на математике и искусственном интеллекте[6]. Затем начала изучать основы построения сетей, Linux, системное программирование, что в конце 1990-х гг. вновь привело ее к области компьютерной безопасности и написанию эксплоитов для Linux x86, а затем и для Win32-систем[7]. Так что, как и многие из известных исследователей, Йоанна начала писать эксплоиты в подростковом возрасте[5].

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

« Я прочитала статью и сказала: „Нет, это не может работать. Это невозможно“. Но это на самом деле сработало.
Йоанна Рутковская[5]
»

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

« Это удивительно и захватывающе как волшебный фокус. Теперь уже я сосредоточена в несколько другой области, но всё еще отслеживаю интересные эксплойты.
Йоанна Рутковская[5]
»

Затем она постепенно продвинулась дальше: уязвимости ядра, руткиты, скрытые каналы и прочее, а также способы борьбы со всеми этими уязвимостями[7]. В одном из интервью 2007 года она вспоминает:

« После некоторого периода написания эксплойтов я начала задумываться о том, чем же заниматься дальше. Меня очень интересовало внутренне устройство ОС и у меня были довольно хорошие познания в нем. Это и привело меня в область руткитов.
Йоанна Рутковская[5]
»

Параллельно с этим закончила Варшавский политехнический институт, получив степень магистра в области информатики[8]. По её воспоминаниям, женщины составляли всего лишь около 5 процентов от общего числа студентов факультета, где Рутковская изучала математику[5]. По её выражению, её университетское обучение имело мало общего с безопасностью[5]. Так, в одном из интервью она сказала, что хоть и изучала информатику в Варшавском Политехническом институте, но большинство вещей изучила сама, как и многие коллеги по отрасли[6].

Первые исследования (2001—2002)[править | править вики-текст]

Примерно в 2001 г. Йоанна начала всерьез заниматься исследованиями в области компьютерной безопасности для платформ на базе операционных систем Linux и Win32, а спустя два года переходит к исследованиям в области программ, работающих по технологии «невидимок» (англ. stealth technology)[9].

Ян Кшиштоф Рутковский (2002—2003)[править | править вики-текст]

В этот период Йоанна пока еще практически никому не известна, но в сети начинают публиковаться материалы по исследованиям руткитов и защиты от них от имени некоего Яна Кшиштофа Рутковского (польск. Jan Krzysztof Rutkowski).

На конференциях Black Hat USA 2003 и HiverCon 2003 в его профиле написали[10][11]:

Ян Рутковский — независимый исследователь в области безопасности. Его основные исследования относятся к нетривиальным методикам использования уязвимостей (как например, повреждение кучи или умные нагрузки), а также продвинутые аспекты технологии руткитов и черных ходов. На данный момент он сосредоточен на системах Windows 2000 и Linux.

В 59 номере журнала Phrack (28 июля 2002 г.) была опубликована статья Яна «Анализ путей исполнения: обнаружение руткитов ядра»[12], в которой описывается метод обнаружения руткитов на основе подсчета исполняемых инструкций в некоторых системных вызовах. Также в качестве примера реализации подобной концепции к статье был приложен исходный код программы PatchFinder.

2 декабря 2002 года он опубликовал описание уязвимости в IPD — драйвере с открытым исходным кодом для Windows NT и Windows 2000, разработанном для запрета установки новых служб и драйверов и защиты существующих драйверов от руткитов. Ошибка заключалась в том, что система защиты включалась спустя 20 минут после загрузки ОС, но при этом можно было без особых проблем переводить системные часы назад, тем самым не давая активировать защиту[13].

3 января 2003 года Ян опубликовал описание новой уязвимости в IPD. Суть уязвимости заключалась в следующем: для защиты ядра от различных вредоносных программ IPD блокировала каталог WINNT/system32/drivers, так чтобы нельзя было модифицировать какие-либо файлы в этом каталоге. Но можно было создать символьную ссылку на этот каталог и получить полный доступ к этому каталогу[14].

31 июля 2003 года на конференции Black Hat USA 2003, проходившей с 28 по 31 июля в Лас-Вегасе, США, от его имени была представлена презентация «Продвинутые способы обнаружения руткитов в Windows 2000»[15][16][17]. Основной темой презентации стали способы обнаружения руткитов и черных ходов в Windows 2000. В докладе приведена классификация руткитов, основные способы их сокрытия, а также основные способы их обнаружения. Более подробно рассматривается упоминавшийся выше метод анализа путей исполнения (сокр. АПИ; англ. execution path analysis, сокр. EPA), в основе которого лежит простой факт: если в результате атаки система скомпрометирована, и она пытается что-либо скрыть при помощи изменения некоторых путей исполнения, то такая система будет исполнять дополнительные инструкции при обычных системных и библиотечных вызовах. В статье была предложена реализация счетчика инструкций на основе возможностей процессоров Intel, т. н. пошагового режима (англ. single stepping mode). Однако, поскольку ядро Windows 2000 является довольно сложным набором программ, то количество исполняющихся инструкций может меняться и в «чистой» системе, что весьма затрудняет анализ. Тем не менее, тесты позволяют заметить весьма активное использование системной функции FindFirstFile, которая многократно вызывается на определенном этапе обращения к какому-либо каталогу, но в скомпрометированной системе данная функция будет вызываться на нескольких этапах. В этой ситуации, проблемой остается лишь определение того, является ли подобное поведение признаком скомпрометированности или всего лишь информационным шумом. Для решения этой дилеммы в статье предлагается использовать метод записи путей исполнения (сокр. ЗПИ; англ. execution path recording, сокр. EPR), являющийся модификацией. Идея ЗПИ основана на записи отладочным обработчиком полного пути исполнения (адреса и инструкции в этих адресах), затем вычислении наиболее общего пути (по частоте использования), а затем сравнении этих двух путей (текущего и записанного).

Кроме того, в рамках презентации обсуждались также и некоторые программы защиты от руткитов (Integrity Protections Driver, Server Lock), а также некоторые их уязвимости. Кроме того, была некоторым образом затронута и тема переноса метода АПИ на другие операционные системы[10].

Всего лишь чуть более года спустя, в статьях о руткитах для Windows уже будут писать, ссылаясь в том числе и на этот доклад[18]:

« Как в создании руткитов, так и в борьбе с ними есть свои лидеры. Признанной руткитоборкой первой степени является Йоанна Рутковская, чей новый веб-сайт invisiblethings.org я настоятельно советую посетить. Она является автором утилиты Patchfinder и Klister. Первая из них направлена на обнаружение руткитов, модифицирующих пути исполнения, а вторая помогает обнаруживать DKOM KLT. »

Примерно до июля 2003 года Ян указывал адрес электронной почты Варшавского политехнического института[19] (где как раз в это время училась Йоанна) при публикации различных исследований по сокрытию и обнаружению руткитов ядра Windows[12][20].

Начиная с середины 2003 года вся деятельность Яна была постепенно свернута, а менее двух месяцев спустя никому ранее неизвестная исследовательница Йоанна Рутковская начала публиковать материалы по способам сокрытия и обнаружения Windows-руткитов. Первым подписанным этим именем стало описание концепции проекта «Хамелеон»[21]. Причем описанные идеи вплотную связаны с идеями, описанными Яном, и некоторым образом даже развивают их, иногда ссылаясь на них как на предыдущие работы[20].

В сентябре 2003 года Йоанна публикует концепцию о скрытых Windows-руткитах, получившую название «Проект „Хамелеон“». Данный проект являлся лишь набором идей (без практической реализации в коде) о способах записи действительно невидимых для Windows руткитов (то есть так, чтобы даже специальные программы их не обнаруживали). Собственно, Йоанна данный проект забросила, собираясь вернуться к нему позднее, но этого так и не случилось. Тем не менее, некоторые идеи проекта были позаимствованы Шерри Спаркс и Джейми Батлер при создании первого практического руткита для виртуальных машин[22].

Примерно с этого момента материалы, ранее опубликованные от имени Яна, постепенно в открытую изменяют свою подпись на подпись Йоанны, причем даже начали опубликовываться ссылки на материалы Яна как на материалы авторства Йоанны[20][23].

Сама же Йоанна впоследствии на вопрос о том, когда она начала заниматься компьютерной безопасностью, скажет[6]:

« Несколько лет назад, будучи студенткой. Я уже тогда публиковала результаты моих исследований, благодаря чему получила несколько приглашений к участию в различных проектах. »

В ноябре 2003 года Ян выступила на конференции HiverCon 2003, проходившей с 6 по 7 ноября 2003 года в Дублине, Ирландия[24][25]. Темой доклада вновь становится продвинутое обнаружение руткитов Windows 2000 методом анализа путей выполнения (англ. Advanced Windows 2000 rootkit detection (execution path analysis)), но дополненная по сравнению с версией, представленной на Black Hat. Доклад был посвящен новейшим методикам обнаружения скомпрометированности системы и выявлению руткитов на платформе Windows[26].

И с этого момента Йоанна все свои материалы публикует исключительно от своего имени.

Начало профессиональной карьеры (2003—2006)[править | править вики-текст]

В середине октября 2004 года Рутковская выступила на конференции IT Underground 2004, проходившей 12—13 октября в Варшаве. Ею были представлены две презентации, посвященные руткитам для платформ Linux и Win32, а также методам их обнаружения. Первая презентация «Черные ходы в ядре Linux и их обнаружение»[27] была посвящена двум способам реализации умных черных ходов ядра в сетевом стеке ядра Linux (англ. Linux Kernel Network Stack) при помощи обработчика ptype и Netfilter, а также представила оригинальные способы их обнаружения, которые впоследствии были успешно реализованы в одном из коммерческих инструментов, написанных самой Йоанной. Также в ней была представлена идея пассивных скрытых каналов, используемая в описанных способах[22].

Во второй презентации «Обнаружение руткитов на системах Windows»[28] шло обсуждение обнаружение руткитов уровня пользователя и уровня ядра. Первая половина презентации была посвящена применению MS Kernel Debugger (совместно с LiveKD) для обнаружения руткитов уровня пользователя. Остальная часть была посвящена более продвинутым руткитам уровня ядра, а также в ней были представлены некоторые идеи по их обнаружению[22].

Помимо этого, подтекстом выступления было обсуждение способов как сделать руткиты совершеннее. Во время ланча Йоанна продемонстрировала, как можно при помощи фактически одной инструкции (иногда упоминаемой как «любимая инструкция Синана», англ. Sinan's Favorite Instruction) обнаружить использование VMware[29] (то есть идея, положенная в основу проекта Red Pill).

20 октября 2004 года Йоанна оставила первую запись на своем персональном веб-сайте invisiblethings.org, и на следующий день опубликовала на нём материалы обеих презентаций с ITUnderground[30].

28 декабря 2004 года на Всемирном конгрессе хакеров, проходящем в Берлине (Германия) с 27 по 29 декабря, Йоанна представляет доклад «Пассивные скрытые каналы в ядре Linux»[31]. Темой доклада стали пассивные скрытые каналы (сокр. ПСК; англ. passive covert channels, сокр. PCC), не генерирующие собственного трафика, а лишь меняющие некоторые поля в пакетах, создаваемых легальными пользовательскими приложениями или процессами на зараженной машине.

28 сентября 2005 года Йоанна выступила с презентацией «Скрывать и находить: определение пути выявления вредоносного ПО на Windows»[32] на конференции «Хак в коробке»[33], проходившей с 26 по 29 сентября в Куала-Лумпуре (Малайзия), параллельно представив при этом несколько своих разработок, в том числе и System Virginity Verifier. Основной целью презентации было определение списка жизненно важных частей операционной системы и методология выявления вредоносного ПО. Список начинается с таких основных вещей как действия, необходимые для проверки целостности файловой системы и реестра, затем следом идет проверка памяти уровня пользователя (выявление посторонних процессов, вредоносных динамических библиотек (DLL), инжектированные потоки и прочее), и заканчивается такими продвинутыми вещами как определение жизненно важных частей ядра, которые могут быть изменены современным вредоносным ПО, основанном на руткитах (при помощи таких способов, как Raw IRP hooking, различные DKOM-манипуляции или трюки с виртуальными машинами). Причем вне зависимости от полноты данного списка, по мнению Йоанны, для компрометирования системы вредоносным ПО будет использоваться лишь определенное число методов, то есть такой список на любом этапе не может быть бесконечным, а его полнота будет зависеть лишь от сообщества специалистов. В принципе, создание такого списка может значительно повысить осведомленность об угрозах и, в конечном счете, позволит создание более совершенных программ защиты от вредоносного ПО. Концепты подобных программ Йоанна и представила на своей презентации, наряду с несколькими интересными вредоносными программами[34].

В качестве реализации своей идеи описанного сообщества, занимающегося выявлением методов компрометирования систем, Йоанна там же, на конференции, представила проект открытых методологий поиска компрометаций[35] (англ. open methodologies for compromise detection, сокр. OMCD. Данный проект был начат в самом начале сентября совместно с Институтом безопасности и открытых методологий[36] (англ.). В рамках проекта под руководством Йоанны должны были вестись работы над методологией обнаружения вредоносного ПО и руткитов на системах Windows для определения стандарта как для исследователей, так и для разработчиков инструментов, автоматизирующих этот процесс[37].

25 января 2006 года Йоанна выступила с презентацией на Black Hat Federal[38] (англ.), проходившей с 23 по 26 января в Вашингтоне (США), на тему «Охота на руткиты против выявления скомпроментированности»[39] (англ.)[40]. Презентация была посвящена описанию типов скомпрометированности системы, а также в ней было представлено описание способов достижения атакующим полной невидимости без использования классической технологии руткитов. В ходе презентации Йоанна рассматривала такие традиционные уловки руткитов как перезагрузка, сокрытие процессов, открытые сокеты. Также она представила свой новый руткит DeepDoor (разглашать какие-либо подробности о котором она отказалась), способный взламывать код NDIS[41] путем модифицирования четырёх слов в области памяти, где NDIS хранит свои данные. Во время демонстрации Йоанна продемонстрировала, как её руткит исправно выполнял свою задачу по перехвату трафика даже несмотря на то, что межсетевой экран ZoneAlarm блокировал ему доступ. В итоге, Йоанна заявила, что безопасного способа читать память с ядром в Windows не существует. По её мнению, Microsoft должна предоставить возможность сторонним компаниям предлагать решения по защите памяти с ядром. Эксперты, наблюдавшие эту презентацию охарактеризовали ее как впечатляющую работу и безумие[42].

Эта же презентация была представлена и 1 февраля 2006 года на конференции IT-Defense[43] (англ.), проходившей с 30 января по 3 февраля в Дрездене, Германия[44][45].

Позднее, на базе представленной классификации, а именно 24 ноября 2006 года, Йоанна опубликовала более расширенную версию своей классификации вредоносного ПО, добавив в нее, в частности, третий тип вредоносного ПО[46].

Период работы в COSEINC Research (2006—2007)[править | править вики-текст]

Точная дата начала официальной работы Йоанны с COSEINC неизвестна. Однако, известно, что это состоялось примерно в марте-апреле 2006 года, поскольку в мартовском интервью Йоанна отозвалась о себе как об исследователе вопросов безопасности, работающем над проектами, связанными с ИТ-безопасностью, для различных компаний по всему миру[47], однако в конце июня в своем блоге она написала, что Blue Pill разработана эксклюзивно для COSEINC[48], а работу над этим проектом она начала в марте 2006 года[49].

13 мая 2006 года выступила на конференции по компьютерной безопасности CONFidence[50] (англ.), проходившей в Кракове с 13 по 14 мая[51][52]. Её доклад, озаглавленный как «Rootkits vs. Stealth by Design Malware» (рус. «Руткиты против невидимого вредоносного ПО»), был посвящён вопросам, связанным с функционированием руткитов.

22 июня 2006 года Йоанна в своем блоге публикует предварительное описание своей новейшей разработки Blue Pill, над которой она работала последние несколько месяцев. Свою разработку Йоанна описывает как 100%-необнаруживаемое ПО. Идея программы была довольно проста: после внедрения Blue Pill на атакуемый компьютер целевая операционная система переходит под полное управление ультратонкого гипервизора Blue Pill, причем все это происходит «на лету» (то есть без перезапуска системы). Также отсутвуют и потери производительности, характерные для всех «обычных» виртуальных машин, все устройства системы полностью доступны для ОС, что достигает за счет использования технологии AMD, известной как SVM/Pacifica. Несмотря на то, что данная идея в общем-то не нова, Йоанна описывает отличия от ранее представленного руткита SubVirt[48].

28 июня 2006 года на портале eWeek опубликовывается статья «Blue Pill Prototype Creates 100 % Undetectable Malware» (рус. «Прототип Blue Pill создает 100 % необнаруживаемое вредоносное ПО»), посвященное разработке Йоанны Blue Pill. Райан Нарайен, ссылаясь на запись в блоге Йоанны, в целом повторяет написанное Йоанной. Статья вызывает много шума и бурных дискуссий. 1 июля 2006 года сама Йоанна в статье «The Blue Pill Hype» (рус. «Ажиотаж по поводу Blue Pill») в своем блоге пишет:

« статья в целом точна, за исключением одной детали - названия, вводящего в заблуждение. Там говорится, что уже реализован "прототип Blue Pill, создающий 100% необнаруживаемое ПО", что не верно. Если бы это было так, я бы не стала называть мою реализацию прототипом, что подразумевает весьма раннюю версию продукта[53]. »

Кроме того, в той же статье Йоанна опровергает слухи о том, что ее работа была проспонсирована корпорацией Intel (основной конкурент AMD на рынке процессоров). Йоанна утверждает, что ее работа была оплачена компанией COSEINC Research, на которую она в тот момент работала, а вовсе не Intel. Йоанна реализовала Blue Pill на архитектуре AMD64 только потому, что ее предыдущее исследование (также сделанное для COSEINC) была посвящено Vista x64, для функционирования которой и был приобретен процессор AMD64. И несмотря на наличие желания перенести «Blue Pill» на Intel VT, никаких ближайших планов по этому поводу у Йоанны нет по причине нехватки свободного времени.

21 июля 2006 года Йоанна завершает конференцию SyScan’06, проходившей с 20 по 21 июля 2006 года в Сингапуре[54]. Организатором данной конференции является Томас Лим (англ. Thomas Lim), CEO компании «COSEINC», в которой в то время работала Йоанна. Официально презентация Йоанны называлась «Subverting Vista Kernel for Fun and Profit» (рус. «Сокрытие ядра Vista для развлечения и пользы») и состояла из двух частей. В первой части она продемонстрировала общий способ (то есть не опираясь на какой-либо определённый баг) вставить зловредный код в последнюю 64-битную версию ядра Windows Vista Beta 2, тем самым успешно обойдя широко разрекламированую проверку Vista на «подписанность» кода. Причем представленная атака даже не потребовала перезагрузки системы.

Вторая часть выступления получила (неофициальное, так как это был по сути подзаголовок) название «Introducing Blue Pill» (рус. «Представляя Blue Pill»), в рамках которой представляет свою новую разработку «Blue Pill». Общей целью выступления была задача показать возможность создания (в скором времени или уже) необнаруживаемого вредоносного ПО, которое не будучи привязанным к какому-либо концепту будет представлять собой угрозу как некий алгоритм[55].

3 августа 2006 года на конференции Black Hat Briefings в Лас-Вегасе вновь представляет свою разработку Blue Pill, но поскольку данная конференция привлекает к себе значительное внимание профильных изданий, то данная разработка наделала много шума в IT-сообществе и принесла Йоанне мировую известность. На этой конференции корпорация Microsoft представила свою новую операционную систему Windows Vista широкому кругу IT-специалистов. В ходе демонстрации раздавались предрелизные копии ОС (по сути это были копии последнего на тот момент стабильного релиза системы)[56]. В марте 2006 года Microsoft уже проводила специальную встречу с хакерами (получившей название «Blue Hat 3»), в ходе которой обсуждались вопросы общей безопасности[57]. Поэтому с учетом полученной информации, представители Microsoft позиционировали Vista как самую защищенную ОС Windows. В ходе презентации Джон Лэмберт (англ.  John Lambert), руководитель подразделения Microsoft, рассказывал об исправленных уязвимостях системы, ранее обнаруженных в бета-версиях[56]. Через некоторое время подошёл черёд Йоанны выступать. Во время её презентации весь зал был набит до отказа, несмотря на то, что это было последнее выступление последнего дня в рамках конференции по безопасности на «Black Hat». Для исследований и демонстрации Йоанна использовала одну из ранних тестовых версий Windows Vista. В качестве одного из способов защиты системы корпорация Microsoft внедрила в в 64-битную версию своей системы механизм блокировки неподписанного кода (то есть не имеющего цифровой подписи). Однако, Йоанна нашла возможность обхода этой проверки. Для выполнения атаки требуются права администратора, что в теории должно было быть блокировано механизмом User Account Control (UAC), который урезает права пользователей, а при необходимости выполнения важных операций требует от пользователей подтверждения. Однако на вопрос о том, как она смогла обойти UAC Йоанна ответил "Я просто нажала «Принять», пояснив при этом, что это сообщение пользователям выдается так часто, что они уже автоматически на него отвечают, уже толком не понимая, что они делают. В ходе презентации сама же Йоанна заявила следующее:

« Тот факт, что этот механизм обходится не означает того, что Vista совсем незащищена. Просто она не настолько защищена, как это рекламируется. Чрезвычайно сложно реализовать 100-процентную защиту ядра. »

Завершила свое выступление презентацией уже нашумевшего к тому моменту проекта Blue Pill[58].

Реакция корпорации Microsoft была довольно спокойной. Так, Остин Уилсон (англ. Austin Wilson) 7 августа 2006 года в одном из официальных блогов компании, посвященном безопасности Windows Vista с долей иронии написал следующее, подчеркнув наличие у неё администраторских прав в атакуемой системе:

« Йоанна несомненно чрезвычайно талантлива. Она продемонстрировала способ, которым кто-либо обладая правами администратора может внедрять неподписанный код в ядро 64-битных версий Windows Vista. Некоторые восприняли это так, что некоторые нововведения Microsoft в области безопасности оказались бесполезными. Это не так. Важно понять две вещи: "серебряной пули" не существует когда мы говорим о безопасности, и чрезвычайно сложно защититься от атаки пользователя, сидящего за консолью компьютера с правами администратора. Обе демонстрации, относящиеся к подписыванию драйверов и виртуализации, начались с допущения того, что человек, пытающийся выполнить код, уже обладает администраторскими привилегиями на этом компьютере[59]. »

Однако, далеко не все аналитики согласились с подобным ответом. Так например, Крис Касперски анализируя информацию, представленную Йоанной, возразил:

« Мол, с правами администратора (а "Голубая Пилюля" требует их) еще и не такое возможно! А, что, собственно говоря, с ними возможно?! Загрузить неподписанный драйвер, либо каким бы то ни было другим легальным способом проникнуть на уровень ядра нельзя, что доставляет множество проблем как самим администраторам, так и разработчикам. Во имя ее величества Безопасности с этим можно было бы и смириться, если бы Microsoft заткнула все лазейки, а так получается, что нас вынуждают поступиться частью свобод и удобств, предлагая взамен... ничего! Где логика?! Как всегда, логика на стороне Microsoft, преуспевшей только в одном - в продвижении своих глюкодромов на рынок[60]. »

Осознав успех проекта «Blue Pill», вскоре после этого Йоанна формирует внутри COSEINC небольшую группу исследователей под названием «Advanced Malware Labs», главной целью которой была дальнейшая работа в области вредоносного ПО, основанного на виртуализации. Однако, после нескольких месяцев работы в компании сменились приоритеты, и работа над Blue Pill была закрыта[61].

21 сентября 2006 года Йоанна вновь выступает с докладом «Subverting Vista Kernel for Fun and Profit» (рус. «Сокрытие ядра Vista для развлечения и пользы») на конференции Hack In The Box 2006[62], проходящей в Куала-Лумпур, Малайзия. Версия Blue Pill, представленная на конференции, осталась прежней, но в качестве атакуемой ОС теперь использовался новый выпуск Windows Vista RC1[63] (тогда как ранее использовалась версия Windows Vista Beta 2[64]).

Период работы в Invisible Things Lab (2007 — наст. время)[править | править вики-текст]

В апреле 2007 года Йоанна решает покинуть COSEINC и создать собственную компанию «Invisible Things Lab» («рус. Лаборатория невидимых вещей»), специализирующуюся на консультационных услугах и исследованиях в области информационной безопасности. Само создание собственной компании было проведено без лишней шумихи, а ее дебют был приготовлен на июльский Black Hat USA. В названии фирмы обыгрывалось название ее блога «Invisible Things», ставшего к тому моменту весьма популярным. 1 мая 2007 года в компанию на должность главного разработчика устраивается россиянин Александр Терешкин (также известный как 90210), также бывший член COSEINC AML[61][65]. Юридически фирма оформлена в Варшаве, Польша. Физического офиса у нее нет. Сама Йоанна о своей компании говорит так:

« Мы гордимся тем, что мы - современная компания. У нас нет физического офиса вообще. Все работают на дому, а информацией мы обмениваемся через почту с шифрованием. У нас нет такого, чтобы работник высиживал в офисе с девяти до пяти. Работа, которой мы занимаемся, требует креативности, и было бы глупо заставлять людей высиживать чёткий график[3]. »

Компания специализируется на вопросах безопасности операционных систем и виртуальных машин и оказывает различные консультационные услуги. В 2008 году в компанию приходит Рафал Войчук, сотрудничавший с Йоанной и Александром ранее[66]. Александр Терешкин в ITL работает на должности главного исследователя. По словам Йоанны, они вместе с Александром занимаются изучением угроз и консультационными проектами, однако Александр немного больше времени уделяет программистской работе, а сама Рутковская сосредоточена непосредственно на бизнес-задачах[67].

10 мая 2007 года открывала конференцию NLUUG, проходившую в Эде, Нидерланды[68][69]. Её доклад, озаглавленный как «Virtualization — The Other Side of the Coin» («рус. Виртуализация - обратная сторона монеты»), вновь был посвящён проекту Blue Pill[70]. В ходе презентации рассматривались достоинства и недостатки недавно представленной технологии виртуализации. Значительная часть доклада повторяла материал доклада «Subverting Vista Kernel», представленного Йоанной в прошлом году на конференции Black Hat, но ограничивался лишь темой виртуализации (без обсуждения атаки на ядро Windows Vista), а также рассматривались еще несколько вопросов с «философской» точки зрения[22].

13 мая 2007 года Йоанна должна была выступить на конференции CONFidence 2007, проходящей с 12 по 13 мая в Кракове[71]. Её доклад, получивший условное название «A la carte» («рус. На выбор»), по сути представлял собой несколько заранее заготовленных тем (те доклады, с которыми Йоанна выступала в то время), а выбирать конкретную тему из предложенных должны были зрители путем голосования. Однако из-за болезни Йоанны выступление не состоялось[72]. (Кстати, именно по этой причине на сайте CONFidence доклад Йоанны в списке присутствует, но недоступен для скачивания[73].)

16 мая 2007 года открывает конференцию Info-Security Conference 2007 в Гонконге[68][74]. В докладе, озаглавленном «Human factor vs. Technology» («рус. Человеческий фактор против технологии»), Йоанна рассмотрела современные проблемы в обеспечении безопасности операционных систем с точки зрения как пользователя так и технической, а также изложила свои соображения по поводу решения этих задач в дальнейшем[75].

31 мая 2007 года Йоанна выступает на московской на выставке-конгрессе Security@Interop Moscow 2007 с ключевым докладом «Вирусы-невидимки — победят хорошие парни»[68][76].

28 июля 2007 года Йоанна вместе с Александром Терешкиным в рамках Black Hat USA Training 2007: Weekend Session проводят тренинг Understanding Stealth Malwareрус. Понятие скрытого вредоносного ПО») на Black Hat, проходившим со 28 июля по 2 августа в Лас-Вегасе, США[68][77]. Слушателям курса предлагалась возможность на более глубоком уровне изучить основы работы скрытого вредоносного ПО, его взаимодействие с операционной системой, аппаратным обеспечением и сетью. В рамках курса слушатели могли ознакомиться и поэкспериментировать с несколькими неопубликованными концептами руткитов, специально созданными для этого курса и схожими с Deepdoor, FireWalk, Blue Pill и прочими. Также кратко рассматривался вопрос об их обнаружении[78].

А несколько дней спустя, 2 августа, там же Йоанна и Александр представили технический доклад «IsGameOver(), anyone?» («рус. ИграОкончена() или кто-нибудь еще?»)[68][79]. В основу доклада был положен новый практический метод атаки «на лету» на ядро Vista x64, а также рассмотрение недостатков технологии TPM/Bitlocker с точки зрения подобных атак. Значительная часть доклада была посвящена презентации новых деталей о вредоносном ПО, использующим виртуализацию. Сюда вошли различные методы обнаружения, которые могли быть использованы либо для выявления использования виртуализации, либо для нахождения самого вредоносного ПО. Рассматривались способы обхода вредоносным ПО средств защиты и варианты реализации вложенной виртуализации[80].

17 сентября 2007 года Йоанна выступает на IT-саммите Gertner по вопросам безопасности в Лондоне, Великобритания[68].

23 октября 2007 года выступила на Северном форуме по вопросам виртуализации, проходившем в Стокгольме, Швеция[68].

В середине ноября 2007 года Йоанна выступила с докладом «Информационные технологии и человеческий фактор» на Российском съезде директоров по информационным технологиям, проходившем в Ростове-на-Дону, Россия. Ее доклад был посвящен новому подходу, позволяющему перехватывать контроль над процессорами с аппаратной поддержкой виртуализации[81].

В 2007 году она демонстрирует ненадежность и возможность обхода некоторых типов hardware-based памяти (например, основанной на FireWire) [82].

В 2008 году Рутковская со своей командой сосредоточилась на исследованиях безопасности гипервизора Xen [83].

25 марта 2008 года совместно с Терешкиным проводит тренинг по скрытому ПО на Black Hat в Амстердаме[68].

8 апреля 2008 года выступила с докладом на крупной конференции RSA Conference в Сан-Франциско, США[68][84].

24 апреля 2008 года выступает на конференции RISK в Осло, Норвегия[68].

16 мая 2008 года как один из специально приглашенных специалистов своей презентацией «Security Challenges in Virtualized Environments» («рус. Проблемы безопасности в виртуальной среде») открывает конференцию CONFidence 2008, проходящей с 16 по 17 мая в Кракове[85]. Презентация была посвящена различным потенциальным проблемам безопасности в виртуальной среде: руткиты, использующие в своей основе виртуализацию (например, Blue Pill), изолируемые субъекты виртуальных машин, проблемы «доверия» витуальным машинам, вложенная виртуальность и ее влияние на безопасность виртуальных систем[86].

4 августа 2008 года совместно с Терешкиным проводит треннинг по скрытому ПО на Black Hat в Лас-Вегасе[68]. В одном из интервью, взятому у нее за кулисами конференции, на вопрос о том, как ее исследования влияют на промышленное использование гипервизоров, Йоанна ответила, что «одним из преимуществ ее работы является то, что люди становятся более осведомленными в выборе гипервизоров, но главной целью все же является донесение информации до поставщиков решений, которые должны знать об опасностях применения, как от них защищаться и их исправлять»[87].

7 августа 2008 года на конференции Black Hat Йоанна, Рафал и Александр продемонстрировали, что ошибка, обнаруженная в BIOS материнской платы DQ35JO позволяет в том числе обходить защиту памяти гипервизора Xen. Несколько недель спустя Intel выпустила обновленный BIOS, исправляющий данную ошибку, после чего Рутковская опубликовала все подробности механизма атаки[88] и код, это демонстрирующий[89]. Атака была основана на использовании возможности переназначения памяти (англ. memory remapping или англ. AKA memory reclaiming) чипсета и позволяет обойти определенные механизмы защиты памяти, реализованые в процессоре или чипсете. Причем подобным способом можно обойти и защиту памяти SMM, получив к ней полный доступ. В дальнейшем эта уязвимость была более подробно ими исследована в ходе изучения уязвимостей SMM, позволив им изучить двоичный код SMM, что позволило найти еще уязвимости в нем[90].

10 декабря 2008 года объявили о нахождении новых уязвимостей в Intel Product Security Response Center, касающихся SMM. Все эти найденные SMM-уязвимости являются результатом единого проектирования реализации определенной функциональности небезопасным способом. В результате этого, в обработчике SMM присутствует более 40 потенциально уязвимых мест (эксперименты проводились на материнской плате DQ35JOE со всеми патчами, доступными на декабрь 2008). Из найденных уязвимостей только две были вполне успешно опробованы, так как в использовании остальных Йоанна и … не видели никакого практического смысла. По их мнению, корректное решение данной проблемы заключалось бы в полном перепроектировании существующих обработчиков SMM. В личной переписке представители Intel подтвердили наличие проблемы в «мобильных, десктопных и серверных материнских платах» без упоминания каких-либо подробностей и уязвимых моделях. Йоанна и … предположили, что атаке подвержены все недавно выпущенные материнские платы Intel.

Intel обещала исправления прошивок к лету 2009 года, попросив при этом не раскрывать деталей уязвимостей в SMM, пока все соответствующие патчи не будут готовы. Поэтому детальное описание уязвимостей должно было быть представлено на конференции Black Hat USA 2009, запланированной на конец июля 2009 года. Представители Intel сообщили, что они уведомили представителей Координационный центр CERT об этой проблеме, поскольку по их мнению, подобные ошибки могут содержаться и в BIOS других производителей. КЦ CERT присвоил этой ошибке порядковый номер VU#127284[90].

2 сентября 2008 года Йоанна выступает на IT-форуме по безопасности в Осло[68].

18 февраля 2009 года Йоанна совместно со своим коллегой Рафалом Войчуком представила доклад Attacking Intel Trusted Execution Technologyрус. Атака на технологию доверенного исполнения Intel») на конференции Black Hat DC 2009, проходившей с 16 по 19 февраля 2009 года в Крайстал-сити (Арлингтон, Вирджиния) (en)[91][92]. Доклад посвящен обнаруженному в конце 2008 года способу обхода защитных технологий Intel Trusted Execution Technology (части брэнда Intel vPro) и Intel System Management Mode.

В начале доклада речь шла об уязвимостях, позволяющих обходить технологию Dynamic Root of Trust Measurement (сокр. DRTM), что в общем случае ставит под угрозу значительную часть современных систем. Затем речь зашла о проблемах в Static Root of Trust Measurement (сокр. SRTM), точнее, о необходимости проверять каждую часть кода, исполняемого после начала загрузки системы[93].

Как известно, технология Intel Trusted Execution Technology (сокр. TXT), являющаяся реализацией «позднего запуска» (или отложенного запуска), не проверяет состояние системы перед запуском, позволяя тем самым защищенную загрузку системы даже на зараженном компьютере. Но Йоанна и Рафал выяснили, что в TXT не была предусмотрена защита во время выполнения, то есть банальная защита от переполнения буфера в коде гипервизора. TXT рассчитан лишь на защиту при запуске, то есть данный механизм гарантирует, что загружаемый код на момент загрузки действительно тот, что должен запускаться. Однако, есть фрагмент системного ПО, которое должно быть доверенным. Такой фргамент называется и называется System Management Mode (сокр. SMM).

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

  1. заражение системного обработчика SMM,
  2. заражение свежезагруженного защищенного кода из зараженного обработчика SMM.

Йоанна с Рафалом представили код, демонстрирующий атаку по подобной схеме на гипервизор Xen, загружаемого при помощи модуля tboot. Tboot обеспечивает защищенную загрузку Linux и Xen при помощи функционала позднего запуска Intel TXT. По идее, tboot должен гарантировать, что после загрузки корректного (то есть немодифицированного) гипервизора Xen (и только в этом случае!), корректные данные будут загружены в регистры TPM. Но на практике, это означает, что только определенная (доверенная) версия гипервизора Xen получит доступ к защищенным областям TPM, и/или сможет положительно идентифицировать себя для взаимодействия (например, с ноутбуком системного администратора) при помощи специальной возможности TPM «Remote Attestation» («рус. Удаленная проверка»). Таким образом, Йоанна и Рафал показали, что при помощи зараженного обработчика SMM можно модифицировать только что загруженную виртуальную машину, то есть атака полностью обходит все защитные механизмы, предоставляемые TXT для защиты загрузки.

В качестве защиты от подобных атак Intel разрабатывали механизм, называемый SMM Transfer Monitor (сокр. STM), который представляет собой некое подобие среды (или «песочницы»), в которую помещается существующий обработчик SMM путем виртуализации при помощи технологий VT-x и VT-d. При этом STM должен восприниматься как взаимодействующий гипервизор (англ. peer hypervisor) для виртуальной машины, загружаемой поздним запуском, и во время позднего запуска STM должен анализироваться. Но на момент демонстрации данная технология была по-прежнему недоступна, поскольку по выражению представителей Intel (в частной переписке) «она не имела коммерческого смысла»[90].

15 мая 2009 года с докладом «Thoughts about Trusted Computing» («рус. Мысли по поводу доверенной обработки информации») выступает на конференции CONFidence 2009, проходившей с 15 по 16 мая 2009 года в Кракове[94]. Доклад полностью посвящен технологии Trusted Computing: что это такое, основные блоки, составляющие технологию (TPM, VT и TXT) и доступные в современном оборудовании, обсуждение сценариев применения подобного оборудования, а также обсуждение различий между теоретическим функционалом и практическим ограничением его применения[95].

26 мая 2009 года Йоанна представила презентацию на EuSecWest в Лондоне[68].

25 июля 2009 года Йоанна и Александр проводят треннинг по скрытому ПО на Black Hat в Лас-Вегасе[68].

27 июля 2009 года Йоанна и Рафал проводят тренинг по защите виртуализации на Black Hat в Лас-Вегасе[68].

15 сентября 2009 года представила презентацию на Intel Security Summit в Хиллсборо, Орегон, США[68].

29 октября 2009 года представила презентацию на Computerbild Anti-Virus-Symposium в Гамбурге[68].

24 ноября 2009 года Йоанна делает ключевой доклад на семинаре по безопасности в Universität der Bundeswehr в Мюнхене[68].

16 апреля 2010 года представила презентацию на CampusParty EU в Мадриде[68].

Разработки и исследования[править | править вики-текст]

Red Pill[править | править вики-текст]

В ноябре 2004 года Йоанна опубликовала код программы Red Pill и описание используемой ею уязвимости. Название программы (как и название проекта Blue Pill) было взято из кинофильма «Матрица», где в одной из сцен главному герою предлагаются две пилюли на выбор: синяя — чтобы остаться в системе (в Матрице), красная — чтобы из нее выйти. Рутковская сравнивает глотание красной пилюли с возвратом подпрограммой значения, отличного от нуля (то есть сообщения об ошибке), что в кинофильме позволило герою понять, что он находится в виртуальном мире. Основной задачей программы была демонстрация возможности определить использование виртуальной машины при помощи SIDT-инструкции процессора, выполняемой в непривилегированном режиме, но возвращающей содержимое регистра, используемого внутри ОС.

Основным приемом, позволявшим такое сделать, был анализ расположения регистра таблицы описания прерываний (англ. interrupt descriptor table register, сокр. IDTR). SIDT-инструкция помещает содержимое IDTR в указанный операнд, то есть размещает его в памяти, причем речь идет уже о переразмещении IDT-таблицы по определенному адресу.

Йоанна впервые заметила подобное странное поведение SIDT-инструкции за несколько лет до этого, когда тестировала Suckit-руткит на VMWare. Данный руткит вполне корректно работал на реальной ОС, но выдавал ошибку при запуске на виртуальной машине. Йоанна потратила несколько часов на выяснение того факта, что проблема заключалась в SIDT, которую использовал Suckit чтобы получить адрес IDT-таблицы.

При этом сама Йоанна не отрицает, что подобные исследования проводились и до нее. Так, например, она ссылается на документ, опубликованный в 2000 году в USENIX, который посвящен проблеме реализации виртуальных машин на процессорах фирмы Intel. В числе обсуждаемых проблем как раз и была проблема с SIDT.

Идея проекта была представлена Йоанной в октябре на IT Underground 2004 в Варшаве, Польша. После конференции, 18 октября Дейв Эйтел опубликовал свой отчет о поездке на эту конференцию, привлекший немалый интерес. В результате, Йоанна начала получать множество писем от людей, желающих узнать, «как обнаружить использование VMWare при помощи одной инструкции»[22][30].

В итоге, 14 ноября 2004 года Йоанна выложила Red Pill в виде исходного кода небольшой программы, написанной на Си[30]. Этот код необходимо было скомпилировать на Windows, работающей на процессоре Intel[96].

Но, к сожалению, у этой программы были недостатки, причем главным недостатком программы оказалась ее неспособность определять аппаратную виртуализацию:

« Есть разница между определением виртуализации и определением специфического гипервизора, такого как BluePill, о чём мы уже говорили ранее. Следует помнить, что RedPill был нацелен на определение программной виртуализации, которую использовали продукты VMWare ещё до того, как Intel и AMD представили VT-x/AMD-v (до 2006 года). Мой оригинальный детектор RedPill, который был опубликован в 2004 году, не способен определять аппаратную виртуализацию[3]. »

NUSHU[править | править вики-текст]

В декабре 2004 года Йоанна на 21-м Chaos Communication Congress в Берлине выступила с докладом по скрытым каналам в ядре Linux версии 2.4. К этой презентации ею была подготовлена концепт-программа, способная продемонстрировать возможную опасность от скрытых каналов в корпоративных сетях и тем самым предоставить исследователям данные по этим каналам для анализа.

Согласно сопроводительной заметке, написанной самой Йоанной, программа широко не тестировалась и является лишь демонстрацией концепции самой идеи[97].

2 января 2005 года Йоанна на своем сайте объявила об открытии материалов и кода NUSHU[30].

Программа вызвала интерес в хакерском сообществе, вследствие чего было предложено несколько способов обнаружения этой программы. Так, например, Стивен Мердок и Стивен Льюис из Кембриджской компьютерной лаборатории (www.cl.cam.ac.uk) в апреле 2005 года опубликовали документ, посвященный скрытым каналам в TCP/IP. В этом документе, в частности, представлено описание метода обнаружения скрытых каналов, основывающихся на принципе NUSHU, и предложена новая реализация идеи скрытых каналов под названием «Lathra»[30][98].

В середине ноября 2005 года Евгений Тумоян и Максим Аникеев из Таганрогского государственного университета опубликовали документ «Network Based Detection of Passive Covert Channels in TCP/IP» («рус. Сетевое обнаружение пассивных скрытых каналов в TCP/IP»), описывающий новый способ обнаружения скрытых каналов (в том числе и каналов, созданных программой NUSHU) на основе использования ISN-нумерации в стеке протоколов TCP/IP[99]. Через месяц данный документ был выложен и для бесплатного ознакомления[30].

Выступая на 22-м Chaos Communication Congress в конце декабря 2005 года Стивен Мердок во время своей презентации специально уделил внимание техническим подробностям о работе программы NUSHU. Сама Йоанна посчитала эту презентацию «очень клевой»[30].

FLISTER[править | править вики-текст]

FLISTER — концепт-код для демонстрации возможности обнаружения файлов, скрытых Windows-руткитами сразу в обоих режимах пользователя и ядра. Программа основана на использовании ошибок (как правило, сделанных авторами руткитов) обработки вызова функции ZwQueryDirectoryFile() с методом ReturnSingleEntry, установленным как TRUE[100].

Программа была написана в начале 2005 года[101]. 24 января 2005 года Йоанна опубликовала исходный код программы[30].

Тесты, проведенные в начале 2007 года, показали, что данная программа не только нестабильна, но и «обнаружение руткитов при помощи этой программы практически невозможно»[102].

modGREPER[править | править вики-текст]

modGREPER — детектор скрытых модулей для Windows 2000/XP/2003. Программа просматривает всю память, используемую ядром (адреса 0x80000000 — 0xffffffff), в поисках структур, похожих на корректные объекты описания модулей[100]. Пока что программа распознает лишь два наиболее важных типа объектов: довольно известный _DRIVER_OBJECT и _MODULE_DESCRIPTION. modGREPER обладает неким подобием встроенного искусственного интеллекта (точнее, несколько наборов логических правил, описывающих возможные поля структуры), что позволяет ему определять, действительно ли данные байты описывают объект модуля.

Затем modGREPER строит список найденных объектов, сравнивает их друг с другом, и в итоге сравнивает полученный список со списком модулей ядра, полученного при помощи документированных функций API (EnumDeviceDrivers).

Подразумевалось, что modGREPER был в состоянии обнаруживать все виды сокрытия модулей, используемые на момент выхода программы. Кроме того, некоторые из модулей могут помечаться как «SUSPECTED» («рус. Подозрительные»). Это применяется к нескрытым модулям, чьи соответствующие файлы образов или отсутствуют или расположены в скрытых каталогах (скрытых руткитом, а не системой). Данное поведение было добавлено из-за того, что большинство руткитов даже не пытаются скрыть свои модули ядра от API.

Программа также может обнаруживать и выводить список незагруженных модулей ядра. Это иногда позволяет более продвинутые (бездрайверные) руткиты ядра. Однако этот список имеет некоторые ограничения: у него ограниченный объем и он содержит лишь основное (базовое) имя модуля (без указания пути).

Однако, сама же Йоанна признала, что вполне возможно писать руткиты, не поддающиеся подобной проверке. Причем, в качестве основной цели выпуска такой программы она сама же указала на стремление простимулировать хакеров на написание более изощренных руткитов[103].

Первая версия программы (0.1) была выпущена 6 июня 2005 года, вторая и последняя на данный момент (0.2) — 14 июня 2005 года[104].

Тесты, проведенные в начале 2007, показали, что данная программа не только нестабильна, но и «обнаружение руткитов при помощи этой программы практически невозможно»[102].

System Virginity Verifier[править | править вики-текст]

Программа представляет собой небольшую консольную утилиту, запускаемую из командной строки. Идея, лежащая в основе SVV, заключается в проверке основных системных компонентов Windows, которые различные вредоносные программы стремятся изменить. Проверка позволяет гарантировать целостность системы и выявлять потенциальное заражение системы[100].

В конце сентября 2005 года на конференции «Hack In The Box» в Куала-Лумпуре, Малайзия, представила первую версию программы (1.0)[105]. 3 октября 2005 года Йоанна опубликовывает первую версию программы на своем сайте[30]. 1 ноября 2005 года была опубликована первая стабильная версия (1.1) программы[106].

Тесты, проведенные в конце 2005 года, показали, что данная программа реализует лишь «ограниченный набор тестов», выявляя лишь те руткиты, которые «либо скрывают лишь часть своих данных, либо удаляют себя перед перезапуском системы»[107].

25 января 2006 года на конференции Black Hat Federal представила версию 2.2[108].

Последняя на данный момент версия (2.3) была опубликована 27 февраля 2006 года[106].

12 мая 2006 года Йоанна объявила в своём блоге об открытии исходного кода SVV, поскольку, по её словам, у неё совершенно нет времени заниматься её дальнейшей разработкой, но при этом она продолжает считать подход, использованный в программе, верным и многообещающим. Согласно лицензии, под которой она открыла код, позволяет пользователям делать всё что угодно с исходниками, вплоть до использования их в коммерческих целях[109].

Тесты, проведенные в начале 2007, показали, что данная программа не только нестабильна, но и «обнаружение руткитов при помощи этой программы практически невозможно»[102].

Blue Pill[править | править вики-текст]

Йоанна начинает обдумывать подобный проект примерно с марта 2006 года, когда к ней попала документация AMD по новой технологии виртуализации AMD-V (ранее известной как Pacifica). Первые процессоры с поддержкой этой технологии попали на рынок в конце мая, и уже в первую неделю июня Йоанне удалось достать в Польше один из таких процессоров. Начиная с этого момента ей потребовалось ровно шесть дней для написания первой действующей версии Blue Pill[49]. Программа была представлена на конференции Black Hat Briefings, проходившей в Лас-Вегасе 3 августа 2006 года[61].

« Когда Microsoft объявила в прошлом году о том, что ядро будет защищено от загрузки [неавторизованного] кода, я подумала: "Мммм, а это интересная задачка. Мне стоит побаловаться с этим[5]. »

Некоторые эксперты в области руткитов (например, Грег Хогланд, написавший один из первых руткитов для Windows) утверждали, что руткиты на основе виртуальных машин являются лишь лабораторной игрушкой и не несут в себе реальной угрозы. В ответ на это Йоанна возразила, что это утверждение вполне может быть справедливо для таких программ как SubVirt, разработанного сотрудниками Microsoft Research и Мичиганского университета, но не для Blue Pill или Vitriol, поскольку они основываются на аппаратной виртуализации, а не программной[110].

Вскоре после закрытия COSEINC AML, Йоанна основывает Invisible Things Lab, после чего работа над Blue Pill возобновилась. Йоанна и Александр Терешкин принимают решение написать новый руткит Blue Pill (чтобы отличать новый Blue Pill от оригинального, ему присвоили название New Blue Pill), чтобы им можно было пользоваться для дальнейших исследований, а также в образовательных целях. Большая часть кода нового Blue Pill была написана Терешкиным. Новый Blue Pill значительно отличался от оригинального, причем не только реализованными новыми возможностями, но и изменениями в архитектуре (теперь она стала похожа на HVM, используемую в XEN 3).

Рон Фан (англ. Rong Fan) переделал новый Blue Pill для работы с процессорами Intel, добавив при этом поддержку аппаратной виртуализации Intel VT-x. Рон также добавил поддержку вложенной виртуализации на основе VT-x для последующих NBP, но этот код не может быть опубликован из-за соглашения об ограничении разглашения, но аналогичная поддержка аппаратной виртуализации AMD в открытом коде присутствует.

С осени 2007 года поддержкой работы над новым Blue Pill занимается американская компания Phoenix Technologies[61].

Qubes[править | править вики-текст]

7 апреля 2010 года Йоанна объявила о разработке новой высокозащищенной операционной системы Qubes (от англ. cubes — кубы, кубики). Работа над ОС началась в декабре 2009 года, около двух месяцев ушло на проектирование системы, затем начался этап написания кода[111]. Архитектура Qubes была спроектирована Йоанной и Рафалом, код виртуализации графического интерфейса написан Рафалом, а остальная часть системы — в основном Йоанной[112].

По поводу названия ОС сама Йоанна говорит[111] следующее:

О, я думаю, это довольно очевидно. Qubes — это такой своеобразный способ написания слова Cubes, и каждый такой «куб» должен символизировать виртуальную машину. Когда мы думаем об использовании виртуальной машины в защите, то мы представляем себе некую клетку или куб, то есть что-то, что способно в себя вмещать и ограничивать то, что у неё внутри (например, вредоносную программу).

По сути, разработка сейчас представляет собой некую надстройку над операционной системой Fedora 12. На данный момент Qubes не имеет собственной программы установки, поэтому разработчики подготовили все необходимые RPM-пакеты и протестировали их на данной системе. Разработчики предполагают, что Qubes будет работать и на других Linux-системах, поддерживающих RPM-пакеты, но эта возможность ими не тестировалась. После написания собственной программы установки разработчики хотят превратить Qubes в самостоятельную систему, не требующую установки других ОС[113].

Выпуск версии Release 1 Alpha 2 был назначен на 11 июня 2010 года, первая бета-версия должна выйти 1 сентября 2010 года, а первая стабильная версия — 31 декабря 2010 года[114].

Релиз системы версии 1.0 состоялся 3 сентября 2012 года[115][116].

Награды и достижения[править | править вики-текст]

  • 2 января 2007 года Рутковская была удостоена звания одной из Пяти хакеров, отметившихся в 2006 году, присужденного ей журналом eWeek за разработку и демонстрацию в действии Blue Pill, а также обнаружение и демонстрацию уязвимости антивирусного ПО, тем самым продемонстрировав, что разработчики популярных ОС еще не готовы к аппаратной виртуализации[117].
  • 15 апреля 2010 года издание Network World назвал Йоанну одной из 12 положительных хакеров («White Hat» hackers), которых надо знать[118].

Личная компьютерная техника[править | править вики-текст]

Лично для себя предпочитает продукцию корпорации Apple[5].

  • Основной рабочий компьютер — восьмиядерный Mac Pro (2 x 2,8 ГГц Intel Xeon) с 16 Гбайт памяти и 30-дюймовым монитором Apple. О нем отозвалась так:
« Это самый красивый настольный компьютер, который у меня когда-либо был - как по внешнему виду, так и по графическому интерфейсу[3]. »
  • В качестве универсального ноутбука использует старый чёрный MacBook (Santa Rosa, Core 2 Duo 2,2 ГГц, 4 Гбайт памяти) (откладывала покупку нового MacBook Pro с цельным корпусом, поскольку до недавнего времени у него не было поддержки более 4 Гбайт памяти)[3].
  • Voodoo Envy 133 приобрела из-за нового чипсета[3].

Также Йоанна пользуется еще несколькими компьютерами (как ноутбуки, так и десктопы), произведёнными не корпорацией Apple[3].

Интересы и увлечения[править | править вики-текст]

В качестве своего хобби Йоанна называет «программирование автономного шестипалого робота с мозгом на основе двух 8-битных микроконтроллеров»[3].

Личная жизнь[править | править вики-текст]

В 2007 году, на вопрос журналиста о том, что Йоанна считает своим самым большим достижением, та ответила: «Счастливую жизнь с моим партнёром».[4].

Интересные факты[править | править вики-текст]

  • В Польше наряду с именем «Joanna» используется и имя «Asia» (произносится как «Аща»), считающееся уменьшительной формой имени «Joanna». Поэтому в Польше Йоанну довольно часто зовут Ащей[119].
  • Впервые за руль автомобиля села в 26 лет, несмотря на то, что выросла и проживает в таком крупном мегаполисе как Варшава, поскольку, по её мнению, получить водительское удостоверение в Польше весьма трудно[5].
  • Среди браузеров предпочтение отдает Google Chrome:
« Основная причина выбора - мне понравился его графический интерфейс, он работает быстро и поддерживает все эти скрипты, Flash и Бог знает, что там ещё — всё, что нужно для просмотра типичных новостных сайтов сегодня[3]. »
  • Признаётся, что любит поспать:
« Лично для меня очень важно подремать после обеда. Я вообще не могу долго работать, если нормально не выспалась. Честно говоря, я даже день в офисе никогда не выдерживала[3]. »
  • Предпочитает итальянские рестораны и суши-бары[5].
  • Любит классическую музыку (скрипки, Вивальди, Паганини), а также спокойный джаз[5] (Smooth Jazz Cafe). Также слушает Queen[49].
  • Любимый фильм — вовсе не «Матрица», хотя Рутковская и смотрела его более трёх раз[49].
  • Говорит, что не может прожить без жевательной резинки и нескольких часов[4].
  • Группа хакеров «ZF0» (сокр. от Zero For 0wned) в пятом выпуске своего электронного журнала (он был опубликован 28 июля 2009 года) объявила Йоанну шарлатаном, попутно заявив, что официально добавили её в список объектов для троллинга, а также взломали её сайт[120].

Примечания[править | править вики-текст]

  1. Согласно польско-русской практической транскрипции. В некоторых русскоязычных источниках её имя записывается двойным транскрибированием (через англоязычный вариант) — Джоанна Рутковска.
  2. Invisible Things Lab — Resources (англ.)
  3. 1 2 3 4 5 6 7 8 9 10 11 12 Дмитрий Чеканов. Интервью с Джоанной Ратковской: виртуализация, руткиты и гипервизоры (рус.). Tom's Hardware (10 августа 2009 года). Проверено 14 декабря 2010. Архивировано из первоисточника 29 апреля 2012.
  4. 1 2 3 Хакер Джоанна Рутковска
  5. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 Black Hat Woman (англ.)
  6. 1 2 3 Joanna Rutkowska — o sobie i bezpieczeństwie systemów operacyjnych (польск.)
  7. 1 2 Rutkowska: Anti-Virus Software Is Ineffective (англ.)
  8. About the company (англ.)
  9. CONFidence 2007 — konferencja bezpieczeństwo sytemów, ochrona fizyczna, security.Joanna Rutkowska (англ.)
  10. 1 2 Black Hat USA 2003 Topics and Speakers (англ.)
  11. Bio — Jan Rutkowski (англ.)
  12. 1 2 Execution path analysis: finding kernel based rootkits (англ.)
  13. Bypassing Integrity Protection Driver (time vulnerability) (англ.)
  14. Another way to bypass Integrity Protection Driver ('subst' vuln) (англ.)
  15. Advanced Windows 2000 Rootkits Detection (англ.)
  16. Black Hat 2003 Multimedia Archives — Presentation, Audio and Video (англ.)
  17. Black Hat Briefings and Training USA 2003. Schedule (англ.)
  18. Windows под прицелом
  19. jkrutkowski@elka.pw.edu.pl
  20. 1 2 3 Who is Joanna Rutkowska? (англ.)
  21. http://invisiblethings.org/papers/chameleon_concepts.pdf
  22. 1 2 3 4 5 Papers and conference presentations (англ.)
  23. Bypassing Klister 0.4 With No Hooks or Running a Controlled Thread Scheduler (англ.)
  24. HiverCon Security Conference. Archive (англ.)
  25. Hivercon 2003 Call For Papers — The Community’s Center for Security (англ.)
  26. HiverCon 2003 Corporate Security Conference Final Speaker Announcement (англ.)
  27. Linux Kernel Backdoors And Their Detection (англ.)
  28. Rootkits Detection on Windows Systems (англ.)
  29. IT Underground trip report (англ.)
  30. 1 2 3 4 5 6 7 8 9 Invisiblethings.org. News archive (англ.)
  31. Passive covert channels in the Linux kernel (англ.)
  32. Hide-And-Seek: Defining the Roadmap for Malware Detection on Windows (англ.)
  33. Hack In The Box (англ.)
  34. HITBSecConf2005 — Malaysia " Joanna Rutkowska (англ.)
  35. Open Methodologies for Compromise Detection (англ.)
  36. Institute for Security and Open Methodologies
  37. (OWASP-NewJersey) Fw: (ISECOM-news) new project released — OMCD (англ.)
  38. Black Hat Federal 2006
  39. Rootkit Hunting vs. Compromise Detection
  40. Black Hat Briefings Federal 2006 Schedule (англ.)
  41. Windows Network Driver Interface Specification (англ.)
  42. Black Hat Federal 2006 Wrap-Up, Part 3 (англ.)
  43. IT-Defense 2006
  44. IT-DEFENSE 2006 | AGENDA (нем.)
  45. IT-DEFENSE 2006 | VORTRÄGE (англ.)
  46. Introducing Stealth Malware Taxonomy (англ.)
  47. Stealth Malware: Interview with Joanna Rutkowska (англ.)
  48. 1 2 Introducing Blue Pill (англ.)
  49. 1 2 3 4 Joanna Rutkowska — wywiad dla HACK.pl (польск.)
  50. CONFidence 2006
  51. CONFidence 2006 — trip report (англ.)
  52. Materiały zgodnie z programem konferencji (польск.)
  53. The Blue Pill Hype (англ.)
  54. About Speaker (англ.)
  55. Archive Program (англ.)
  56. 1 2 Microsoft gets good reception at Black Hat (англ.)
  57. Microsoft to lift lid on hacker conference (англ.)
  58. Vista hacked at Black Hat (англ.)
  59. Back From Black Hat (англ.)
  60. Blue pill/red pill - the matrix has windows longhorn (рус.)
  61. 1 2 3 4 Blue Pill Project (англ.)
  62. HITBSecConf2006 — Malaysia: CONFERENCE AGENDA (англ.)
  63. HITB — Researcher to make Blue Pill even harder to detect (англ.)
  64. At hacker conference, Microsoft gets credit for effort (англ.)
  65. Rutkowska Launches Own Startup (англ.)
  66. Evolution (англ.)
  67. Железная леди (рус.)
  68. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 Events (англ.)
  69. Voorlopig tijdschema (нид.)
  70. Virtualization — The Other Side of the Coin (англ.)
  71. CONFidence 2007 — konferencja bezpieczeństwo sytemów, ochrona fizyczna, security.Agenda (польск.)
  72. Past events (англ.)
  73. CONFidence 2007 — konferencja bezpieczeństwo sytemów, ochrona fizyczna, security.Prezentacje (польск.)
  74. The 8th Info-Security Conference 2007. Agenda (англ.)
  75. The 8th Info-Security Project. Ms. Joanna Rutkowska (англ.)
  76. Самая известная женщина-хакер выступит в Ростове-на-Дону в рамках CIO Summit Rostov
  77. Black Hat USA 2007 Training Sessions (англ.)
  78. Understanding Stealth Malware (англ.)
  79. Black Hat Briefings and Training USA 2007. Shedule (англ.)
  80. Black Hat USA 2007 Topics and Speakers (англ.)
  81. На Съезде IT-директоров рассказали о безопасности
  82. Beyond The CPU: Defeating Hardware Based RAM Acquisition Tools
  83. Xen virtualisation swallows a «Blue Pill»
  84. The RSA Absurd (англ.)
  85. CONFidence 2008 — konferencja bezpieczeństwo sytemów, security.Speakers (англ.)
  86. CONFidence 2008 — konferencja bezpieczeństwo sytemów, security. Joanna Rutkowska (англ.)
  87. Black Hat 2008: The Zen of Xen (англ.)
  88. Joanna Rutkowska and Rafal Wojtczuk. Detecting & Preventing the Xen Hypervisor Subversions. Presented at Black Hat USA, Las Vegas, NV, USA, 2008 (англ.)
  89. Rafal Wojtczuk, Joanna Rutkowska, and Alexander Tereshkin. Xen 0wning Trilogy: code and demos. http://invisiblethingslab.com/resources/bh08/, 2008. (англ.)
  90. 1 2 3 Rafal Wojtczuk & Joanna Rutkowska — Attacking Intel Trusted Execution Technology (англ.)
  91. Black Hat DC Briefings 2009 (англ.)
  92. Black Hat Briefings DC 2009 Schedule (англ.)
  93. Black Hat DC 2009 trip report (англ.)
  94. CONFidence 2009 — konferencja bezpieczeństwo sytemów, security. Speakers (англ.)
  95. CONFidence 2009 — konferencja bezpieczeństwo sytemów, security. Joanna Rutkowska (англ.)
  96. Red Pill… or how to detect VMM using (almost) one CPU instruction (англ.)
  97. NUSHU Passive Covert Channel in TCP ISN numbers. Readme (англ.)
  98. Embedding Covert Channels into TCP/IP (англ.)
  99. Network Based Detection of Passive Covert Channels in TCP/IP (англ.)
  100. 1 2 3 Tools and proof-of-concept codes (англ.)
  101. FLISTER — uncovering files hidden by Windows rootkits. Readme  (англ.)
  102. 1 2 3 Modern ARKs — illusion of detection? (англ.)
  103. modGREPER Readme (англ.)
  104. modGREPER changelog (англ.)
  105. System Virginity Verifier. Defining the Roadmap for Malware Detection on Windows System at Hack In The Box Security Conference (англ.)
  106. 1 2 SVV changelog (англ.)(в логе опечатка: версии 2.* выходили в 2006 году)
  107. Polowanie na duchy (польск.)28-11-2005
  108. Rootkit Hunting vs. Compromise Detection at Black Hat Federal 2006, 25 января 2006 (англ.)
  109. SVV Source Code Made Public! (англ.)
  110. Rutkowska: Anti-Virus Software Is Ineffective (page 2) (англ.)
  111. 1 2 Interview with Joanna Rutkowska! (англ.)
  112. Qubes FAQ (англ.)
  113. Qubes User’s FAQ (англ.)
  114. Roadmap — Qubes (англ.)
  115. Qubes OS 1.0 / Хабрахабр
  116. The Invisible Things Lab's blog: Introducing Qubes 1.0!
  117. Five Hackers Who Left a Mark on 2006 (англ.), Райан Нараин, eWeek.com
  118. 12 «White Hat» hackers you should know (англ.)
  119. Invisible Things Lab, Bitlocker/TPM bypassing and some conference thoughts (англ.)
  120. Zero For 0wned’s Summer of Hax (англ.)

Ссылки[править | править вики-текст]


Сайты и блоги
Статьи
Интервью
Прочее