четверг, 4 февраля 2010 г.

Все-таки зачем эти пентесты нужны?

В очередной раз поднята тема "пользы pentest".
Что не может не радовать. Значит актуальность некоторая есть и на Рускрипто я тему вынес в секцию не напрасно.
Попробую кратко высказаться.

Зачем pentest?

Реально встречаю четыре варианта (заслуживающих внимания):
  • доказать/наказать
  • придать импульс, приступить к планированию
  • посмотреть на результаты, проконтролировать
  • так надо (compliance)

Самый жесткий и зачастую чреватый для исполнителя/заказчика - первый. Поскольку доказуемые и наказываемые редко хотят быть доказанными и наказанными, что приводит к активному противодействию. Как на техническом так и на организационных фронтах.
В результате доказующий и доказуемый, вполне договорятся (в одной конторе крутимся, жить дальше надо вместе), а крайним "за ЭТО" (результаты подножек) +"все что еще было" (приписки не умерли с СССР) будет назначен кто-то внешний.

Жесткий вариант, требует жесткого контроля и жесткого согласования каждого чиха (лучше под подпись) и, что самое жесткое - не всегда распознается до наступления последствий (..из избы..).

Как pentest?

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

И в принципе - возможные результаты работ (те самые пользы) должны быть понятны из ТКП ибо говорится что и на что проверяется.

Что же касается "внешний/внутренний"... Самый худший для меня вариант, когда при "red team" заказчик всячески настаивает чтобы "расхакали" вот эти критичные систетемы во глубине инфраструктуры. И всячески отвергает "серый ящик (поговорить, посмотреть, детализировать) после того, как закончим с периметром". Неэффективно, опасно.

Приведу пример неэффективности. Немного технически, но суть та же - "беганье с антенной" - далеко не самый эффективный метод. Хотя и без антенны сложно. Поэтому антенна нужна для установления наличия присутствия, а детализация - поговорить/посмотреть.

Причем "серый" ящик не отменят "пентеста". Все наиболее эффективные работы такого плана проходили по сценарию:

- покопали, много дырок;
- пару страшных каждого типа использовали;
- собрали всех вовлеченных/подверженных - показали.
-- Теперь верите?
-- Верим.
-- Дальше также или чтобы польза была?
-- Да и так все ясно... А что вы про пользу говорили?
- переходим в детальному анализу больных мест, названных консолидированным заказчиком.
Причем не всегда с помощью "penetration". Где MaxPatrol поаудитим, где с админами посидим, где с менеджерами кофейка. Вполне себе аудит получается :)

Конечно, если взять на флаг "передовой материал" по "методикам пентеста" или чеклист "как делать пентест под PCI", то такого не получится. Ибо не написано зачастую в методике :)
Мне пытались возразить, что мол "бюджет, нагрузка, проектные риски". Ничего подобного. Эффективность выше. И для заказчика и для исполнителя.

И тут подползаем к самому интересному

Что в результате

Pentest не отвечает на вопрос "почему?". Да и не ставится такой вопрос.
Есть ответ на вопрос "что?" и, в некоторых случаях "в какой степени?".

Вопрос "Мы знаем, что с Web у нас не очень, но непонятно насколько". Дальше варианты: пару раз ломали, затыкали, но ломали опять/аудитор из большой четверки сказал что у нас нет в договорах разработки систем требований по безопасности (Secure SDLC, нового модного термина №4)."

Ответ "Да, у вас здесь 374 SQLi, это больше чем в среднем по отрасли в 5 раз. Заткнуть не сможете, кривой дизайн. Хоть WAF прикройтесь. Или выключите в отдельном загоне".

Или "У вас 30 процентов кисок настроены так, что вообще непонятно, как работают. Падают? А...."

Или "Adobe патчить надо? А мы думали, что это за истерика у антивирусов"

Ну и плюс много-много мелочей, пропущенных, забытых, оставшихся без приоритетов. Админам побаловаться.

Вот где-то так.

среда, 3 февраля 2010 г.

Соревнование CTF на РусКрипто’2010

Полным ходом идет подготовка к студенческим "хакерским" соревнованиям CTF на РусКрипто’2010.

Собираем команды.

РусКрипто CTF — это всероссийские соревнования по защите информации, проводимые по принципам игры в Capture the flag (Захват флага). В начале игры команды получают идентичные серверы с предустановленным набором уязвимых сервисов, выполняющих определенные функции и содержащие предустановленные уязвимости. Помимо уязвимостей, содержащихся в «самописных» сервисах, информационная среда команд соперников содержит распространенные уязвимости, характерные для реальных информационных систем: слабые пароли, публичные уязвимости в ОС/сервисах, недостатки администрирования, реальные уязвимости в Web-приложениях (таких, как популярные CMS). В процессе соревнований в среде производятся подготовленные организаторами изменения, которые в свою очередь могут синхронно вносить дополнительные уязвимости в среду функционирования сервисов команд.

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


Подробности:
http://www.securitylab.ru/news/390396.php