Dirty Magic @ Penetration Testing
Пока мои коллеги вовсю подводят итоги прошедшего года и делают прогнозы на новый, я решил окончательно сорвать покровы с темных чародеев в сфере услуг тестирования на проникновение.
Чтобы не было разносудов, сразу скажу, что под пентестом я понимаю получение некоторого уровня доступа к заданному ресурсу при заданных ограничениях. Например,
– получить доступ к документам с грифом ДСП;
– получить максимальные привилегии на одном из сетевых устройств в ядре;
– получить root в кластере процессинга и т.п.
Главное, что вопрос полноты, как при аудите, не стоит.
А теперь самое вкусное – это ограничения. Перечислю их по порядку от банальных до более тонких:
– время – например, под атаку отводится 24 часа, после чего Game Over @ Jigsaw Movie;
– методы воздействия – технические, физические, социальная инженерия;
– объекты воздействия – ломайте как хотите, а узел X не троньте;
– ресурсы и мотивация потенциальных злоумышленников.
И вот тут начинается самое интересное. Команда высококлассных пентестеров обладает заведомо большей квалификацией и набором инструментов (в том числе платных, за 100500$$), чем среднестатистический вероятный Интернет-проходимец.
Теперь представим себе такую ситуацию:
- Я заказываю пентест своей корпоративной сети и сервисов, оговаривая профиль предполагаемого нарушителя (в профиль входит мотивация, квалификация, доступные ресурсы).
- Пентест делает коммерческая фирма, которая хочет все работы выполнить с минимальными издержками. Так что пентестеры p0wn’ят мою сеть, например, через DNS Rebinding, переходят к режиму “белого ящика”, находят уязвимость, которая подпадает под профиль нарушителя, обозначенный в договоре – вуаля!
- С одной стороны – да, получается, что тестируемая сеть не защищена от ожидаемых потенциальных нарушителей – есть конкретная уязвимость. С другой стороны мне абсолютно не понятно, будет ли уровень мотивации и квалификации потенциального злоумышленника, которого я ожидаю, достаточным для того, чтобы откопать и проэксплуатировать найденную уязвимость именно в режиме черного ящика. И моделирование именно такого процесса я ожидал, а не применение “ломика в рукаве”!
К чему я это все?
Во-первых, я за честные и открытые пентесты (открытые не как выборы, а как редиректы).
Во-вторых, я призываю всех наконец осознать важность включения модели нарушителя в аналитические работы по оценке защищенности IT-ресурсов.
Всех с наступающим!
So much drama in the PHD
И была осень, и свершилось тайное совещение, и было принято решение.
И настала зима, и было написано Call For Papers, и мы посмотрели на него, и нам понравилось.
Студенты! Аспиранты! Молодые исследователи! Отриньте сомнения! Проверьте себя! Пришлите тезисы на конкурс работ молодых ученых PHD!
Несколько важных моментов:
- Тезисы проходят анонимное перекрестное рецензирование. Это значит, что каждые тезисы будут обезличены и направлены как минимум двум рецензентам. Решение по работе будет приниматься на основе полученных рецензий. Таким образом, авторы непрошедших работ получат не просто “reject”, а конструктивную критику.
- Тезисы должны соответствовать как минимум двум важным критериям:
- ориентированность на практическую составляющую информационной безопасности (т.е. такая область как Information Security Governance или свойства эллиптических кривых для криптографии получаются out-of-scope);
- наличие научного подхода при получении и (очень важно) оценке применимости результата. - Принимаются тезисы, написанные в формате US Letter (шаблоны можно скачать вот здесь). Тезисы не в формате будут отклоняться автоматически.
- Авторы лучших работ вместе с соавторами и научными руководителями получат возможность представить свою работу на соответствующем треке форума Positive Hack Days.
Остальные подробности описаны на страничке мероприятия.
Я буду очень признателен, если читатели этого поста сообщат о мероприятии своим знакомым, которые могут быть в нем заинтересованы. Большое человеческое спасибо!
p.s. Я вижу большой плюс в том, чтобы представители академии встретились с практиками и техническими специалистами на форуме: им есть чему поучиться друг у друга. С одной стороны, я часто вижу практиков, которые не понимают контекста той или иной проблемы (т.е. не владеют уровнями абстракции), не понимают взаимосвязей насущных задач со смежными областями; не представляют, зачем нужна методика испытания эфективности технического средства, и как ее грамотно составить (см. работы по сравнению сканеров, IPSок, антивирусов и пр). С другой стороны, представители академии порой исследуют сферических коней в вакууме (зачем нужен их метод или инструмент? какова область его эффективного применения?) – полная оторванность от реальных каждодневных задач. А еще, мне кажется, многим исследователям будет интересно узнать, какие методы и средства реально работают на практике, а которые – лишь в теории (привет статическому taint-анализу javascript’а).
p.p.s. Текст песни “So much drama in the PHD” можно почитать вот тут, а саму песню послушать вот тут.
iCTF’2011
Буквально пару слов.
Третьего дня вонзались в iCTF’2011. Мне кажется, это главная игра для всех причастных. При всем уважении к PHD и ruCTF.
Наблюдательный читатель все равно бы заметил нытьё, так что я поною прямо:
– 13 место, 5-ое среди наших команд (в том году были 30-ые);
– сдали позиции с 6-ой до 13-ой за последний час, потому что не смогли допилить челенджи. Очень хочется верить, что не смогли, потому что не тупые, а устали, но это для злорадствующих.
Отдельно хочется отметить большое количество российсикх команд в топе:
– Чуть более копчёных элитных цыплёнков (перевод – авторский, бить – меня; капризель – превед), которые только в последние 15-ть минут про**ли лидерство каким-то упырям. Парни, мы за вас болели всю игру.
– Хакердом. Старые соперники, которые в середине игры никак не воспринимались нами всерьёз, но потом по итогам были выше. Alas for us all.
– Консистентность с ruCTFE – мы были 12-е и тоже 5-е среди наших (и тоже слили с высокого места, но там из-за сообщений об уязвимостях).
So, in anticipation for further challenges, we hail the winners:
1. We_0wn_Y0u from Austria
2. More Smoked Leet Chicken from Russia
3. FluxFingers (Mario, Reiners, cheers) from Germany.
…
and the last but not the least,
41. Bushbabies from Russia. Our team of youngsters. We wish them good luck and a progressive kick off.
5 копеек @ Zeronights
По горячим следам спешу записать впечатления от конференции Zeronights.
Лично я посещаю конференции (если не спикер) ради трех вещей:
1. Проверить, насколько правильно выбраны текущие источники получения информации об ИБ. Идея проста – чем меньше нового на конференции ты узнаешь, тем лучше подобраны твои источники.
2. Услышать взгляд умных людей на те или иные вопросы. Тут важно отметить, что интересует не какие-то данные (типа новый вид атаки или уязвимости), а именно продукт их переосмысления. Это порой помогает скорректировать миропонимание в лучшую сторону.
3. Потусить с community. У нас народ в community никак не похож на красноглазых зануд, общаться – одно удовольствие, градус здорового неадеквата в шутках – мое почтение :)
Попробую оценить fulfillment описанных целей на прошедшей конфе.
1. Около 90% услышанного я знал. Т.е. 10% услышанного было для меня новым. Это очень высокий показатель, наверное самый высокий из всех конференций, на которых я был (а их было достаточно). Самое большое впечатление произвел трик с заменой курсора в UI Redressing атаках.
2. По понятным причинам докладов на аналитические темы на конференции было немного, зато их качество – будь здоров. Федор – умнейший человек. Все, что он рассказывал, лично я слушал с большим удовольствием.
3. Я понимаю организаторов, которые устраивают отдельный ивент для спикеров. Но я-то на другой стороне. Я, например, с большим удовольствием бы попил пива с Владимиром Воронцовым, с Димой Частухиным, с Никитой Таракановым, с другими спикерами. Но нет. При двухдневной конференции задача решается просто: ужин для спикеров в день открытия, в день закрытия – свободная программа. Как быть с однодневной конференцией – надо думать.
Ну и еще из минусов:
1. Треки не синхронизировались. Логично предположить, что народ хочет перетекать из зала в зал после докладов. Реально получалось так, что при переходе в другой зал застаешь уже начавшийся доклад.
2. Для понаехавших людей хорошо бы было на сайте указать способы добраться до гостиницы. Как минимум, ближайшую станцию метро. Как максимум, номера общественного транспорта, номера заказа такси, паттерны с пробками. Лично у меня получилось классически: ловил тачку “с руки”, получал вопрос “а дорогу пакажишь?”, после чего вел таксиста по Яндекс-картам.
3. В первую половину дня было холодно в главном зале.
Плюсов же было намного больше. Вообще, я не ожидал увидеть столько людей. Организаторам – зачет. На мой взгляд, для первого раза количество факапов было крайне низким. Покидал конференцию с чувством глубочайшего удовлетворения от увиденного. О потраченном времени и деньгах не пожалел ни разу.
Отдельно хочется поздравить победителей конкурса от Яндекса по поиску уязвимостей: Владимира Воронцова, Алексея Синцова и Эльдара Заитова. Все молодцом!
Другие версии событий от участников:
– http://oxod.ru/?p=349
– http://sgordey.blogspot.com/2011/11/zeronights_27.html
– http://scii.ru/_shr/2011/11/zeronights-2011/
За что мне дали баллов на ZeroNights HackQuest
Все, должно быть, уже в курсе, что на берегах Невы в эту пятницу, 25 ноября, состоится первая питерская конференция, посвященная практическим аспектам ИБ – ZeroNights. Организаторы – группа Defcon Russia.
Для нагнетания правильной обстановки и прочего 3,14-ара группой добровольцев, состоящей из Владимира Воронцова, Алексея Синцова и Дарта Вейдера Dirk’а van Veen’а, был разработан и запущен HackQuest.
Спешу рассказать о заданиях, которые я решил. Читать далее…
Drive-by-Download: еще один способ отличить человека от робота
Напомню, что целью атак Drive-by-Download является распространение вредоносного кода, а реализуются они через привлечение жертв на вредоносный сайт с последующей эксплуатацией уязвимостей в ПО (браузер, flashplayer, pdfviewer, компоненты ActiveX и т.п.).
Для того, чтобы вредоносный сайт подольше жил, злоумышленники предпринимают целый ряд защитных мер (о них подробно написано в нашей статье “Drive-by-Download по-тихому или Маскируем вредоносные сайты от wepawet и его друзей” в сентябрьском номере Хакера), среди которых:
– отделяют уязвимых пользователей от неуязвимых (страницу с эксплойтом не хочется показывать абы кому);
– отделяют посетителей-человеков от роботов (роботы, а тем более боты всяких AV-производителей мало того, что не подвержены эксплойтам, так они еще могут заклеймить домен как вредоносный, что приведет к снижению времени его эффективной работы);
– отделяют новых посетителей от возвращающихся (вредоносному сайту не нужно повышенное внимание).
… и т.п.
Сегодня я хочу поделиться с вами одной идеей, с помощью которой можно отделить роботов от человеков. Итак, задача (упрощенно):
1. Есть страница X, на которую приходят (перенаправляются) посетители, в отношении коих будет проводиться атака Drive-by-Download.
2. Есть страница Y, на которой размещен непосредственно эксплойт.
Требуется: реализовать переход со страницы X на страницу Y таким образом, чтобы до страницы Y не дошли роботы, но дошли все или почти все человеки.
Усложним себе задачу, сделав следующие допущения:
1. Все роботы умеют интерпретировать Javascript. Иначе задача решается тривиально.
2. Все роботы построены на основе WebKit, а пользователи работают из-под браузера Google Chrome. Таким образом, методы fingerprinting’а также не применимы.
Сначала перечислим well-known варианты решения:
1. CAPTCHA. Не годится, ибо мы хотим свести к минимуму взаимодействие с пользователем. Кроме того, CAPTCHA на простой странице вызывает подозрения.
2. Можно регистрировать события от мыши и клавиатуры: мол, если есть – то человек, иначе – электронный болван. Но такие события эмулируются на раз.
Что же предлагается? Идея заключается в том, что типичные пользователи до автоматизма довели свою реакцию на раздражающие факторы: всплывающую рекламу или звук – немедленно выключить. Таким образом, делаем следующее: при переходе на нашу страницу пользователю демонстрируем всплывающую рекламу (полностью отрисованную с помощью Javascript), заслоняющую почти всю страницу. Нормальный пользователь тут же закроет такую рекламу. Бот – нет. Соответственно, зарегистрировав закрытие такого окна, перенаправляем пользователя на страницу Y, в противном случае – на сайт Диснейленда.
Обсуждая эту идею с Владимиром Воронцовым, получил справедливую критику метода: а что если с помощью WebKit мы будем делать скриншоты текущего окна (пример, как это работает – тут) и распознавать в полученных картинках крестики для закрытия рекламы, вычислять X и Y и эмулировать туда click мышью?
Можно в самой рекламе разместить много похожих крестиков. Например, показать смеющуюся японскую девочку anime-style – у них, как известно, глазки крестиком :)
Если мысль моя не нова, прошу кинуть ссылкой на первоисточник. Google мне ничего не сказал…
Забавный дуализм в оценке рисков ненаправленных атак на сайты
Многие владельцы небольших веб-сайтов не ожидают направленные атаки на свои ресурсы. Таким образом, задача обеспечения безопасности сводится к реализации ровно таких защитных мер, которых достаточно для предупреждения ненаправленных атак.
Напомню, что целью ненаправленных атак являются любые информационные ресурсы, после компрометации которых злоумышленник получит с них некоторый доход (единовременный или постоянный). Из определения следует, что ненаправленные атаки характерны во-первых, массовостью, и, во-вторых, невысоким уровнем мотивации злоумышленников в отношении своих целей. Действительно, вместо длительного взлома одной хорошо защищенной цели экономически выгоднее скомпрометировать несколько менее защищенных целей.
До недавних пор я считал, что в деле защиты от ненаправленных атак работает принцип двух товарищей и медведя. Принцип гласит, что для того, чтобы не быть съеденным медведем, не надо бежать быстрее медведя, а достаточно бежать быстрее своего товарища. В переложении на веб-безопасность это значит, что защищенность сайта должна быть немного выше, чем средняя защищенность других сайтов того же класса в той же гео-зоне. Идея понятна: злоумышленники, реализующие ненаправленные атаки, добиваются массовости. Следовательно, у них есть понимание того, когда анализ очередной цели стоит прекратить (ибо он становится не cost-effective, т.е. прибыль с данного сайта не покроет ресурсы, потраченные на его взлом) и перейти к следующей, вероятно более уязвимой цели.
Так вот на днях меня посетило озарение, что это не всегда так. Читать далее…
The Tangled Web
Являясь давним поклонником таланта Михаила Залевского, постоянно слежу за тем, что же делает гуру безопасности. Из его последних полезных проектов можно отметить:
- Книгу Silence on the Wire;
- Сборник информации по безопасности браузеров – Browser Security Handbook;
- Сканер веб-приложений с открытым исходным кодом skipfish.
И вот очередной релиз – книга "The tangled web". Лично я, ознакомившись с содержанием, уже сделал предзаказ. Кроме того, думаю сделать эту книгу базовой для студентов, которые приходят на веб-безопасность в нашу лабу. Кстати, издатель недавно выложил одну из глав новой книги, которая доступна вот тут.
Ну и в заключении список наиболее интересных постов Михаила с моей скромной точки зрения:
О роли модели угроз при анализе защищенности сайта и кое-что еще
Написал на сайт Internal Security несколько заметок, которые могут быть интересны аудитории. Вот они:
Роль модели угроз и профилей нарушителей при аудите безопасности.
Аннотация. Один из ключевых вопросов, возникающих у заказчика перед аудитом Сайта – определение перечня работ и оценка их стоимости. Иными словами, каким образом обосновать необходимость проведения аудита Сайта в том или ином виде с экономической точки зрения? Читать далее…
Типичные профили нарушителей безопасности сайтов.
Аннотация. Без понимания того, кто, зачем и каким образом собирается проводить атаки на Сайт достаточно затруднительно выбрать адекватные защитные меры. Что такое – адекватные? Адекватные меры – это прежде всего экономически обоснованные меры. Грубо говоря, зачем закладывать в годовой бюджет на обеспечение безопасности 10000$, если суммарный ущерб от предполагаемых атак за весь год составляет не более 8000$?
Так как для выбора адекватных мер необходимо представлять, какие именно атаки угрожают защищаемому объекту, целесообразно взглянуть на вопрос с “тёмной стороны силы”. В данной заметке описываются профили вероятных нарушителей безопасности сайтов. В профиль нарушителя входит описание его цели и обоснование мотивации. Читать далее …
Зачем кому-то нужно взламывать мой сайт? Об экономике ненаправленных атак в Интернет.
Обеспечение безопасности расширений в корпоративных информационных системах
Сегодня в рамках семинара RISSPA на конференции InfoSecurity Russia представлял доклад на тему “Обеспечение безопасности расширений в корпоративных информационных системах”. Надеюсь, не переборщил с “систематичностью” и “научностью”. Обсуждение в конце доклада – на 5 баллов! )
Свежие комментарии