Корзина пуста
Вход на сайт

Регистрация

Восстановление пароля

+7 918 930-73-38
г. Усть-Лабинск

Краснодарский край

+7 978-116-19-07
г. Севастополь

Республика Крым

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

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

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

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


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

Экспертный анализ защищенности WEB-приложения проводится с использованием существующих стандартов и разработанных экспертных методик:

OWASP Application Security Verification Standard (ASVS);
Penetration Testing Execution Standard (PTES).

Категоризация обнаруженных уязвимостей и оценка их критичности выполняется в соответствии с общепризнанными системами классификации и метриками:

Из актуальных можно выделить следующие:

МЕТОДЫ ЭТИЧЕСКОГО ХАКИНГА

Итак, что же все-таки собой представляет и как организован процесс этического хакинга?

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

Существование различных методик проведения тестов на проникновение не отменяет творческой составляющей процесса, что требует от команды, исполняющей его, глубоких познаний в сфере ИТ-безопасности и в тоже время - умения мыслить нестандартно, применять методы социальной инженерии, собирать и анализировать информацию. Хорошей иллюстрацией такого подхода в мышлении и методах является кино-трилогия о «N Друзей Оушена».


НАИБОЛЕЕ ИСПОЛЬЗУЕМЫЕ МЕТОДОЛОГИИ
ЭТИЧЕСКОГО ХАКИНГА

  • Information Systems Security Assessment Framework (OISSG).
  • The Open Source Security Methodology Manual (OSSTMM).
  • NIST SP800-115 Technical Guide to Information Security Testing and Assessment.
  • ISACA Switzerland – Testing IT Systems Security With Tiger Teams.
  • The Information Systems Security Assessment Framework (ISSAF).
  • OWASP Testing Methodology.
  • BSI - Study A Penetration Testing Model.
  • Penetration Test Framework (PTF).

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

Как правило, все методологии, с небольшими отклонениями предусматривают следующий сценарий проведения теста на проникновение:

  • Планирование теста на проникновение.
  • Сбор информации о целевых системах.
  • Поиск уязвимостей.
  • Проникновение в системы.
  • Написание и предоставление отчета.
  • Очистка систем от последствий теста.

ПЛАНИРОВАНИЕ ТЕСТА НА ПРОНИКНОВЕНИЕ

Тест на проникновение является комплексным проектом и может включать в себя несколько видов работ из которых и формируется цена и сроки. На данном этапе также оговариваются ограничения и роли участников.

1. Следует определить подход к проведению теста: так называемый белый (White box), черный (Black Box) или серый (Grey Box) ящик.

White box Исполнитель имеет доступ к системам и располагает полной информацией о них, фактически такая модель тестирования используется как часть организационно-технического аудита организации ИТ и предполагает анализ процессов и процедур.
Black Box Имитирует группу  хакеров, которые имеют только название компании и практически нулевые сведения о целевой системе.
Grey Box Предполагает имитацию хакеров, располагающих информацией частично (например о диапазоне IP адресов, Web сайтах, физическом месторасположении, идентификаторах беспроводных сетей и т.д), а также возможно, доступом с низким уровнем привилегий в некоторые тестируемые системы.

Данные модели определяют начальные знания о тестируемой системе у исполнителя теста. Стоит упомянуть, что большинство методологий рассматривают подход Black Box, как тестирование квалификации самого исполнителя теста. С нашей точки зрения данный подход просто удлиняет первую фазу теста – сбор сведений о целевых системах. Так что по сути заказчик косвенно платит за оценку квалификации самого аудитора.

2. Также определяется тип и количество тестируемых систем. Наиболее часто определяются следующие параметры для внешнего тестирования:

Тестирование периметра сети Определяется количеством IP адресов.
Тестирование WEB сайтов Определяется количеством URL сайтов.
Тестирование специализированных приложений Например, приложение «Клиент-банк» или любое другое клиентское ПО, взаимодействующее с серверами компании.
Тестирование сотрудников на  устойчивость к методам социальной инженерии Сюда входят попытки вишинга ( обзвон ключевых сотрудников с целью получения паролей), проведение фишинговых атак, использование вирусов для получения доступа к системам, поиск информации в мусоре компании, и другие методы.
Физическое проникновение на территорию компании Может включать взлом замков или проникновение обманом под видом обслуживающего персонала с целью получения информации, карточек и кодов доступа, ключей, ноутбуков, телефонов, паролей, закладки жучков, проникновения в серверную и т.д.
Тестирование беспроводных сетей Определяется количество точек доступа. Также возможна опция установки подставной точки доступа с целью перехвата трафика пользователей.

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

Тестирование внутреннего периметра сети. Полный тест на проникновение или же проведение автоматизированного сканирования уязвимостей внутренних ресурсов компании. Определяется количество IP адресов, веб-сайтов и приложений.

Анализ конфигураций сетевых устройств, приложений и серверов на соответствие стандартам безопасности. Производители, выпускающие оборудование и приложения, определяют собственные рекомендации по безопасности. Анализ проводится с целью выявления отклонений в рекомендациях.

Анализ кода веб-сайтов. Код проверяется на наличие уязвимостей типа SQL injection, command injection, file inclusion, DoS, наличие несанкционированных закладок, недостатков в архитектуре и др.

Анализ кода приложений. Код проверяется на наличие уязвимостей типа Buffer overflow, DoS, на наличие несанкционированных закладок, недостатков в архитектуре и др.

Аудит мобильных устройств. Анализ безопасности использования телефонов, смартфонов, планшетов, также устройств хранения данных, таких как USB, плееров и других мобильных устройств.

3. Также важно определить порядок предоставления отчетности. Квалифицированный аудитор сможет предоставить развернутую информацию о проделанной работе для менеджмента в понятной форме. Из наиболее целесообразных вариантов:

  • один результирующий отчет по окончании тестирования;
  • предоставление отдельного отчета сразу при обнаружении критической уязвимости;
  • промежуточные отчеты раз в 2-3 дня

4. Необходимо также определить следующие организационные моменты:

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

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

CБОР ИНФОРМАЦИИ

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

Поиск информации происходит в доступных источниках вручную, а также при помщи специализированных инструментов. В объем работ, как правило, входит поиск информации в таких источниках:

  • поисковые системы;
  • социальные сети и сайты знакомств;
  • каталоги предприятий;
  • новостные сайты;
  • корпоративные сайты компании заказчика, сайты клиентов и партнеров;
  • сайты поиска работы;
  • базы данных WHOIS;
  • DNS сервера компании;
  • анализ маршрутов и выявление сетевого оборудования;
  • черные списки спаммеров;
  • анализ e-mail писем;
  • звонки в сall-центр компании с целью получить информацию о ключевых сотрудниках компании, о структуре компании и технологиях;
  • анализ метаинформации в документах, размещенных на сайтах компании;
  • непосредственное сканирование сети различными инструментами для обнаружения IP адресов, портов, версий работающих сервисов и операционных систем;
  • «дайвинг» в мусорки компании с целью найти конфиденциальную информацию и другие методы.

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

ПОИСК УЯЗВИМОСТЕЙ

В зависимости от выбранных систем на данном этапе проводится сканирование уязвимостей различными программами-сканерами. Специализация подобных сканеров может быть ориентирована на тестирование периметра сети, web-сайтов, отдельных приложений и сервисов, таких как базы данных, VPN-устройства, устройства IP-телефонии и прочих.

Важно отметить, что любой инструмент выдает определенное количество ложных срабатываний, таких как обнаружение ложной уязвимости или наоборот пропуск уязвимости, когда она действительно существует. Чтобы увеличить вероятность нахождения необходимо проводить сканирование двумя-тремя сканерами. Также для нахождения уязвимостей проводится анализ версий используемого ПО: часто не обновленное или устаревшее ПО имеет опубликованные уязвимости, не найденные ни одним из сканеров.

ПРОНИКНОВЕНИЕ В СИСТЕМЫ

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

Для взлома уязвимых ИТ-систем используется различный специализированный инструментарий, експлойты в публичном доступе на хакерских сайтах. В некоторых случаях потребуется собственная разработка вирусов и екслойтов для проникновения внутрь сети.

Также отметим, что в хакерском подполье существует рынок продажи 0-day експлойтов и уязвимостей. Это те уязвимости, которые еще не были обнаружены и опубликованы производителем ПО. Теоретически возможны варианты покупки подобных експлойтов, но юридически подобную покупку совершить сложно, так как данные продукты продаются за наличные деньги или за безналичные переводы через популярные платежные системы без какой-либо документации, гарантий, лицензий.

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

Методологии проведения тестирования на проникновение веб-приложений.

Одним из методов аудита веб-сайта является тестирование на проникновение BlackBox (BlackBox — «черный ящик»), при котором специалист располагает только общедоступной информацией о цели исследования.

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

Для полной картины атаки на сайт и действий сотрудников служб ИТ/ИБ отделов крайне не рекомендуется ставить последних в известность. Этим заказчик может проверить готовность своих сотрудников к реагированию на инциденты ИБ.

Основные задачи тестирования на проникновение:

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


Основные задачи злоумышленника: 

  • получения доступа к критичным данным;
  • выведение сайта из строя;
  • монетизация/профит.


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

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

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

Основные методы аудита похожи на действия злоумышленника и включают в себя:

  • Разведку и сбор информации об атакуемой системе: в ход идут специальные поисковые запросы (google dork), обнаружение почтовых адресов сотрудников, профилей компании на сайтах вакансий (по вакансиям можно определить используемые технологии), поиск информации в кеше поисковиков, сканирование портов;
  • Выявление защитных средств сайта — IDS/IPS/AntiDDoS/WAF систем;
  • Сканирование веб-приложения популярными утилитами и сканерами — здесь достаточно широкий выбор, как платных, так и бесплатных программ, например веб-сканер w3af;
  • Сканирование директорий веб-сайта для поиска чувствительной информации (файлы, бэкапы базы данных и прочее) — к примеру утилитой dirbuster;
  • Ручной анализ уязвимостей — с помощью проксирующих средств происходит обработка запросов и анализ на предмет наличия потенциальных уязвимостей, одна из популярных утилит — Burpsuite.


Эти методы включают в себя следующие этапы:

  • Пассивный сбор информации;
  • Определение веб-окружения и платформы;
  • Определение типа CMS;
  • Сканирование портов/cбор баннеров;
  • Автоматические сканирования;
  • Анализ данных;
  • Определение «узких мест» ресурса;
  • Ручной анализ;
  • Сбор и анализ полученной информации;
  • Анализ векторов атаки;
  • Подтверждение полученных векторов;
  • Составление отчета.


Полученные векторы анализируются и проверяются, фиксируется время обнаружения, поскольку не исключены моменты обнаружения аномальной активности персоналом заказчика путем анализа, к примеру, access log и реализации мер по оперативному устранению уязвимости или атаки. Найденные формы авторизации или сервисы подвергаются т.н. bruteforce-атаке (подбор паролей).

В случае с пентестерами данные агрегируются в системы типа Dradis для анализа и оптимизации полученной информации. На основании полученных данных формируется отчет, распределенный по уязвимым сервисам, с детальным описанием уязвимостей, сценариями атаки, состоящими из нескольких векторов, оценкой рисков и рекомендациями по их устранению.

Только при полном и ответственном аудите заказчик получает максимально реалистичную картину зрелости системы

СТАНДАРТНЫЙ
РЕЖИМ АУДИТА
10 000 руб.

До 2-х рабочих дней
Поиск уязвимостей в автоматическом режиме
Анализ веб-окружения
Стандартный отчет
Рекомендации

ЭКСПЕРТНЫЙ
РЕЖИМ АУДИТА
от 60 000 р.

До 10-ти рабочих дней
Поиск уязвимостей в автоматическом режиме
Поиск уязвимостей в ручном режиме
Анализ веб-окружения
Анализ веб-сервера
Анализ смежной инфраструктуры
Детальный отчет
Рекомендации
Compliance Management
Нагрузочное тестирование (дополнительно)

Подтверждение легитимности.

Для исполнителя крайне важно иметь подтверждение законности проведения аудита безопасности — т.е. заказчик должен являться владельцем сайта. В любом другом случае, в том числе и при «свободном рисерче», когда энтузиасты исследуют чужие веб-проекты на наличие уязвимостей, действия атакующей стороны подпадают под 272 статью УК РФ. Что касается Bug-bounty программ — в описании обычно указано перечисление ресурсов и разрешенные действия. При коммерческом аудите заказчик обычно добавляет специализированные маркеры — подтверждение легитимности действий над сайтом; или же заверяет разрешение на проведение аудита документально.

Как итог — составляется договор на оказание услуг, содержащий:

 

  • объекты аудита (перечисление адресов ресурсов);
  • регламент и сроки проведения работ;
  • особые требования (например, не проверять ресурсы *backup).


По согласованию с Заказчиком дополнительно могут быть приведены графические и аудиовизуальные материалы для уточнения специфики обнаруженных уязвимостей.
Устранение обнаруженных уязвимостей осуществляется при тесном взаимодействии с ответственными представителями Исполнителя.