Тестирование на проникновение - Краткое руководство
Что такое тестирование на проникновение?
Тестирование на проникновение - это тип тестирования безопасности, который используется для проверки незащищенности приложения. Он проводится для обнаружения угрозы безопасности, которая может присутствовать в системе.
Если система не защищена, любой злоумышленник может нарушить или получить авторизованный доступ к этой системе. Риск безопасности - это обычно случайная ошибка, возникающая при разработке и внедрении программного обеспечения. Например, ошибки конфигурации, ошибки проектирования, ошибки программного обеспечения и т. Д.
Почему требуется тестирование на проникновение?
Тестирование на проникновение обычно оценивает способность системы защищать свои сети, приложения, конечные точки и пользователей от внешних или внутренних угроз. Он также пытается защитить меры безопасности и гарантирует только авторизованный доступ.
Тестирование на проникновение необходимо, потому что -
Он определяет среду моделирования, т.е. то, как злоумышленник может атаковать систему через white hat attack.
Это помогает найти слабые места, где злоумышленник может атаковать, чтобы получить доступ к функциям и данным компьютера.
Он помогает избежать black hat attack и защищает исходные данные.
Он оценивает масштабы атаки на потенциальный бизнес.
Это свидетельствует о том, почему важно увеличивать инвестиции в аспект безопасности технологий.
Когда проводить тестирование на проникновение?
Тестирование на проникновение - это важная функция, которую необходимо выполнять регулярно для обеспечения безопасности работы системы. В дополнение к этому, его следует выполнять всякий раз, когда:
- Система безопасности обнаруживает новые угрозы со стороны злоумышленников.
- Вы добавляете новую сетевую инфраструктуру.
- Вы обновляете свою систему или устанавливаете новое программное обеспечение.
- Вы переезжаете в свой офис.
- Вы создали новую программу / политику для конечных пользователей.
Чем полезно тестирование на проникновение?
Тестирование на проникновение предлагает следующие преимущества:
Enhancement of the Management System- Предоставляет подробную информацию об угрозах безопасности. В дополнение к этому, он также классифицирует степень уязвимости и предлагает вам, какая из них более уязвима, а какая меньше. Таким образом, вы можете легко и точно управлять своей системой безопасности, соответствующим образом распределяя ресурсы безопасности.
Avoid Fines- Тестирование на проникновение позволяет обновлять основные направления деятельности вашей организации и соответствовать системе аудита. Итак, тестирование на проникновение защищает вас от штрафов.
Protection from Financial Damage- Простое нарушение системы безопасности может нанести ущерб в миллионы долларов. Тестирование на проникновение может защитить вашу организацию от таких повреждений.
Customer Protection- Нарушение данных даже одного клиента может нанести большой финансовый ущерб, а также подорвать репутацию. Он защищает организации, которые работают с клиентами, и сохраняет их данные в неприкосновенности.
Тестирование на проникновение - это комбинация методов, которые рассматривают различные проблемы систем и тестов, анализируют и дают решения. Он основан на структурированной процедуре, которая шаг за шагом выполняет тестирование на проникновение.
В этой главе описаны различные этапы или фазы метода тестирования на проникновение.
Этапы метода тестирования на проникновение
Ниже приведены семь этапов тестирования на проникновение.
Планирование и подготовка
Планирование и подготовка начинается с определения целей и задач тестирования на проникновение.
Клиент и тестировщик совместно определяют цели, чтобы обе стороны имели одинаковые цели и понимание. Общие цели тестирования на проникновение:
- Для выявления уязвимости и повышения безопасности технических систем.
- Подтвердите ИТ-безопасность сторонней организацией.
- Повышение безопасности организационной / кадровой инфраструктуры.
Разведка
Разведка включает анализ предварительной информации. Часто у тестировщика не так много информации, кроме предварительной информации, например, IP-адреса или блока IP-адресов. Тестер начинает с анализа доступной информации и, при необходимости, запрашивает у клиента дополнительную информацию, такую как описание системы, планы сети и т. Д. Этот шаг является своего рода пассивным тестом на проникновение. Единственная цель - получить полную и подробную информацию о системах.
Открытие
На этом этапе тестировщик на проникновение, скорее всего, будет использовать автоматизированные инструменты для сканирования целевых активов на предмет обнаружения уязвимостей. У этих инструментов обычно есть собственные базы данных, в которых содержится подробная информация о последних уязвимостях. Однако тестировщик обнаруживает
Network Discovery - Например, обнаружение дополнительных систем, серверов и других устройств.
Host Discovery - Определяет открытые порты на этих устройствах.
Service Interrogation - Он опрашивает порты, чтобы обнаружить действующие службы, которые на них работают.
Анализ информации и рисков
На этом этапе тестировщик анализирует и оценивает информацию, собранную перед этапами тестирования, для динамического проникновения в систему. Из-за большого количества систем и размера инфраструктуры это занимает очень много времени. При анализе тестер учитывает следующие элементы -
Определенные цели теста на проникновение.
Потенциальные риски для системы.
Расчетное время, необходимое для оценки потенциальных недостатков безопасности для последующего активного тестирования на проникновение.
Однако из списка идентифицированных систем тестировщик может выбрать для тестирования только те, которые содержат потенциальные уязвимости.
Активные попытки вторжения
Это самый важный шаг, который нужно выполнять с должной осторожностью. Этот шаг влечет за собой степень, в которой потенциальные уязвимости, которые были идентифицированы на шаге обнаружения, обладают реальными рисками. Этот шаг необходимо выполнить, когда требуется проверка потенциальных уязвимостей. Для тех систем, к которым предъявляются очень высокие требования к целостности, необходимо тщательно рассмотреть потенциальную уязвимость и риск, прежде чем проводить критические процедуры очистки.
Окончательный анализ
Этот шаг в первую очередь рассматривает все шаги, выполненные (обсужденные выше) до этого времени, и оценку уязвимостей, присутствующих в форме потенциальных рисков. Далее тестер рекомендует устранить уязвимости и риски. Прежде всего, тестировщик должен гарантировать прозрачность тестов и обнаруженных им уязвимостей.
Подготовка отчета
Подготовка отчета должна начинаться с общих процедур тестирования, за которыми следует анализ уязвимостей и рисков. Высокие риски и критические уязвимости должны иметь приоритеты, за которыми следует более низкий уровень.
Однако при документировании окончательного отчета необходимо учитывать следующие моменты:
- Общее резюме тестирования на проникновение.
- Подробная информация о каждом шаге и информация, собранная во время проверки на проникновение.
- Подробная информация обо всех обнаруженных уязвимостях и рисках.
- Подробности очистки и ремонта систем.
- Предложения по будущей безопасности.
Как правило, эти два термина, т. Е. Тестирование на проникновение и оценка уязвимости, используются многими людьми как синонимы - либо из-за недопонимания, либо из-за рекламной шумихи. Но оба термина отличаются друг от друга с точки зрения их целей и других средств. Однако, прежде чем описывать различия, давайте сначала разберемся с обоими терминами один за другим.
Тестирование на проникновение
Тестирование на проникновение воспроизводит действия внешнего и / или внутреннего кибер-злоумышленника, которые предназначены для нарушения информационной безопасности и взлома ценных данных или нарушения нормального функционирования организации. Итак, с помощью передовых инструментов и методов тестер на проникновение (также известный какethical hacker) прилагает усилия для управления критически важными системами и получения доступа к конфиденциальным данным.
Оценка уязвимости
С другой стороны, оценка уязвимости - это метод выявления (обнаружения) и измерения уязвимостей безопасности (сканирование) в данной среде. Это комплексная оценка состояния информационной безопасности (анализ результатов). Кроме того, он определяет потенциальные слабые места и предоставляет соответствующие меры по смягчению (исправление), чтобы либо устранить эти слабые места, либо снизить уровень риска ниже установленного.
Следующая диаграмма суммирует оценку уязвимости -
В следующей таблице показаны фундаментальные различия между тестированием на проникновение и оценкой уязвимости.
Тестирование на проникновение | Оценка уязвимости |
---|---|
Определяет масштаб атаки. | Создает каталог активов и ресурсов в данной системе. |
Проверяет сбор конфиденциальных данных. | Обнаруживает потенциальные угрозы для каждого ресурса. |
Собирает целевую информацию и / или проверяет систему. | Придает количественное значение и значимость доступным ресурсам. |
Очищает систему и дает окончательный отчет. | Попытки уменьшить или устранить потенциальную уязвимость ценных ресурсов. |
Это ненавязчивый документ, экологическая экспертиза и анализ. | Всесторонний анализ и обзор целевой системы и ее окружения. |
Он идеально подходит для физических сред и сетевой архитектуры. | Он идеально подходит для лабораторных условий. |
Он предназначен для критически важных систем реального времени. | Он предназначен для некритичных систем. |
Какой вариант лучше всего практиковать?
Оба метода имеют разные функции и подходы, поэтому это зависит от уровня безопасности соответствующей системы. Однако из-за принципиальной разницы между тестированием на проникновение и оценкой уязвимости второй метод более выгоден, чем первый.
Оценка уязвимости выявляет слабые места и дает решения по их устранению. С другой стороны, тестирование на проникновение отвечает только на вопрос: «Может ли кто-нибудь взломать систему безопасности, и если да, то какой вред он может нанести?»
Кроме того, оценка уязвимости пытается улучшить систему безопасности и разрабатывает более зрелую интегрированную программу безопасности. С другой стороны, тестирование на проникновение дает только представление об эффективности вашей программы безопасности.
Как мы видели здесь, оценка уязвимости более полезна и дает лучший результат по сравнению с тестированием на проникновение. Но эксперты предполагают, что в рамках системы управления безопасностью оба метода должны выполняться регулярно, чтобы обеспечить идеальную защищенную среду.
Тип тестирования на проникновение обычно зависит от области применения, а также от потребностей и требований организации. В этой главе обсуждаются различные типы тестирования на проникновение. Он также известен какPen Testing.
Типы пен-тестирования
Ниже приведены важные типы проверки на проникновение.
- Тестирование на проникновение в черный ящик
- Тестирование на проникновение в белый ящик
- Тест на проникновение в серый ящик
Для лучшего понимания давайте подробно обсудим каждый из них -
Тестирование на проникновение в черный ящик
При тестировании на проникновение в черный ящик тестировщик не имеет представления о системах, которые он собирается тестировать. Ему интересно собрать информацию о целевой сети или системе. Например, в этом тестировании тестировщик знает только, каким должен быть ожидаемый результат, и он не знает, как они будут получены. Он не проверяет никаких программных кодов.
Преимущества тестирования на проникновение в черный ящик
Он имеет следующие преимущества -
Тестировщику не обязательно быть экспертом, так как это не требует специальных языковых знаний.
Тестер проверяет противоречия в реальной системе и технических характеристиках.
Обычно тестирование проводится с точки зрения пользователя, а не дизайнера.
Недостатки тестирования на проникновение в черный ящик
Его недостатки -
В частности, такие тестовые примеры сложно разработать.
Возможно, и не стоит, если дизайнер уже провел тестовый пример.
Он не все ведет.
Тестирование на проникновение в белый ящик
Это комплексное тестирование, поскольку тестеру был предоставлен весь спектр информации о системах и / или сети, такой как схема, исходный код, сведения об ОС, IP-адрес и т. Д. Это обычно рассматривается как имитация атаки со стороны внутренний источник. Он также известен как структурное испытание, испытание в стеклянной коробке, прозрачной коробке и открытой коробке.
Тестирование на проникновение методом белого ящика исследует покрытие кода и выполняет тестирование потока данных, тестирование пути, тестирование цикла и т. Д.
Преимущества тестирования на проникновение методом белого ящика
Он имеет следующие преимущества -
Это гарантирует, что все независимые пути модуля были проверены.
Это гарантирует, что все логические решения были проверены вместе с их истинным и ложным значением.
Он обнаруживает опечатки и проверяет синтаксис.
Он находит ошибки проектирования, которые могли возникнуть из-за разницы между логическим потоком программы и фактическим выполнением.
Тест на проникновение в серый ящик
В этом типе тестирования тестировщик обычно предоставляет частичную или ограниченную информацию о внутренних деталях программы системы. Это можно рассматривать как атаку внешнего хакера, получившего незаконный доступ к документам сетевой инфраструктуры организации.
Преимущества тестирования на проникновение в серый ящик
Он имеет следующие преимущества -
Поскольку тестировщику не требуется доступ к исходному коду, он ненавязчив и объективен.
Поскольку существует четкая разница между разработчиком и тестировщиком, минимальный риск личного конфликта
Вам не нужно предоставлять внутреннюю информацию о функциях программы и других операциях.
Области тестирования на проникновение
Тестирование на проникновение обычно проводится в следующих трех областях:
Network Penetration Testing- В этом тестировании необходимо протестировать физическую структуру системы для определения уязвимости и риска, которые обеспечивают безопасность в сети. В сетевой среде тестировщик выявляет недостатки безопасности при проектировании, реализации или эксплуатации сети соответствующей компании / организации. Устройства, которые проверяются тестером, могут быть компьютерами, модемами или даже устройствами удаленного доступа и т. Д.
Application Penetration Testing- В этом тестировании необходимо проверить логическую структуру системы. Это моделирование атаки, предназначенное для демонстрации эффективности средств контроля безопасности приложения путем выявления уязвимостей и рисков. Брандмауэр и другие системы мониторинга используются для защиты системы безопасности, но иногда требуется целенаправленное тестирование, особенно когда трафику разрешено проходить через брандмауэр.
The response or workflow of the system- Это третья область, которую нужно проверить. Социальная инженерия собирает информацию о человеческом взаимодействии для получения информации об организации и ее компьютерах. Полезно проверить способность соответствующей организации предотвращать несанкционированный доступ к ее информационным системам. Точно так же этот тест предназначен исключительно для рабочего процесса организации / компании.
И ручное тестирование на проникновение, и автоматическое тестирование на проникновение проводятся с той же целью. Единственная разница между ними - это то, как они проводятся. Как следует из названия, ручное тестирование на проникновение выполняется людьми (экспертами в этой области), а автоматическое тестирование на проникновение выполняется самой машиной.
Эта глава поможет вам изучить концепцию, различия и применимость обоих терминов.
Что такое ручное тестирование на проникновение?
Ручное тестирование на проникновение - это тестирование, проводимое людьми. При таком типе тестирования уязвимость и риск машины проверяется опытным инженером.
Как правило, инженеры-испытатели выполняют следующие методы:
Data Collection- Сбор данных играет ключевую роль в тестировании. Можно либо собирать данные вручную, либо использовать сервисы инструментов (такие как методика анализа исходного кода веб-страницы и т. Д.), Свободно доступные в Интернете. Эти инструменты помогают собирать информацию, такую как имена таблиц, версии БД, база данных, программное обеспечение, оборудование или даже о различных сторонних плагинах и т. Д.
Vulnerability Assessment - После того, как данные собраны, они помогают тестировщикам определить слабые места в системе безопасности и предпринять соответствующие превентивные меры.
Actual Exploit - Это типичный метод, который эксперт-тестировщик использует для запуска атаки на целевую систему, а также снижает риск атаки.
Report Preparation- После того, как проникновение сделано, тестировщик готовит окончательный отчет, в котором описывается все о системе. Наконец, отчет анализируется с целью принятия корректирующих мер для защиты целевой системы.
Типы ручного тестирования на проникновение
Ручное тестирование на проникновение обычно подразделяется на две категории:
Focused Manual Penetration Testing- Это очень сфокусированный метод, который тестирует определенные уязвимости и риски. Автоматическое тестирование на проникновение не может выполнить это тестирование; это делается только специалистами-людьми, которые исследуют уязвимости конкретных приложений в заданных доменах.
Comprehensive Manual Penetration Testing- Это тестирование целых систем, связанных друг с другом, для выявления всех видов рисков и уязвимостей. Однако функция этого тестирования носит более ситуативный характер, например, выяснение того, могут ли множественные ошибки с меньшим риском привести к более уязвимому сценарию атаки и т. Д.
Что такое автоматическое тестирование на проникновение?
Автоматизированное тестирование на проникновение намного быстрее, эффективнее, проще и надежнее, оно автоматически проверяет уязвимость и риск машины. Эта технология не требует наличия опытного инженера, она может использоваться любым человеком, наименее осведомленным в этой области.
Инструменты для автоматического тестирования на проникновение - это Nessus, Metasploit, OpenVA, backtract (серия 5) и т. Д. Это очень эффективные инструменты, которые изменили эффективность и смысл тестирования на проникновение.
Однако следующая таблица иллюстрирует фундаментальное различие между ручным и автоматическим тестированием на проникновение:
Ручное тестирование на проникновение | Автоматизированное тестирование на проникновение |
---|---|
Для проведения теста требуется опытный инженер. | Он автоматизирован, так что даже учащийся может запустить тест. |
Для тестирования требуются разные инструменты. | Имеет встроенные инструменты, ничего не требуется извне. |
В этом типе тестирования результаты могут отличаться от теста к тесту. | Имеет фиксированный результат. |
Этот тест требует помнить об очистке памяти тестером. | Это не. |
Это исчерпывающий и требующий времени. | Это более эффективно и быстро. |
Это имеет дополнительные преимущества, например, если эксперт проводит проверку проникновения, он может лучше анализировать, он может думать, что может думать хакер и где он может атаковать. Следовательно, он может поставить безопасность соответственно. | Он не может анализировать ситуацию. |
По требованию эксперт может провести несколько тестов. | Оно не может. |
Для критического состояния надежнее. | Нет. |
Тестирование на проникновение обычно состоит из сбора информации, анализа уязвимостей и рисков, использования уязвимостей и подготовки окончательного отчета.
Также важно изучить особенности различных инструментов, доступных при тестировании на проникновение. В этой главе содержится информация об этих функциях.
Что такое инструменты тестирования на проникновение?
В следующей таблице собраны некоторые из наиболее важных инструментов проникновения и проиллюстрированы их особенности.
Название инструмента | Цель | Портативность | Ожидаемая стоимость |
---|---|---|---|
Hping | Сканирование портов Удаленное снятие отпечатков пальцев OC |
Linux, NetBSD, FreeBSD, OpenBSD, |
Свободный |
Nmap | Сетевое сканирование Сканирование портов Обнаружение ОС |
Linux, Windows, FreeBSD, OS X, HP-UX, NetBSD, Sun, OpenBSD, Solaris, IRIX, Mac и т. Д. | Свободный |
Суперскан | Выполняет запросы, включая ping, whois, поиск имени хоста и т. Д. Обнаруживает открытые порты UDP / TCP и определяет, какие службы работают на этих портах. |
Windows 2000 / XP / Vista / 7 | Свободный |
p0f | Снятие отпечатков пальцев OS Обнаружение межсетевого экрана |
Linux, FreeBSD, NetBSD, OpenBSD, Mac OS X, Solaris, Windows и AIX | Свободный |
Xprobe | Удаленное снятие отпечатков активных ОС Сканирование портов Отпечатки TCP |
Linux | Свободный |
Httprint | Определение SSL по отпечатку пальца веб-сервера Обнаружение сетевых устройств (например, точек беспроводного доступа, коммутаторов, модемов, маршрутизаторов) |
Linux, Mac OS X, FreeBSD, Win32 (командная строка и графический интерфейс | Свободный |
Несс | Обнаружение уязвимостей, которые позволяют удаленному взломщику контролировать / получать доступ к конфиденциальным данным | Mac OS X, Linux, FreeBSD, Apple, Oracle Solaris, Windows | Бесплатная ограниченная серия |
GFI LANguard | Обнаружение сетевых уязвимостей | Windows Server 2003/2008, Windows 7 Ultimate / Vista, Windows 2000 Professional, Business / XP, Sever 2000/2003/2008 | Только пробная версия Бесплатно |
Сканер проблем | Обнаружение сетевых уязвимостей | Windows 2000 Professional с SP4, Windows Server 2003 Standard с SO1, Windows XP Professional с SP1a | Только пробная версия Бесплатно |
Сканер теневой безопасности | Обнаружение сетевых уязвимостей, аудит прокси и серверов LDAP | Windows, но серверы сканирования, построенные на любой платформе | Только пробная версия Бесплатно |
Metasploit Framework | Разработка и выполнение кода эксплойта для удаленной цели Проверить уязвимость компьютерных систем |
Все версии Unix и Windows | Свободный |
Брут | Взломщик паролей Telnet, ftp и http | Windows 9x / NT / 2000 | Свободный |
Компьютерные системы и связанные с ними сети обычно состоят из большого количества устройств, и большинство из них играют важную роль в выполнении всех работ и операций соответствующей системы. Незначительный недостаток в любой момент времени и в любой части этих устройств может нанести большой ущерб вашему бизнесу. Следовательно, все они подвержены риску и нуждаются в надлежащей защите.
Что такое тестирование на проникновение в инфраструктуру?
Тестирование на проникновение в инфраструктуру включает в себя все внутренние компьютерные системы, связанные внешние устройства, интернет-сети, облачное тестирование и тестирование виртуализации.
Независимо от того, скрыт ли он в вашей внутренней корпоративной сети или из общего доступа, всегда существует вероятность того, что злоумышленник может воспользоваться, что может нанести вред вашей инфраструктуре. Так что лучше заранее перестраховаться, чем потом сожалеть.
Типы тестирования на проникновение в инфраструктуру
Ниже приведены важные типы тестирования на проникновение в инфраструктуру.
- Тестирование проникновения внешней инфраструктуры
- Тестирование проникновения внутренней инфраструктуры
- Тестирование на проникновение в облако и виртуализацию
- Тестирование проникновения беспроводной безопасности
Тестирование внешней инфраструктуры
Тест на проникновение, нацеленный на внешнюю инфраструктуру, обнаруживает, что хакер может сделать с вашими сетями, которые легко доступны через Интернет.
В этом тестировании тестировщик обычно воспроизводит те же виды атак, которые могут использовать хакеры, обнаруживая и отображая недостатки безопасности во внешней инфраструктуре.
Существуют различные преимущества использования тестирования на проникновение внешней инфраструктуры, так как оно:
Выявляет недостатки в конфигурации брандмауэра, которые можно использовать не по назначению.
Узнает, как злоумышленник может получить утечку информации из вашей системы.
Предлагает способы устранения этих проблем.
Готовит исчерпывающий отчет с указанием рисков безопасности приграничных сетей и предлагает решения
Обеспечивает общую эффективность и продуктивность вашего бизнеса
Тестирование проникновения внутренней инфраструктуры
Из-за некоторых незначительных недостатков внутренней безопасности хакеры незаконно совершают мошенничество в крупных организациях. Таким образом, с помощью тестирования проникновения внутренней инфраструктуры тестировщик может определить возможность безопасности и определить, от какого сотрудника возникла эта проблема.
Преимущества тестирования на проникновение внутренней инфраструктуры:
Определяет, как внутренний злоумышленник может воспользоваться даже незначительной уязвимостью безопасности.
Определяет потенциальный бизнес-риск и ущерб, который может нанести внутренний злоумышленник.
Улучшает системы безопасности внутренней инфраструктуры.
Готовит исчерпывающий отчет, содержащий подробную информацию о уязвимостях внутренних сетей, а также подробный план действий по их устранению.
Тестирование на проникновение в облако и виртуализацию
Покупка общедоступного сервера или волнового пространства значительно увеличивает риски утечки данных. Кроме того, сложно идентифицировать злоумышленника в облачной среде. Злоумышленник также может купить хостинг в облаке, чтобы получить доступ к вашим новым данным в облаке.
Фактически, большая часть облачного хостинга реализована в виртуальной инфраструктуре, что создает риск виртуализации, к которому злоумышленник может легко получить доступ.
Преимущества тестирования на проникновение в облако и виртуализацию:
Обнаруживает реальные риски в виртуальной среде и предлагает методы и затраты для устранения угроз и недостатков.
Предоставляет рекомендации и план действий по решению проблемы.
Улучшает общую систему защиты.
Готовит исчерпывающий отчет системы безопасности облачных вычислений и виртуализации, описывает недостатки безопасности, причины и возможные решения.
Тестирование проникновения беспроводной безопасности
Беспроводная технология вашего ноутбука и других устройств обеспечивает простой и гибкий доступ к различным сетям. Легкодоступная технология уязвима для уникальных рисков; поскольку физическая безопасность не может использоваться для ограничения доступа к сети. Злоумышленник может взломать удаленно. Следовательно, вашей компании / организации необходимо провести тестирование безопасности беспроводной сети.
Ниже приведены причины использования беспроводной технологии:
Чтобы определить потенциальный риск, связанный с вашими беспроводными устройствами.
Предоставить рекомендации и план действий по защите от внешних угроз.
Для улучшения общей системы безопасности.
Для подготовки подробного отчета о системе безопасности беспроводной сети с указанием недостатков безопасности, причин и возможных решений.
Есть проблема защиты наиболее важных данных организации; следовательно, роль тестера на проникновение очень важна, небольшая ошибка может подвергнуть риску обе стороны (тестировщика и его клиента).
Поэтому в этой главе обсуждаются различные аспекты тестировщика на проникновение, включая его квалификацию, опыт и обязанности.
Квалификация тестеров на проникновение
Этот тест может быть выполнен только квалифицированным тестером на проникновение; поэтому квалификация тестера на проникновение очень важна.
Либо квалифицированный внутренний эксперт, либо квалифицированный внешний эксперт может выполнять тест на проникновение, пока они не станут организационно независимыми. Это означает, что тестер на проникновение должен быть организационно независимым от управления целевыми системами. Например, если сторонняя компания участвует в установке, обслуживании или поддержке целевых систем, то эта сторона не может выполнять тестирование на проникновение.
Вот несколько рекомендаций, которые помогут вам при вызове тестера на проникновение.
Сертификация
Сертифицированный человек может выполнить тестирование на проникновение. Аттестация тестировщика свидетельствует о его навыках и компетенции способного тестировщика на проникновение.
Ниже приведены важные примеры сертификации тестирования на проникновение.
Сертифицированный этический хакер (CEH).
Сертифицированный специалист по наступательной безопасности (OSCP).
Сертификаты тестирования на проникновение CREST.
Сертификация службы проверки работоспособности ИТ компании Communication Electronic Security Group (CESG).
Сертификаты Global Information Assurance Certification (GIAC), например, GIAC Certified Penetration Tester (GPEN), GIAC Web Application Penetration Tester (GWAPT), Advanced Penetration Tester (GXPN), and GIAC Exploit Researcher.
Прошлый опыт
Следующие вопросы помогут вам нанять эффективного тестера на проникновение:
Сколько лет опыта у тестера на проникновение?
Он независимый тестер на проникновение или работает в организации?
Со сколькими компаниями он работал тестером на проникновение?
Проводил ли он тестирование на проникновение для какой-либо организации, которая имеет такой же размер и масштабы, как ваша?
Какой опыт имеет тестер на проникновение? Например, проведение тестирования проникновения на сетевом уровне и т. Д.
Вы также можете попросить рекомендации у других клиентов, на которых он работал.
При приеме на работу тестировщика на проникновение важно оценить прошлогодний опыт тестирования организации, в которой он (тестировщик) работал, поскольку он связан с технологиями, специально развернутыми им в целевой среде.
В дополнение к вышеизложенному, для сложных ситуаций и типичных требований клиента рекомендуется оценить способность тестировщика работать с аналогичной средой в его / ее более раннем проекте.
Роль тестера на проникновение
У тестера проникновения есть следующие роли -
Выявить неэффективное распределение инструментов и технологий.
Тестирование систем внутренней безопасности.
Выявляйте уязвимости для защиты наиболее важных данных.
Откройте для себя бесценные знания об уязвимостях и рисках всей инфраструктуры.
Составление отчетов и определение приоритетности рекомендаций по исправлению, чтобы гарантировать, что группа безопасности использует свое время наиболее эффективно, защищая при этом самые большие пробелы в безопасности.
Необязательно, чтобы опытный тестировщик на проникновение мог написать хороший отчет, так как написание отчета о тестировании на проникновение - это искусство, которое нужно изучать отдельно.
Что такое написание отчетов?
При тестировании на проникновение написание отчета - это комплексная задача, которая включает в себя методологию, процедуры, надлежащее объяснение содержания и дизайна отчета, подробный пример отчета о тестировании и личный опыт тестировщика. После того, как отчет подготовлен, он передается высшему руководству и технической группе целевых организаций. Если в будущем возникнет такая необходимость, этот отчет используется в качестве справочного материала.
Этапы написания отчета
Из-за обширной письменной работы, написание отчета о проникновении подразделяется на следующие этапы:
- Планирование отчетов
- Сбор информации
- Написание первого черновика
- Обзор и доработка
Планирование отчетов
Планирование отчета начинается с целей, которые помогают читателям понять основные моменты тестирования на проникновение. В этой части описывается, почему проводится тестирование, каковы преимущества тестирования на проникновение и т. Д. Во-вторых, планирование отчета также включает время, затраченное на тестирование.
Основные элементы написания отчета:
Objectives - В нем описывается общая цель и преимущества проверки на проникновение.
Time- Время очень важно, так как оно дает точный статус системы. Предположим, что если что-то не так случится позже, этот отчет спасет тестировщика, так как отчет будет иллюстрировать риски и уязвимости в области тестирования на проникновение в течение определенного периода времени.
Target Audience - Отчет о тестировании на проникновение также должен включать целевую аудиторию, такую как менеджер по информационной безопасности, менеджер по информационным технологиям, главный специалист по информационной безопасности и технический персонал.
Report Classification- Поскольку IP-адреса серверов, информация о приложениях, уязвимости, угрозы являются строго конфиденциальными, их необходимо правильно классифицировать. Однако эту классификацию необходимо выполнять на основе целевой организации, у которой есть политика классификации информации.
Report Distribution- Количество копий и распространение отчета следует указать в объеме работ. Также необходимо упомянуть, что печатными копиями можно управлять, распечатав ограниченное количество копий с указанием их номера и имени получателя.
Сбор информации
Из-за сложных и длительных процессов от пентестера требуется упоминать каждый шаг, чтобы убедиться, что он собрал всю информацию на всех этапах тестирования. Наряду с методами ему также необходимо упомянуть о системах и инструментах, результатах сканирования, оценках уязвимостей, деталях своих выводов и т. Д.
Написание первого черновика
Когда-то у тестировщика есть все инструменты и информация, теперь ему нужно запустить первый черновик. В первую очередь, ему нужно подробно написать первый черновик - упомянуть все, то есть все действия, процессы и опыт.
Обзор и доработка
После того, как отчет составлен, он должен быть рассмотрен сначала самим составителем, а затем его руководителями или коллегами, которые могли ему помочь. Ожидается, что во время проверки рецензент проверит каждую деталь отчета и найдет любой недостаток, который необходимо исправить.
Содержание отчета о тестировании на проникновение
Ниже приводится типичное содержание отчета о тестировании на проникновение.
Управляющее резюме
Методология
Подробные выводы
Рекомендации
|
Быстрый рост Интернета изменил образ жизни всех. В наши дни большая часть частных и общественных работ зависит от Интернета. Все секретные рабочие планы правительства и операции основаны на Интернете. Все это сделало жизнь очень простой и доступной.
Но с хорошими новостями есть также темное лицо этого развития, то есть преступный хакер. У этих криминальных хакеров нет геополитических ограничений, они могут взломать любую систему из любой точки мира. Они могут очень сильно повредить конфиденциальные данные и кредитную историю.
Поэтому для защиты от хакеров-преступников была разработана концепция этичного хакера. В этой главе обсуждается концепция и роль этичного хакера.
Кто такие этичные хакеры?
Этичные хакеры - это компьютерные эксперты, которым по закону разрешено взламывать компьютерную систему с целью защиты от преступных хакеров. Этичный хакер выявляет уязвимости и риски системы и предлагает способы их устранения.
Кто такие криминальные хакеры?
Хакеры-преступники - это те специалисты по компьютерному программированию, которые взламывают чужие системы с намерением украсть данные, украсть деньги, опорочить чужие кредиты, уничтожить чужие данные, шантажировать кого-то и т. Д.
Что могут сделать хакеры-преступники?
После взлома системы преступный хакер может делать с ней все, что угодно. Следующие два изображения CC Palmer, опубликованные на pdf.textfiles.com, иллюстрируют простой пример взломанной страницы -
Вот скриншот веб-страницы, сделанной до ее взлома -
И вот скриншот той же веб-страницы после взлома -
Каковы наборы навыков этических хакеров?
У экспертов-этичных хакеров есть следующие навыки этичного взлома системы:
Они должны быть надежными.
Какими бы ни были риски и уязвимости, которые они обнаруживают при тестировании системы, они должны сохранять их конфиденциальность.
Клиенты предоставляют конфиденциальную информацию о своей системной инфраструктуре, такую как IP-адрес, пароль и т. Д. Этичные хакеры должны сохранять конфиденциальность этой информации.
Этичные хакеры должны хорошо разбираться в компьютерном программировании, работе в сети и оборудовании.
Они должны обладать хорошими аналитическими способностями, чтобы анализировать ситуацию и заранее спланировать риск.
Они должны обладать управленческими навыками и терпением, поскольку проверка на проникновение может занять один день, одну неделю или даже больше.
Что делают этичные хакеры?
Этичные хакеры, выполняя тестирование на проникновение, в основном пытаются найти ответы на следующие вопросы:
- Какие слабые места может поразить преступный хакер?
- Что злоумышленник может увидеть на целевых системах?
- Что может сделать хакер-преступник с этой конфиденциальной информацией?
Более того, этичный хакер должен адекватно устранять уязвимости и риски, которые, как он обнаружил, существуют в целевой системе (ах). Ему необходимо объяснить и предложить процедуры избегания. Наконец, подготовьте окончательный отчет обо всех этических действиях, которые он выполнял и наблюдал при выполнении тестирования на проникновение.
Типы хакеров
Хакеры обычно делятся на три категории.
Хакеры Black Hat
«Хакер в черной шляпе» - это человек, у которого есть обширное программное обеспечение, а также оборудование, и его цель - взломать или обойти безопасность кого-либо в Интернете. Хакеры в черной шляпе также популярны как взломщики или хакеры темной стороны.
Белые хакеры
Термин «хакер в белой шляпе» относится к этичному компьютерному хакеру, который является экспертом по компьютерной безопасности, специализирующимся на тестировании на проникновение и других связанных с ним методологиях тестирования. Его основная роль - обеспечение безопасности информационной системы организации.
Серый хакер
Термин «хакер в серой шляпе» относится к компьютерному хакеру, который взламывает систему компьютерной безопасности, этические стандарты которой находятся где-то между чисто этическими и исключительно злонамеренными.
Тестирование на проникновение очень тесно связано с этическим взломом, поэтому эти два термина часто используются как синонимы. Однако между этими двумя терминами есть тонкая грань. В этой главе рассказывается о некоторых основных концепциях и фундаментальных различиях между тестированием на проникновение и этическим взломом.
Тестирование на проникновение
Тестирование на проникновение - это особый термин, который фокусируется только на обнаружении уязвимостей, рисков и целевой среды с целью защиты системы и получения контроля над ней. Другими словами, тестирование на проникновение нацелено на соответствующие системы защиты организации, состоящие из всех компьютерных систем и их инфраструктуры.
Этический взлом
С другой стороны, этический взлом - это обширный термин, охватывающий все методы взлома и другие связанные с ними методы компьютерных атак. Таким образом, наряду с обнаружением недостатков и уязвимостей безопасности и обеспечением безопасности целевой системы, это не только взлом системы, но и разрешение для обеспечения безопасности для будущих целей. Следовательно, мы можем это сделать, это общий термин, а тестирование на проникновение - одна из особенностей этического взлома.
Ниже приведены основные различия между тестированием на проникновение и этическим взломом, которые перечислены в следующей таблице.
Тестирование на проникновение | Этический взлом |
---|---|
Узкий термин относится к тестированию на проникновение только для защиты системы безопасности. | Комплексный термин и тестирование на проникновение - одна из его особенностей. |
По сути, тестировщик должен обладать всесторонними знаниями всего, что необходимо, чтобы знать только ту конкретную область, в которой он проводит тестирование на проникновение. | Этичный хакер должен обладать всесторонними знаниями в области программирования и аппаратного обеспечения. |
От тестировщика не обязательно быть хорошим составителем отчетов. | По сути, этичный хакер должен быть экспертом в написании отчетов. |
Любой тестировщик с некоторыми входами для тестирования на проникновение может выполнить тест на проникновение. | Для его эффективности необходимо быть профессиональным специалистом в данной области, имеющим обязательную сертификацию этического взлома. |
Бумажная работа меньше по сравнению с этичным взломом. | Требуются подробные бумажные работы, включая юридическое соглашение и т. Д. |
Для выполнения этого типа тестирования требуется меньше времени. | Этичный взлом требует много времени и усилий по сравнению с тестированием на проникновение. |
Обычно доступность всей компьютерной системы и ее инфраструктуры не требуется. Доступность требуется только для той части, для которой тестер выполняет ручное тестирование. | В зависимости от ситуации обычно требуется полный диапазон доступности всех компьютерных систем и их инфраструктуры. |
Поскольку методы проникновения используются для защиты от угроз, потенциальные злоумышленники также быстро становятся все более и более изощренными и изобретают новые слабые места в существующих приложениях. Следовательно, одного конкретного вида тестирования на проникновение недостаточно для защиты вашей безопасности тестируемых систем.
Согласно отчету, в некоторых случаях обнаруживается новая лазейка в безопасности, и успешная атака проводится сразу после тестирования на проникновение. Однако это не означает, что тестирование на проникновение бесполезно. Это только означает, что это правда, что при тщательном тестировании на проникновение нет гарантии, что успешная атака не состоится, но определенно тест существенно снизит вероятность успешной атаки.
Из-за стремительных темпов развития в области информации и технологий история успеха тестирования на проникновение сравнительно недолговечна. Поскольку требуется большая защита систем, чаще, чем вам нужно, выполнять тестирование на проникновение, чтобы снизить вероятность успешной атаки до уровня, который оценивается компанией.
Ниже приведены основные ограничения тестирования на проникновение.
Limitation of Time- Как все мы знаем, тестирование на проникновение не всегда ограничено по времени; тем не менее, специалисты по тестированию на проникновение выделили фиксированное количество времени для каждого теста. С другой стороны, у злоумышленников нет ограничений по времени, они планируют это через неделю, месяц или даже годы.
Limitation of Scope - Многие организации не тестируют все из-за собственных ограничений, включая ограничения ресурсов, ограничения безопасности, бюджетные ограничения и т. Д. Аналогичным образом, тестировщик имеет ограниченные возможности, и ему приходится оставлять многие части системы, которые могут быть намного больше. уязвимы и могут быть идеальной нишей для злоумышленника.
Limitation on Access- Чаще тестировщики имеют ограниченный доступ к целевой среде. Например, если компания провела тест на проникновение в свои системы DMZ из всех своих интернет-сетей, но что, если злоумышленники атакуют через обычный интернет-шлюз.
Limitation of Methods- Есть вероятность, что целевая система может дать сбой во время теста на проникновение, поэтому некоторые из конкретных методов атаки, вероятно, будут отключены для профессионального тестера на проникновение. Например, создание потока отказа в обслуживании, чтобы отвлечь системного или сетевого администратора от другого метода атаки, обычно является идеальной тактикой для действительно плохого парня, но, вероятно, выйдет за рамки правил взаимодействия для большинства профессиональных тестеров на проникновение. .
Limitation of Skill-sets of a Penetration Tester- Обычно профессиональные тестеры на проникновение ограничены, так как они обладают ограниченными навыками, независимо от их знаний и прошлого опыта. Большинство из них сосредоточены на определенной технологии и обладают редкими знаниями в других областях.
Limitation of Known Exploits- Многие тестировщики знают только те эксплойты, которые являются общедоступными. На самом деле их воображение не так развито, как у нападающих. Злоумышленники обычно думают намного больше, чем думает тестировщик, и обнаруживают уязвимость, чтобы атаковать.
Limitation to Experiment- Большинство тестировщиков ограничены во времени и следуют инструкциям, уже данным им их организацией или старшими руководителями. Они не пробуют ничего нового. Они не мыслят дальше данных инструкций. С другой стороны, злоумышленники могут свободно думать, экспериментировать и создавать новые пути для атаки.
Более того, тестирование на проникновение не может заменить ни обычные тесты ИТ-безопасности, ни общую политику безопасности, а скорее, тестирование на проникновение дополняет установленные процедуры проверки и обнаруживает новые угрозы.
Усилия по тестированию на проникновение - какими бы тщательными они ни были - не всегда могут гарантировать исчерпывающее обнаружение каждого случая, когда эффективность контроля безопасности недостаточна. Выявление уязвимости или риска межсайтового сценария в одной области приложения не может однозначно выявить все экземпляры этой уязвимости, присутствующие в приложении. Эта глава иллюстрирует концепцию и полезность исправления.
Что такое исправление?
Исправление - это действие, предлагающее улучшение, чтобы заменить ошибку и исправить ее. Часто наличие уязвимости в одной области может указывать на слабость процесса или методов разработки, которые могли воспроизвести или активировать аналогичную уязвимость в других местах. Следовательно, при исправлении важно, чтобы тестировщик тщательно исследовал тестируемый объект или приложения с учетом неэффективных мер безопасности.
По этим причинам соответствующая компания должна предпринять шаги для устранения любой уязвимости, которую можно использовать в течение разумного периода времени после первоначального теста на проникновение. Фактически, как только компания завершит эти шаги, тестировщик проникновения должен выполнить повторное тестирование, чтобы проверить недавно реализованные средства управления, которые способны снизить исходный риск.
Усилия по исправлению, продолжающиеся в течение более длительного периода после первоначального теста на проникновение, возможно, потребуют выполнения нового задания по тестированию, чтобы гарантировать точные результаты в самой последней среде. Это определение должно быть сделано после анализа риска того, сколько изменений произошло с момента завершения первоначального тестирования.
Более того, в определенных условиях отмеченная проблема безопасности может иллюстрировать основной недостаток в соответствующей среде или приложении. Следовательно, в рамках повторного тестирования следует учитывать, классифицируются ли как значимые какие-либо изменения, вызванные исправлением, выявленным в ходе тестирования. Все изменения следует протестировать повторно; однако необходимость повторного тестирования всей системы будет определяться оценкой риска изменений.
Прежде чем позволить кому-либо тестировать конфиденциальные данные, компании обычно принимают меры в отношении доступности, конфиденциальности и целостности данных. Для того, чтобы это соглашение было в силе, соблюдение правовых норм является необходимым действием для организации.
Наиболее важные правовые нормы, которые необходимо соблюдать при создании и поддержании систем безопасности и авторизации, представлены ниже в контексте их использования при проведении тестов на проникновение.
Каковы юридические вопросы?
Ниже приведены некоторые из проблем, которые могут возникнуть между тестировщиком и его клиентом.
Тестировщик неизвестен его клиенту - значит, на каком основании ему должен быть предоставлен доступ к конфиденциальным данным.
Кто возьмет на себя гарантию безопасности потерянных данных?
Клиент может обвинить тестировщика в потере данных или конфиденциальности.
Тестирование на проникновение может повлиять на производительность системы и вызвать проблемы с конфиденциальностью и целостностью; поэтому это очень важно, даже при внутреннем тестировании на проникновение, которое проводится внутренним персоналом для получения письменного разрешения. Между тестировщиком и компанией / организацией / частным лицом должно быть письменное соглашение, чтобы прояснить все моменты, касающиеся безопасности данных, раскрытия и т. Д. До начала тестирования.
А statement of intentдолжны быть составлены и должным образом подписаны обеими сторонами до начала любых работ по тестированию. Следует четко обозначить, что объем работы и что вы можете делать, а можете не выполнять при выполнении тестов на уязвимость.
Для тестировщика важно знать, кому принадлежит бизнес или системы, над которыми требуется работать, а также инфраструктуру между системами тестирования и их целевыми объектами, на которые может потенциально повлиять тестирование на проникновение. Идея состоит в том, чтобы убедиться;
the tester имеет письменное разрешение с четко определенными параметрами.
the company имеет подробную информацию о своем пентестере и уверенность в том, что он не будет утечка конфиденциальных данных.
Юридическое соглашение выгодно обеим сторонам. Помните, что правила меняются от страны к стране, поэтому будьте в курсе законов вашей страны. Подписывайте договор только после рассмотрения соответствующих законов.