09.04.2009

пентесты и Пентесты.. Я в шоке

В рамках пентеста обнаруживаются сотни проблем в безопасности и ошибок в реализации СУИБ, на устранение которых зачастую уходят годы.

Сергей Гордейчик
http://sgordey.blogspot.com/2009/04/blog-post.html

Попался на глаза опус:

http://www.iso27000.ru/blogi/aleksandr-astahov/pentest-stoit-li-ovchinka-vydelki

Я в шоке, мой ноутбук в шоке и даже игрушечная собачка моего сына в шоке.

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

И так, пройдемся по тезисам:

Польза от пентеста для заказчика заключается в следующем:

# возможность обнаружения и устранения одной или нескольких серьезных уязвимостей

В рамках пентеста обнаруживаются сотни проблем в безопасности и ошибок в реализации СУИБ, на устранение которых зачастую уходят годы. Примеры - недостаточная осведомленность сотрудников или ошибки в процессе защиты Web-приложений. Только сегодня проводили совместно с 1С-Bitrix представление их нового продукта - модуля проактивной защиты. Яркий пример компании, которую пентест подвиг не только на устранение уязвимостей, но и на изменение процессов (аудит исходного кода, создание штата разработчиков), и даже больше - к созданию собственного продукта в области безопасности - web application firewall.

Полезность пентеста для исполнителя состоит в следующем:

  • возможность заработать приличные деньги (пентест - услуга высокорентабельная)

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

Конечно можно нанять "крутого хакера", который просканирует систему "взломанной" версией XSpider и попробует пару экплойтов с milw0rm. Тогда, наверное и результат будет подобный описанному в статье и услуга будет "высокорентабельной".

Теперь о том, чего заказчик не получает от пентеста:

* объективной оценки защищенности своей корпоративной сети

Объективной оценки, господа, не дает ничего. Даже, простят меня, сертификация. Есть только уязвимости и вероятность реализации угрозы, полученные в рамках указанной модели угроз и бюджета. То, что уязвимости никто не обнаружил, не говорит о том, что её нет. Иначе бы Microsoft, тратящий миллионы и миллионы на безопасность, аудит кода, построение безопасных процессов разработки и т.д. и т.п., уже давно бы выпускал программы без уязвимостей. И мы бы забыли про вторые вторники...

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

Процитирую свою небольшой кусок из тезисов к Рускрипто:

Цель пентеста в том, чтобы взломать

Цель пентеста в том, чтобы оценить эффективность существующей СУИБ и продемонстрировать наиболее яркие проблемные места в рамках выбранной модели злоумышленника, устранить которые требуется в первую очередь. Сам "взлом" только подручный механизм реализации основной задачи и может использоваться с различными целями. Например, для облегчения понимания результатов работ руководством или для развития хода работ, например прыжка их Интернет в ДМЗ, из ДМЗ в технологическую сеть и т.д. Если проводить работы с установкой на "взлом", то максимум к чему может привести тест, это обнаружение нескольких "страшных" уязвимостей, устранение которых может занять несколько минут или часов. И в такой ситуации пентест полностью оправдывает отношение как к фрагментарной, малоэффективной услуги.


# уверенности в том, что удалось устранить имеющиеся уязвимости и повысить защищенность систем (исполнитель продемонстрировал заказчику лишь один или несколько возможных сценариев проникновения, а сколько их еще может быть?)

Странный тезис. Уязвимости были устранены? Были. Защищенность была повышена? Несомненно. Исполнитель продемонстрировал только один сценарий? А что в ТЗ было написано? Поломайте меня как-нибудь?

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

Это вообще полный бред. Утечка регулируется соглашением о конфиденциальности. Ни один из вменяемых исполнителей не будет против, если в ходе работ будет присутствовать представитель заказчика. Более того, тесный контакт с заказчиком и согласование "ходов", это залог успешных работ. Я обычно даже люблю в ходе внутреннего теста "почитать лекции" о том, что я сейчас делаю, и как все это ловко у меня получается :) Или не получается :(

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

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


Тут я теряюсь совершенно. Опять эта объективная оценка всплыла... Как пентест, в ходе которого используется пяток специализированных сканеров, дополнительных утилит для верфикации и эксплуатации уязвимостей, ручной анализ уязвимостей может дать худший результат, чем просто запуск сканера? Как сканер реализует задачи глубокой оценки защищенности Web или беспроводных сетей, или уровня оценки персонала? Мне не понятно.
Сканеры никто не отменяет, но за ними должен сидеть человек, который "делает пентест в голове", чтобы расставить приоритеты и эффективно устранять обнаруженные проблемы. Сами сканеры этого не могут. Хотя мы работаем над этим :)

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


Еще раз - пентесты не стоят дорого. Так сложился рынок. Есть дорогие задачи, когда пентест может стоить на уровне аудита. Но как правило это задачи с большим объемом работ или с узкой специализацией (например пентест специфического приложения). Более того, нормальный аудит, без которого невозможен нормальный анализ рисков, как правило включает в себя пентест. Где логика?

Я понимаю, что многим хочется быть Брюсом (http://www.schneier.com/blog/archives/2007/05/is_penetration.html), на повторять его спорные мнения не стоит.

Пентест, это одна из работ в области ИБ со своими плюсами и минусами, ограничениями, со своей методиками и целями. И зачастую с ожидаемыми результатами. Пугающими?...