Привет, Хаброжители! 4-е издание Kali Linux 2018: Assuring Security by Penetration Testing предназначено для этических хакеров, пентестеров и специалистов по IT-безопасности. От читателя требуются базовые знания операционных систем Windows и Linux. Знания из области информационной безопасности будут плюсом и помогут вам лучше понять изложенный в книге материал. Чему вы научитесь • Осуществлять начальные этапы тестирования на проникновение, понимать область его применения • Проводить разведку и учет ресурсов в целевых сетях • Получать и взламывать пароли • Использовать Kali Linux NetHunter для тестирования на проникновение беспроводных сетей • Составлять грамотные отчеты о тестировании на проникновение • Ориентироваться в структуре стандарта PCI-DSS и инструментах, используемых для сканирования и тестирования на проникновение
Структура издания
Глава 1 «Установка и настройка Kali Linux». В этой главе вы познакомитесь с Kali Linux 2018. Особое внимание уделяется различным методам использования системы. Глава написана так, что даже неопытный пользователь сможет запустить Kali Linux с Live DVD; установить и настроить систему на жестком диске, SD-карте, подключенном к USB-порту флеш-накопителе; установить Kali Linux на виртуальной машине. Кроме того, используя AWS, вы можете установить Kali Linux в облаке.
Глава 2 «Создание испытательной лаборатории». В этой главе рассказывается, как создать безопасную виртуальную среду, в которой можно на законных основаниях выполнять разработанные для каждой главы практические примеры. В главе также приведены подробные инструкции по настройке таких виртуальных машин, как Metasploitable 2 и Metasploitable 3, которые будут использоваться как целевые машины в экспериментах на проникновение (пентестах).
Глава 3 «Методология тестирования на проникновение». Здесь представлены различные методологии тестирования с целью планирования и определения масштабов пентестов. Вы также найдете описание практических шагов и технологий, предназначенных для испытаний на проникновение.
Глава 4 «Получение отпечатка и сбор информации». На первом этапе тестирования на проникновение применяется несколько распространенных инструментов, используемых для разведки, включая взлом базы данных Google. В этом издании вы найдете новую информацию о таких инструментах для автоматического сбора информации, как Devploit, RedHawk и Shodan.
Глава 5 «Методы сканирования и уклонения». В этой главе рассказывается, как с помощью мощнейшего инструмента Nmap обнаружить целевые объекты, узлы и сервисы. С помощью Netdiscover и Striker выполняется автоматизированное сканирование и сбор информации. Кроме того, в этой главе рассматривается такой инструмент, как Nipe, предоставляющий пользователям конфиденциальность и анонимность.
Глава 6 «Сканирование уязвимостей». Здесь на практических примерах показано, как найти уязвимости в целевой машине. Приводятся пошаговые инструкции по использованию таких мощных автоматизированных инструментов для оценки уязвимостей, как Nessus 7 и OpenVAS. Вы найдете новую информацию о Linux-инструменте Lynis, предназначенном для сканирования и проверки уязвимостей, и инструменте SPARTA, назначение которого — оценка и перечисление уязвимостей. Работа всех инструментов проводится в испытательной лаборатории, и гарантируется, что оценки реального типа точно моделируются.
Глава 7 «Социальная инженерия». Обсуждаются основные принципы и методы, применяемые профессиональными социальными инженерами для манипуляции людьми, чтобы те разглашали информацию или совершали иные действия.
Глава 8 «Целевая эксплуатация». В этой главе вы будете применять методы и инструменты для эксплуатации компьютерных систем (эксплойты). Эксплойты используют уязвимости и недостатки в системах, что дает возможность пользователю получить доступ к системе.
Глава 9 «Повышение привилегий и поддержание доступа». Здесь вы узнаете, как повысить уровень доступа и взломать другие учетные записи в системе. Взломанные учетные записи будут использоваться для сохранения доступа к системе и получения дальнейшего доступа к сети.
Глава 10 «Тестирование веб-приложений». В этой главе мы рассмотрим несколько основных инструментов, предназначенных для тестирования веб-приложений, а также облачные приложения, так как они основаны на тех же протоколах и используют многие из тех же платформ.
Глава 11 «Тестирование беспроводных сетей на проникновение». В главе рассматривается настройка инструментов, предназначенных для захвата данных, необходимых для взлома беспроводных сетей и получения к ним доступа, включая настройку поддельных точек доступа.
Глава 12 «Мобильное тестирование на проникновение с Kali NetHunter». В этой главе представлен практический подход к тестированию на проникновение с помощью мобильных устройств. Подробно описывается установка и настройка необходимых приложений, а также демонстрируется процесс сканирования и оценки уязвимостей, атак типа «человек посередине» и беспроводных атак, которые могут выполняться мобильными приложениями.
Глава 13 «PCI DSS: сканирование и тестирование на проникновение». Здесь вводится стандарт, описываются шесть задач и 12 требований, приводится обзорный тест на проникновение. Акцент делается на PCI DSS версий 11.3.1 и 11.3.2.
Глава 14 «Инструменты для создания отчетов о тестировании на проникновение». Обсуждаются различные типы отчетов и процедуры, которые проводятся по окончании тестирования, а также демонстрируется использование платформы Dradis для организации и полного документирования теста на проникновение.
Отрывок. Методология тестирования на проникновение
Одним из важнейших факторов, влияющих на успешность проведения теста на проникновение, является стандартная методология испытания. Отсутствие стандартных методик проведения теста на проникновение означает отсутствие однотипности. Мы уверены, вы не хотите быть испытателем, проводящим бессистемный тест, применяя то один, то другой инструмент и не имея представления о том, какие результаты этот тест должен принести.
Методология — это набор стандартных правил, практических действий и процедур, которые реализуются при работе с любой программой, предназначенной для проверки информационной безопасности. В методологии тестирования на проникновение в первую очередь определяется план проведения теста. В этом плане предусматриваются не только цели проведения испытаний, но и действия, которые должны быть выполнены для оценки истинного состояния безопасности сети, приложений, системы или любой их комбинации.
Испытатель обязан обладать практическими навыками проведения испытаний. Он должен владеть инструментами, с помощью которых проводится тест. Только четко определенная методика проведения испытаний на проникновение, теоретические знания и практические навыки испытателя позволят провести полный и достоверный тест на проникновение. Но в то же время методология не должна препятствовать испытателю анализировать свои догадки.
Методология тестирования на проникновение
Чтобы определить, какой тест вам сейчас нужно будет провести, необходимо знать, какие тесты существуют, в каких областях и для каких целей они применяются. Все тесты можно разделить на три группы.
- Методы «белого ящика». В этой группе тестов испытатель хорошо знает проверяемую систему и имеет полный доступ ко всем ее компонентам. Испытатели работают с клиентом и имеют доступ к закрытой информации, серверам, запущенному программному обеспечению, сетевым схемам, а иногда даже к учетным данным. Этот тип испытаний обычно проводится для проверки новых приложений перед их вводом в эксплуатацию, а также для регулярной проверки системы в рамках ее жизненного цикла — Systems Development Life Cycle (SDLC). Такие мероприятия позволяют выявить и устранить уязвимости раньше, чем они могут попасть в систему и навредить ей.
- Методы «черного ящика». Эта группа тестов применима, когда испытателю ничего не известно об испытуемой системе. Этот тип тестирования в наибольшей степени похож на настоящие атаки злоумышленника. Испытатель должен получить всю информацию, творчески применяя имеющиеся у него в распоряжении методы и инструменты, но не выходя за рамки заключенного с клиентом соглашения. Но и этот метод имеет свои недостатки: хотя он и имитирует реальную атаку на систему или приложения, испытатель, используя только его, может пропустить некоторые уязвимости. Это очень дорогой тест, так как занимает большое количество времени. Выполняя его, испытатель изучит все возможные направления атаки и только после этого сообщит о результатах. Кроме того, чтобы не повредить проверяемую систему и не вызвать сбой, испытатель должен быть очень осторожным.
- Методы «серого ящика». Тест учитывает все преимущества и недостатки первых двух тестов. В этом случае испытателю доступна только ограниченная информация, позволяющая провести внешнюю атаку на систему. Испытания обычно выполняются в ограниченном объеме, когда испытатель немного знает о системе.
Для обеспечения наилучших результатов тестирования, независимо от применяемых тестов на проникновение, испытатель должен соблюдать методологию проведения испытаний. Далее мы более подробно обсудим некоторые наиболее популярные стандартные методы проведения испытаний.
- Руководство по тестированию OWASP.
- Руководство по тестированию на проникновение PCI.
- Стандарт выполнения тестирования на проникновение.
- NIST 800-115.
- Руководство по методологии тестирования безопасности с открытым исходным кодом (OSSTMM).
Руководство по тестированию OWASP
Open Web Application Security Project (OWASP) — этот проект объединил разработчиков программных средств с открытым исходным кодом. Люди, входящие в данное сообщество, создают программы для защиты веб-приложений и веб-сервисов. Все приложения создаются с учетом опыта борьбы с программами, наносящими вред веб-сервисам и веб-приложениям. OWASP — это отправная точка для системных архитекторов, разработчиков, поставщиков, потребителей и специалистов по безопасности, то есть всех специалистов, которые принимают участие в проектировании, разработке, развертывании и проверке на безопасность всех веб-сервисов и веб-приложений. Другими словами, OWASP стремится помочь создавать более безопасные веб-приложения и веб-сервисы. Главным преимуществом руководства по тестированию OWASP является то, что по представленным результатам тестов можно получить всестороннее описание всех угроз. Руководство по тестированию OWASP определяет все опасности, которые могут повлиять на работу как системы, так и приложений, и оценивает вероятность их появления. С помощью описанных в OWASP угроз можно определить общую оценку выявленных проведенным тестированием рисков и выработать соответствующие рекомендации по устранению недостатков.
Руководство по тестированию OWASP в первую очередь сосредотачивает внимание на следующих вопросах.
- Методы и инструменты тестирования веб-приложений.
- Сбор информации.
- Проверка подлинности.
- Тестирование бизнес-логики.
- Данные испытаний.
- Тестирование атак типа «отказ в обслуживании».
- Проверка управления сессиями.
- Тестирование веб-сервисов.
- Тест AJAX.
- Определение степени рисков.
- Вероятность угроз.
PCI-руководство по тестированию на проникновение
Здесь собраны нормативы для компаний, соответствующих требованиям PCI (Payment Card Industry — индустрия платежных карт). Причем в руководстве вы найдете нормативы не только по стандарту PCI v3.2. Оно создано Советом безопасности по стандартам PCI, в котором определены методы тестирования на проникновение в рамках программ управления уязвимостями.
Стандарт PCI Data Security Standard (PCI DSS) версии 3.2 был выпущен в апреле 2016 года Советом по стандартам безопасности индустрии платежных карт (PCI SSC). После обновления стандарта требования были уточнены, появились дополнительные указания и семь новых требований.
Для устранения проблем, связанных с нарушениями секретности личных данных владельцев карт, а также для защиты от существующих эксплойтов в стандарт PCI DSS V. 3.2 были включены различные изменения, большинство из которых относятся к поставщикам услуг. В эти изменения были добавлены новые требования к тестированию на проникновение, согласно которым тестирование с сегментацией для поставщиков услуг выполнялось по крайней мере каждые шесть месяцев или после любых значительных изменений в элементах управления/методах сегментации. Кроме того, в этом стандарте содержится несколько требований, обязывающих поставщиков услуг в течение года непрерывно отслеживать и поддерживать критически важные элементы управления безопасностью.
Стандартное проведение тестов на проникновение
Стандарт выполнения тестирования на проникновение состоит из семи основных разделов. Они охватывают все требования, условия и методы проведения испытаний на проникновение: от разведки и до попыток проведения пентестов; этапы сбора информации и моделирования угроз, когда, чтобы добиться лучших результатов проверки, испытатели работают инкогнито; этапы исследования уязвимостей, эксплуатации и пост-эксплуатации, когда практические знания испытателей в области безопасности соединяются с данными, полученными в ходе проведения тестов на проникновение; и как заключительный этап — отчетность, в которой вся информация предоставляется в виде, понятном клиенту.
Сегодня действует первая версия, в которой все стандартные элементы испытаны в реальных условиях и утверждены. Вторая версия находится в стадии разработки. В ней все требования будут детализированы, уточнены и усовершенствованы. Поскольку план каждого теста на проникновение разрабатывается индивидуально, в нем могут быть применены разные тесты: от тестирования веб-приложений до проведения испытаний, предусмотренных для тестирования методом «черного ящика». С помощью этого плана сразу можно определить ожидаемый уровень сложности конкретного исследования и применить его в необходимых, по мнению организации, объемах и областях. Предварительные результаты исследования можно увидеть в разделе, отвечающем за сбор разведданных.
Ниже в качестве основы для выполнения тестов на проникновение приведены основные разделы рассматриваемого нами стандарта.
- Предварительное соглашение на взаимодействие.
- Сбор разведданных.
- Моделирование угроз.
- Анализ уязвимостей.
- Эксплуатация.
- Пост-эксплуатация.
- Составление отчета.
NIST 800-115
Специальное издание Национального института стандартов и технологий (National Institute of Standards and Technology Special Publication, NIST SP 800-115) является техническим руководством по тестированию и оценке информационной безопасности. Публикация подготовлена Лабораторией информационных технологий (Information Technology Laboratory, ITL) в NIST.
В руководстве оценка безопасности трактуется как процесс определения того, насколько эффективно оцениваемая организация отвечает конкретным требованиям безопасности. При просмотре руководства вы увидите, что в нем содержится большое количество информации для тестирования. Хотя документ редко обновляется, он не устарел и может послужить в качестве справочника для построения методологии тестирования.
В этом справочнике предлагаются практические рекомендации по разработке, внедрению и ведению технической информации, тестам безопасности и процессам и процедурам экспертизы, охватывая ключевой элемент или техническое тестирование на безопасность и экспертизу. Данные рекомендации можно использовать для нескольких практических задач. Например, поиск уязвимостей в системе или сети и проверка соответствия политике или другим требованиям.
Стандарт NIST 800-115 предоставляет большой план для испытаний на проникновение. Он позволяет убедиться, что программа тестирования на проникновение соответствует рекомендациям.
Руководство по методологии тестирования безопасности с открытым исходным кодом
OSSTMM — документ, довольно сложный для чтения и восприятия. Но он содержит большое количество актуальной и очень подробной информации по безопасности. Это также самое известное руководство по безопасности на планете с примерно полумиллионом загрузок ежемесячно. Причина такой популярности в следующем: эти инструкции примерно на десятилетие опережают все остальные документы в индустрии безопасности. Цель OSSTMM — в развитии стандартов проверки безопасности Интернета. Данный документ предназначен для формирования наиболее подробного основного плана для тестирования, что, в свою очередь, обеспечит доскональное и всестороннее испытание на проникновение. Независимо от других организационных особенностей, таких как корпоративный профиль поставщика услуг по тестированию на проникновение, это испытание позволит клиенту убедиться в уровне технической оценки.
Фреймворк: общее тестирование на проникновение
Несмотря на то что стандарты различаются по количеству условий, тестирование на проникновение можно разбить на следующие этапы.
1. Разведка.
2. Сканирование и перечисление.
3. Получение доступа.
4. Повышение привилегий.
5. Поддержание доступа.
6. Заметание следов.
7. Составление отчета.
Рассмотрим каждый этап более подробно.
Разведка
Это первый и очень важный этап в тесте на проникновение. На него может уйти немало времени. Многие испытатели делят данный этап на две части: активную и пассивную разведку. Я же предпочитаю эти два этапа объединить, так как полученные результаты скажут сами за себя.
Разведка (рекогносцировка) — это систематический подход, когда вы стараетесь обнаружить расположение и собрать максимально возможное количество информации о целевой системе или машине. Это еще называется сбором следов.
Для проведения данного процесса могут быть использованы следующие методы (в действительности список методов может быть значительно шире).
- Социальная инженерия (это увлекательный метод).
- Исследование в Интернете (с помощью поисковых машин Google, Bing, LinkedIn и т. д.).
- Путешествие по мусорным бакам (можно испачкать руки).
- Холодные звонки.
Вы можете выбрать любой из перечисленных методов для получения информации о целевой системе или машине. Но что же мы все-таки должны на данном этапе узнать?
Нам, конечно, может быть полезным каждый бит информации. Но у нас должна быть приоритетная цель. При этом учтите, что собранные данные, которые на текущем этапе могут показаться ненужными, позже могут пригодиться.
Сначала для нас будет очень важна следующая информация.
- Имена контактов в организации.
- Где располагается организация (если такие данные есть).
- Адреса электронной почты (эти данные можно использовать позже для фишинга, то есть сбора конфиденциальных данных).
- Номера телефонов важных персон, работающих в этой компании (пригодятся для фишинга).
- Операционные системы, используемые в компании, например Windows или Linux.
- Объявления о работе.
- Резюме сотрудников (прошлое и настоящее).
На первый взгляд все эти данные кажутся полезными (разве что смущают объявления о работе). Но представим, что вы встречаетесь с системным администратором. Зная основные требования, вы можете получить большое количество информации о внутренней системе организации. Это можно использовать для разработки направления атаки.
Для этих же целей служат и резюме сотрудников. Зная, что люди умеют делать, легко можно определить, с какими системами они работают, а какие им недоступны.
Вам это может показаться утомительным. Но имейте в виду: чем больше информации вы соберете, тем больше у вас будет возможностей для принятия решений как сейчас, так и позже.
Мы считаем, что к разведке следует прибегать на протяжении всего взаимодействия.
» Более подробно с книгой можно ознакомиться на сайте издательства
» Оглавление
» Отрывок
Для Хаброжителей скидка 25% по купону — Kali Linux
По факту оплаты бумажной версии книги на e-mail высылается электронная книга.
Тестирование на проникновение выявляет уязвимости в сетевой инфраструктуре, открытые порты, а также неполадки в действующих системах и службах.
Пентестинг помогает IT-администратору закрывать неиспользуемые порты, отключать дополнительные службы, скрывать или настраивать баннеры, определять неисправности в системе и калибровать правила брандмауэра. Пентестер должен тестировать сеть всеми возможными способами, чтобы гарантировать отсутствие лазеек в системе безопасности.
В этой статье мы расскажем, как проводить тестирование на проникновение в сеть, используя известные сетевые сканеры.
1. ОБНАРУЖЕНИЕ ХОСТА
Футпринтинг (Footprinting) — это первый и важный этап сбора информации о целевой системе.
Отпечатки DNS помогают перечислить записи DNS (A, MX, NS, SRV, PTR, SOA, CNAME), разрешающие доступ к целевому домену.
A – используется для указания доменного имени, например, testdomain.com, на IP-адрес его хост-сервера;
MX – записи, отвечающие за обмен электронной почтой;
NS – предназначены для идентификации DNS-серверов, ответственных за домен;
SRV – записи для выделения службы, размещенной на определенных серверах;
PTR – обратный поиск DNS: с помощью IP вы можете получить связанный с ним домен;
SOA – начало записи: это информация о зоне DNS и других записях DNS;
CNAME – сопоставляет целевое доменное имя с другим доменным именем.
Мы можем обнаруживать активные и доступные хосты в целевой сети с помощью инструментов сетевого сканирования, таких как Advanced IP scanner, NMAP, HPING3, NESSUS.
Пинг и проверка пинга (Ping и Ping Sweep):
root@kali:~# nmap —sn 192.168.169.128
root@kali:~# nmap —sn 192.168.169.128-20 (сканирование диапазона IP-адресов);
root@kali:~# nmap —sn 192.168.169.* (подстановочный знак используется для замены одного или нескольких символов. Он ставится, когда команда должна относиться ко ВСЕМ объектам);
root@kali:~# nmap —sn 192.168.169.128/24 (сканирование всей подсети).
Информация Whois
Чтобы получить информацию Whois и сервер имен (name server, NS) веб-сайта нужно ввести следующую команду:
root@kali:~# whois testdomain.com
Онлайн-сервисы для получения информации Whois
- http://whois.domaintools.com/
- https://whois.icann.org/en
Трассировка (Traceroute)
Инструмент диагностики сети отображает путь маршрута и задержку прохождения пакетов.
root@kali :~# traceroute google.com
Онлайн-инструменты для проверки трассировки
- http://www.monitis.com/traceroute/
- http://ping.eu/traceroute/
2. СКАНИРОВАНИЕ ПОРТОВ
Сканирование портов выполняется с помощью инструментов Nmap, Hping3, Netscan tools, Network monitor. Они помогают проверить сервер или хост в целевой сети на наличие открытых портов. Открытые порты — это ворота, через которые злоумышленники могут войти и установить бэкдор.
root@kali :~# nmap —open testdomain.com (сканировать все открытые порты);
root@kali :~# nmap -p 80 192.168.169.128 (сканировать конкретный порт);
root@kali :~# nmap -p 80-200 192.168.169.128 (сканировать диапазон портов);
root@kali :~# nmap -p «*» 192.168.169.128 (сканировать все порты).
Онлайн-инструменты для сканирования портов
- http://www.yougetsignal.com/
- https://pentest-tools.com/information-gathering/find-subdomains-of-domain
3. ЗАХВАТ БАННЕРА/ОТПЕЧАТОК ОПЕРАЦИОННОЙ СИСТЕМЫ (OS Fingerprinting)
Выполнение захвата баннеров/снятие отпечатков ОС, таких как Telnet, IDServe, NMAP, определяет операционную систему целевого хоста.
После определения версии ОС, нужно найти уязвимости и использовать их. Попытайтесь получить контроль над системой.
root@kali :~# nmap -A 192.168.169.128;
root@kali :~# nmap -v -A 192.168.169.128 (сканирование с высоким уровнем детализации);
IDserve — еще один хороший инструмент для захвата баннеров.
Онлайн-инструменты
- https://www.netcraft.com/
- https://w3dt.net/tools/httprecon
- https://www.shodan.io/
4. ПОИСК УЯЗВИМОСТЕЙ
Сканировать сеть на наличие уязвимостей можно с помощью GIFLanguard, Nessus, Ratina CS, SAINT.
GIFLanguard – выступает в качестве консультанта по безопасности и предлагает услуги по управлению исправлениями, оценке уязвимостей и аудиту сети;
Nessus – сканер уязвимостей, который ищет ошибки в ПО и находит конкретный способ нарушить безопасность программного продукта. Он обладает следующими функциями:
- Сбор данных;
- Идентификация хоста;
- Сканирование портов;
- Выбор плагина;
- Отчетность.
5. СОСТАВЛЕНИЕ СЕТЕВЫХ ДИАГРАММ
Если вы нарисуете сетевую диаграмму организации, она поможет вам понять логический путь подключения к целевому хосту в сети. Сетевую диаграмму можно нарисовать с помощью LANmanager, LANstate, Friendly pinger, Network view.
6. ИСПОЛЬЗУЙТЕ ПРОКСИ
Прокси действуют как посредник между двумя сетевыми устройствами. Прокси может защитить локальную сеть от внешнего доступа. С помощью прокси-серверов мы можем анонимизировать просмотр веб-страниц и фильтровать нежелательное содержимое, например, рекламу и другой контент.
Чтобы избежать обнаружения, вам помогут инструменты Proxifier, SSL Proxy, Proxy Finder и т.д.
7. ДОКУМЕНТИРУЙТЕ ВСЕ ВЫВОДЫ
Последним и очень важным шагом является документирование всех результатов тестирования на проникновение. Этот документ поможет вам найти потенциальные уязвимости в вашей сети. Как только вы их определите, вы сможете соответствующим образом исправить их и настроить безопасную сеть.
Тестирование на проникновение помогает оценить вашу сеть до того, как она столкнется с реальными кибератаками, которые могут привести к серьезным финансовым потерям.
Важные инструменты, используемые для пентеста сети:
Фреймворки
Kali Linux, Backtrack5 R3, Security Onion
Разведка
Smartwhois, MxToolbox, CentralOps, dnsstuff, nslookup, DIG, netcraft
Мониторинг
Angry IP scanner, Colasoft ping tool, nmap, Maltego, NetResident,LanSurveyor, OpManager
Сканирование портов
Nmap, Megaping, Hping3, Netscan tools pro, Advanced port scannerService Fingerprinting Xprobe, nmap, zenmap
Определение состояния целевой машины и системной информации
Superscan, Netbios enumerator, Snmpcheck, onesixtyone, Jxplorer, Hyena,DumpSec, WinFingerprint, Ps Tools, NsAuditor, Enum4Linux, nslookup, Netscan
Сканирование
Nessus, GFI Languard, Retina,SAINT, Nexpose
Взлом пароля
Ncrack, Cain & Abel, LC5, Ophcrack, pwdump7, fgdump, John The Ripper,Rainbow Crack
Сниффинг
(Sniffing)
Wireshark, Ettercap, Capsa Network Analyzer
MiTM-атаки
Cain & Abel, Ettercap
Эксплуатация
Metasploit, Core Impact
Это самый важный контрольный список, на котором вы должны сосредоточиться при тестировании сети на проникновение.
layout | title | tags |
---|---|---|
col-document |
WSTG — Latest |
WSTG |
{% include breadcrumb.html %}
Методологии тестирования на проникновение
Обзор
- Руководства по тестированию от OWASP
- Руководство по тестированию безопасности web-приложений (WSTG)
- Руководство по тестированию безопасности мобильных приложений (MSTG)
- Методология тестирования безопасности встроенного программного обеспечения (FSTM)
- Стандарт проведения тестирования на проникновение
- Руководство по тестированию на проникновение от PCI
- Руководство PCI DSS по тестированию на проникновение
- Требования PCI DSS к тестированию на проникновение
- Фреймворк для тестирования на проникновение
- Техническое руководство по тестированию и оценке информационной безопасности
- Руководство по методологии тестирования безопасности с открытым исходным кодом
- Ссылки
Руководства по тестированию от OWASP
Что касается проведения технического тестирования безопасности, настоятельно рекомендуется использовать руководства по тестированию от OWASP. В зависимости от типов приложений ниже перечислены руководства по тестированию для web-приложений/облачных сервисов, мобильных приложений (Android/iOS) или встроенного программного обеспечения/Интернета вещей (IoT) соответственно.
- Руководство по тестированию безопасности web-приложений
- Руководство по тестированию безопасности мобильных приложений
- Методология тестирования безопасности встроенного программного обеспечения
Стандарт проведения тестирования на проникновение
Стандарт проведения тестирования на проникновение (PTES) разделяет тестирование на проникновение на 7 этапов. В частности, Технические рекомендации PTES содержат практические предложения по процедурам тестирования и рекомендации по инструментам тестирования безопасности.
- Предварительные взаимодействия
- Сбор информации
- Моделирование угроз
- Анализ уязвимостей
- Эксплуатация
- Пост-эксплуатация
- Отчётность
Технические рекомендации PTES
Руководство по тестированию на проникновение от PCI
Требование 11.3 Стандарта безопасности данных индустрии платёжных карт (PCI DSS v.3.2.1) устанавливает Требования к тестированию на проникновение. PCI также предоставляет Руководство по тестированию на проникновение.
Руководство PCI DSS по тестированию на проникновение
Руководство по тестированию на проникновение PCI DSS содержит рекомендации по следующим направлениям:
- Компоненты тестирования на проникновение
- Квалификация пентестера
- Методологии тестирования на проникновение
- Руководство по составлению отчётов о тестировании
Требования PCI DSS к тестированию на проникновение
Требования PCI DSS изложены в требовании 11.3 Стандарта безопасности данных индустрии платёжных карт (PCI DSS).
- Основаны на принятых в отрасли подходах
- Охватывают среду обработки данных о держателях карт (CDE) и критичные системы
- Включают внешнее и внутреннее тестирование
- Требуют подтверждения для сокращения области тестирования
- Тестируют уровень приложений
- Тестируют уровень инфраструктуры для сети и операционной системы
Руководство PCI DSS по тестированию на проникновение
Фреймворк для тестирования на проникновение
Фреймворк для тестирования на проникновение (PTF) предоставляет исчерпывающее практическое руководство по тестированию. В нём также перечислены способы применения инструментов тестирования безопасности в каждой категории тестирования, которые включают в себя:
- Обнаружение следов в сети (рекогносцировка)
- Инвентаризация и зондирование ресурсов
- Перебор
- Взлом паролей
- Анализ уязвимостей
- Аудит AS/400
- Тестирование Bluetooth
- Тестирование Cisco
- Тестирование Citrix
- Тестирование магистральной сети
- Серверные тесты
- Безопасность VoIP
- Пентест беспроводных сетей
- Физическая безопасность
- Итоговый отчет (шаблон)
Фреймворк для тестирования на проникновение
Техническое руководство по тестированию и оценке информационной безопасности
Техническое руководство по тестированию и оценке информационной безопасности (NIST 800-115) включает в себя методы, перечисленные ниже.
- Методы исследования
- Методы идентификации и анализа целей
- Методы тестирования уязвимостей цели
- Планирование оценки защищённости
- Проведение оценки защищённости
- Мероприятия после тестирования
Подробнее в NIST 800-115.
Руководство по методологии тестирования безопасности с открытым исходным кодом
Руководство по методологии тестирования безопасности с открытым исходным кодом (Open Source Security Testing Methodology Manual, OSSTMM) представляет собой методологию для тестирования операционной безопасности для физических местоположений, производственных процессов, безопасности персонала, физической безопасности, беспроводных сетей, телекоммуникаций, включая соблюдение правил и законодательства. OSSTMM может служить вспомогательным справочником для ISO 27001 вместо практического или технического руководств по тестированию на проникновение.
OSSTMM включает следующие разделы:
- Анализ защищённости
- Метрики операционной безопасности
- Анализ доверия
- Производственный процесс
- Тестирование безопасности персонала
- Тестирование физической безопасности
- Тестирование безопасности беспроводных сетей
- Тестирование безопасности телекоммуникаций
- Тестирование безопасности сетей передачи данных
- Соответствие применимым правилам и нормам
- Отчётность STAR (Security Test Audit Report)
Open Source Security Testing Methodology Manual
Ссылки
- PCI DSS — Руководство по тестированию на проникновение
- PTES — Стандарт проведения тестирования на проникновение
- OSSTMM — Руководство по методологии тестирования безопасности с открытым исходным кодом
- NIST SP 800-115 — Техническое руководство по тестированию и оценке информационной безопасности
- HIPAA — Оценка тестирования защищённости, 2012
- PTF — Фреймворк для тестирования на проникновение
- OWASP MSTG — Руководство по тестированию безопасности мобильных приложений
- Презентация о тестировании безопасности для мобильных приложений
- Kali Linux
- Информационное дополнение к PCI DSS: Требование 11.3 Тестирование на проникновение
В этом руководстве по тестированию на проникновение (руководстве по пентесту) мы узнаем следующее:
Давайте углубимся в изучение тестирования на проникновение без дальнейшего промедления.
Что такое тестирование на проникновение?
Тестирование на проникновение также является типом тестирования безопасности, которое проводится для оценки безопасности системы (аппаратного обеспечения, программного обеспечения, сетей или среды информационной системы). Цель этого тестирования — найти все уязвимости безопасности, присутствующие в приложении, путем оценки безопасности системы с помощью вредоносных методов, а также защитить данные от хакеров и поддерживать функциональность системы. Это тип нефункционального тестирования, целью которого является авторизованные попытки нарушить безопасность системы. Это также известно как Pen Testing или Pen Test, и тестер, который проводит это тестирование, является специалистом по тестированию на проникновение, также известным как этический хакер.
Обязательно прочтите: Что такое тестирование на проникновение PCI [Пошаговое руководство]
Зачем необходимо тестирование на проникновение?
Если система не защищена, злоумышленник может получить авторизованный доступ к системе. Тестирование на проникновение оценивает безопасность системы и защищает ее от внутренних и внешних угроз. Он выявляет уязвимости и определяет, возможен ли несанкционированный доступ или другие вредоносные действия.
Организации проводят тестирование на проникновение по ряду причин
- Чтобы предотвратить утечку данных
- Чтобы проверить меры безопасности< li>Для соответствия требованиям соответствия
- Для обеспечения безопасности новых приложений
- Для доступа к обнаружению инцидентов и эффективности реагирования
< strong>Как часто проводить тестирование на проникновение?
Кибератаки происходят довольно часто в наши дни. Очень важно проводить регулярное сканирование уязвимостей и тестирование на проникновение для обнаружения недавно обнаруженных и ранее неизвестных уязвимостей.
Частота проведения тестирования на проникновение должна зависеть от политики безопасности вашей организации. Однако регулярное проведение ручного тестирования может определить слабые места вашей системы и уберечь ее от нарушений безопасности.
Обычно пентестинг проводится после развертывания новой инфраструктуры и приложений. Кроме того, это делается после серьезных изменений в инфраструктуре и приложениях.
Сканирование уязвимостей проверяет серверы на наличие уязвимостей. Мы должны убедиться, что обнаруженные нами уязвимости не являются ложными срабатываниями. На самом деле сообщения о ложных срабатываниях — это обратная сторона сканирования уязвимостей.
Тестирование на проникновение проверяет серверы на наличие уязвимостей и использует их.
Как сканирование уязвимостей, так и тестирование на проникновение могут проверить способность организации обнаруживать бреши в системе безопасности. Организациям необходимо сканировать как внешнюю, так и внутреннюю инфраструктуру и приложения для защиты от внешних и внутренних угроз.
Организациям необходимо регулярно проводить тестирование на проникновение по следующим причинам:
- Чтобы найти уязвимости в системе безопасности
- Для защиты пользовательских данных
- Для тестирования приложений, которые часто являются путями атаки
- Для выявления новых ошибок в существующей системе после развертывания или после серьезных изменений, внесенных в систему
- Для предотвращения черных атак и защиты данные пользователя
- Чтобы контролировать потери доходов
- Чтобы улучшить существующие стандарты безопасности
Какие этапы тестирования на проникновение?
Процесс тестирования на проникновение можно разделить на пять этапов, а именно:
1. Этап планирования
На этом этапе мы определяем объем (какую систему тестировать, а также цели и задачи, которых необходимо достичь с помощью теста на проникновение), а также ресурсы и инструменты (сканеры уязвимостей или инструменты тестирования на проникновение), которые следует использовать для тестирования. исполнение
2. Этап обнаружения
На этом этапе мы собираем как можно больше информации о системах, которые находятся в рамках теста на проникновение.
3. Этап оценки уязвимости
При оценке уязвимости мы просто выявляем уязвимость и сообщаем об уязвимости с помощью инструментов сканирования уязвимостей.
4. Этап эксплуатации
На этом этапе мы пытаемся использовать уязвимости, выявленные на предыдущем этапе (т. е. этапе обнаружения), чтобы получить доступ к целевой системе.
5. Этап отчетности
На этом этапе мы эффективно документируем все результаты и выводы. Этот отчет будет использоваться в качестве справочного документа при устранении выявленных уязвимостей.
Каковы основные причины уязвимостей системы безопасности?
Некоторые из основных причин уязвимостей безопасности заключаются в следующем
- Сложность:Уязвимости системы безопасности возрастают пропорционально сложности системы. Сложность с точки зрения программного обеспечения, оборудования, информации, бизнеса и процессов создает больше уязвимостей в системе безопасности.
- Подключение. Каждое незащищенное подключение является потенциальной площадкой для эксплуатации.
- Проблемы дизайна: В программном и аппаратном обеспечении не должно быть ошибок проектирования. Эти ошибки могут подвергать предприятия значительным рискам.
- Конфигурация. Неправильная конфигурация системы создает уязвимости в системе безопасности.
- Ввод данных пользователем:Данные, полученные посредством SQL-инъекций, переполнения буфера и т. д., могут быть предназначены для атаки на принимающую систему.
- Управление: у руководства должен быть надлежащий план управления рисками, чтобы избежать уязвимостей системы безопасности.
- Пароли. Пароли предназначены для предотвращения несанкционированного доступа и защиты ваших личных данных. Незащищенные пароли (передача другим пользователям, их запись где-либо, настройка легко угадываемых) позволяют хакерам легко подобрать ваш пароль.
- Недостаток обучения:Отсутствие подготовки приводит к человеческим ошибкам. Человеческие ошибки можно предотвратить путем надлежащего обучения сотрудников.
- Человеческие ошибки: человеческие ошибки, такие как неправильная утилизация документов, ошибки кодирования, предоставление паролей к фишинговым сайтам, являются важным источником безопасности. уязвимости.
- Связь. Каналы связи, такие как телефон, мобильный телефон, Интернет, создают возможности для уязвимостей системы безопасности.
- Социальные сети: Раскрытие сотрудниками конфиденциальной информации посторонним является одной из распространенных причин угроз безопасности.
Что такое разница между тестированием на проникновение и сканированием уязвимостей?
Прежде чем рассматривать разницу между тестированием на проникновение и сканированием уязвимостей. Давайте рассмотрим два наиболее часто используемых термина, таких как уязвимость и эксплойт.
Что такое уязвимость?
Уязвимость — это безопасность. слабость или недостаток, который может быть использован злоумышленником для выполнения несанкционированных действий в системе.
Что такое эксплойт?< /h3>
Эксплойт — это программа, которая использует уязвимость, чтобы вызвать непреднамеренное поведение в системе. Это действие выполняется, чтобы получить контроль над системой для атаки на нее.
Теперь давайте посмотрим на разницу между тестированием на проникновение и оценкой уязвимостей.
В отрасли существует путаница в отношении разницы между тестированием на проникновение и сканированием уязвимостей. Несмотря на то, что эти два термина обычно взаимозаменяемы, между ними есть некоторые различия. Тестирование на проникновение отличается от тестирования на уязвимости.
Сканирование уязвимостей
При сканировании уязвимостей (также известном как оценка уязвимостей) мы просто выявляем уязвимости и сообщаем об уязвимостях с помощью инструментов сканирования уязвимостей.
Это первый шаг к повышению безопасности системы.
Отчет об оценке уязвимостей должен содержать название, описание и серьезность уязвимости.
Тестирование на проникновение
При тестировании на проникновение (он же тест на проникновение) мы выявляем уязвимости и пытаемся использовать их с помощью инструментов тестирования на проникновение. Мы повторяем одни и те же тесты на проникновение до тех пор, пока система не будет отрицательным для всех этих тестов.
В отчете о тестировании на проникновение перечислены уязвимости, которые были успешно использованы.
Если организация заинтересована в защите своей системы от проблем безопасности затем они должны регулярно проводить оценку уязвимостей и тестирование на проникновение.
Тестирование на проникновение можно разделить на три метода, такие как ручное тестирование на проникновение, автоматическое тестирование на проникновение и сочетание ручного и автоматического тестирования на проникновение.
Используя инструменты автоматического тестирования на проникновение, невозможно найти все уязвимости. Некоторые уязвимости можно выявить с помощью ручного сканирования. Итак, опытные пен-тестеры используют свой опыт и навыки для атаки на систему с помощью ручного тестирования на проникновение.
Кто выполняет пентестирование?
Пентестирование может выполняться тестировщиками, сетевыми специалистами или консультантами по безопасности.
Роль и обязанности пентестеров
Обязанности пентестеров варьируются от компании к компании. Тем не менее, есть несколько основных обязанностей, общих для всех пен-тестеров, таких как
- Понимание сложных компьютерных систем и технических терминов кибербезопасности
- Сбор необходимой информации от организации для проведения тестов на проникновение
- Планирование создавать методы проникновения, сценарии и тесты
- Проводить тестирование клиентской инфраструктуры на месте и удаленное тестирование клиентской сети для выявления слабых мест в безопасности
- Работать с клиентами, чтобы определить их требования на основе тестирования
- Проводить тестирование на проникновение и сканирование уязвимостей с использованием автоматизированных инструментов, специальных инструментов и ручное тестирование
- Возможность анализировать первопричины и давать стратегические рекомендации во время проверки безопасности
- Создавать отчеты и рекомендации на основе полученных результатов
- Поймите, как обнаруженные вами недостатки могут повлиять на бизнес или бизнес-функцию, если они не будут устранены.
- Выявленные вами недостатки должны быть воспроизводимы, чтобы разработчикам было легко их исправить
- Все данные и информация должна храниться в тайне
Типы тестеров на проникновение?
- Черные тестеры на проникновение
- Белые тестеры на проникновение
- Серые тестеры на проникновение
В чем разница между черными, белыми и серыми хакерами?
Черные хакеры
Хакеры в черной шляпе (также известные как черные шляпы) считаются киберпреступниками. Они используют свои навыки со злым умыслом для личной или финансовой выгоды. Они взламывают компьютерные сети, чтобы уничтожить данные или сделать систему непригодной для использования теми, кто уполномочен ею пользоваться. Обычно они занимаются взломом банков, кражей информации о кредитных картах, созданием и использованием ботнета для выполнения DDoS-атак (распределенный отказ в обслуживании) и т. д.,
белые хакеры< /сильный>
Белых хакеров (также известных как «белые шляпы») обычно называют этическими хакерами. Этические хакеры работают во благо, а не во зло. Обычно компании нанимают этих белых хакеров в качестве штатных сотрудников, а также некоторые компании работают с этими белыми хакерами на контрактной основе в качестве специалистов по безопасности, чтобы найти лазейки в безопасности своей системы. Белые хакеры атакуют систему после получения разрешения от владельца системы.
Серые хакеры
Хакеры серой шляпы (также известные как серые шляпы) могут взломать систему по этическим и неэтичным причинам. Действия этих серых хакеров находятся где-то между хакерами в черной шляпе и хакерами в белой шляпе. Серые хакеры находят уязвимости в системе. Этот тип взлома считается незаконным, поскольку они атакуют систему, не получив разрешения от владельца системы. Они находят для безопасности уязвимости, но не для плохих целей. После обнаружения уязвимостей безопасности они сообщают о них владельцу системы. Иногда они требуют плату за решение проблемы. Если владелец не отвечает, иногда хакеры раскрывают уязвимость безопасности общественности. /strong>
Различные типы проверки на проникновение, а именно
#1. Тесты сетевых служб
Пен-тест сетевых служб направлен на выявление слабых мест и уязвимостей в сети. Эти тесты можно запускать как локально, так и удаленно.
Тестировщики должны ориентироваться на следующие области сети:
- Тест конфигурации брандмауэра
- Тест анализа состояния
- Тест обхода брандмауэра
- IPS обман
- Атаки на уровне DNS, такие как тестирование передачи зоны, проблемы с коммутацией или маршрутизацией, а также другие необходимые проверки сети
Пестер-тестеры также охватывают некоторые из наиболее распространенных программных пакетов, таких как
- Secure Оболочка (SSH)
- SQL Server или MySQL
- Простой протокол передачи почты (SMTP)
- Протокол передачи файлов (FTP)
#2. Тесты веб-приложений
Пентесты веб-приложений (тестирование проникновения веб-приложений) направлены на выявление уязвимостей безопасности веб-приложений, веб-браузеров и их компонентов, таких как ActiveX, апплеты, Silverlight и API.< h3><сильный>#3. Тесты на стороне клиента
Проверки на проникновение на стороне клиента направлены на поиск уязвимостей в системе безопасности и их использование в программных приложениях на стороне клиента.
#4. Беспроводные тесты
Беспроводные ручные тесты, связанные с анализом сетей Wi-Fi и беспроводных устройств, развернутых на сайте клиента. Беспроводные устройства, такие как ноутбуки, нетбуки, планшеты, смартфоны, iPod и т. д.,
#5. Тесты социальной инженерии
Раскрытие сотрудниками конфиденциальной информации посторонним является одной из распространенных причин угроз безопасности. Все сотрудники должны следовать стандартам и политикам безопасности, чтобы избежать попыток проникновения через социальную инженерию. Эти тесты в основном проводятся через каналы связи, такие как телефон, мобильный телефон, Интернет, и нацелены на сотрудников, службы поддержки и процессы.
Проверки пера социальной инженерии можно разделить на два типа
#1. Удаленные тесты
Удаленные тесты направлены на то, чтобы заставить сотрудника раскрыть конфиденциальную информацию с помощью электронных средств (например, с помощью фишинговой кампании по электронной почте)
#2. Физические тесты
Для защиты конфиденциальной информации следует применять надежные методы физической безопасности. Это включает в себя тактику обращения с людьми, например, убеждение сотрудника с помощью телефонных звонков. Обычно он используется на военных объектах.
Какие существуют типы Pen Testing?
Есть можно использовать три типа Pen Testing, а именно
1. Тестирование на проникновение методом «черного ящика»
2. Тестирование методом “белого ящика”
3. Тестирование на проникновение серого ящика
№1. Тестирование на проникновение через черный ящик
В подходе тестирования на проникновение «черный ящик» тестировщики «черного ящика» (хакеры Black Hat) оценивают целевую систему, не имея никаких знаний о деталях системы. У них просто есть высокоуровневые сведения о системе, такие как URL-адрес или название компании. Они не проверяют программный код. Эти тестировщики не являются этичными хакерами. Невозможно получить информацию о целевой системе от владельца системы. Поэтому они запускают полномасштабную атаку грубой силы на систему, чтобы обнаружить слабые места или уязвимости в системе. Этот подход также называется методом проб и ошибок.
#2. Тестирование на проникновение методом белого ящика
В подходе тестирования на проникновение через белый ящик пен-тестеры белого ящика (белые хакеры) получают доступ к целевой системе с полной информацией о системе. Поскольку у них есть полная информация о системе, тест белого ящика можно выполнить намного быстрее, чем тест черного ящика. Тестеров пера белого ящика называют этическими хакерами. Этот подход также известен как «прозрачный ящик», «стеклянный ящик», «открытый ящик» и структурное тестирование.
#3. Тестирование на проникновение серого ящика
В подходе тестирования на проникновение серого ящика пен-тестеры серого ящика (серые хакеры) используют как ручные, так и автоматизированные процессы тестирования. Это комбинация методов тестирования на проникновение «черного ящика» и «белого ящика». Эти хакеры могут атаковать систему по этическим и неэтичным причинам. Эти хакеры находят уязвимости в системе. Этот тип взлома считается незаконным, поскольку они атакуют систему без разрешения владельца системы.
Ограничения тестирования на проникновение
< p>Тестирование на проникновение не может найти все уязвимости в целевой системе. Существуют некоторые ограничения, основанные на ресурсах и ограничениях теста, например
- Ограничения навыков пен-тестера. Трудно найти профессиональных пен-тестеров.
- Ограничения объема — большинство организаций отказываются от некоторых тестов из-за ресурсов, ограничений безопасности и т. д.,
- Ограничения по времени
- Ограничения бюджета
- Ограничения используемых инструментов
Как выбрать инструменты для тестирования на проникновение?
Нам нужно выбрать тест на проникновение, основываясь на следующих моментах.
- < li>Он должен быть прост в использовании
- Его должно быть легко настроить и развернуть
- Он должен легко сканировать уязвимости
- Категоризация уязвимостей на основе серьезности
- Должны создаваться подробные отчеты и журналы
- Должна быть экономичной с точки зрения бюджета
- Необходима хорошая команда поддержки и техническая документация
Лучшие инструменты для тестирования на проникновение
Инструменты для проверки на проникновение подразделяются на сканеры уязвимостей и злоумышленники. Сканеры уязвимостей показывают вам слабые места системы, тогда как злоумышленники уязвимостей показывают вам слабые места системы и атакуют их.
Некоторые из популярных инструментов тестирования на проникновение:
#1. Invicti
Invicti — сканер безопасности веб-приложений. Этот сканер безопасности веб-приложений прост в использовании, а результаты будут невероятно точными. Он используется для автоматического выявления проблем безопасности, таких как внедрение SQL и межсайтовый скриптинг (XSS) на веб-сайтах, веб-приложениях и веб-службах. Технология Proof-Based Scanning не только сообщает об уязвимостях, но и создает Proof of Concept, чтобы подтвердить, что они не являются ложными срабатываниями.
Некоторые функции Invicti заключаются в следующем
- Оценка уязвимостей
- Расширенное веб-сканирование
- Технология проверки на основе доказательств для абсолютно точного обнаружения уязвимостей и результатов сканирования
- Полная поддержка HTML5
- Сканирование веб-служб
- Создание HTTP-запросов
- Интеграция с SDLC
- Отчетность
- Эксплуатация
- Ручное тестирование
- Поддержка токена защиты от CSRF (подделка межсайтовых запросов)
- Автоматическое обнаружение пользовательских ошибок 404 страницы ошибок
- Поддержка REST API
- Поддержка токена Anti-CSRF
#2. Acunetix
<р>Acunetix — это сканер веб-уязвимостей, который автоматически сканирует любой веб-сайт. Он обнаруживает более 4500 веб-уязвимостей, включая все варианты SQL-инъекций, XSS и Host Header Injection. Пользователи могут экспортировать уязвимости в средства отслеживания проблем, такие как Atlassian JIRA, Bugzilla, GitHub, GitLab и т. д.
Не пропустите наш подробный обзор Acunetix.
Некоторые функции Acunetix заключаются в следующем
- Углубленное сканирование и анализ — автоматическое сканирование всех веб-сайтов
- Самый высокий уровень обнаружения уязвимостей с низким уровнем ложных срабатываний
- Интегрированное управление уязвимостями — определение приоритетов угроз и контроль над ними
- Интеграция с популярными WAF и системами отслеживания проблем, такими как JIRA, GitHub , TFS
- Бесплатные инструменты сканирования безопасности сети и ручного тестирования
- Он поддерживает Windows, Linux и macOS
Познакомьтесь с нашим подробным обзором и руководством по сравнению лучших инструментов тестирования на проникновениеподробнее.
< p>Некоторыми из бесплатных инструментов тестирования на проникновение (инструменты оценки уязвимости сети/инструменты оценки веб-уязвимости) являются NMap, Nessus, Metasploit, Wireshark, OpenSSL, W3af и т. д.,
Какие существуют коммерческие инструменты для тестирования на проникновение?
Некоторыми из коммерческих инструментов для тестирования на проникновение являются Invicti, Acunetix.
Заключение
Мы подготовили это руководство, помня о тестировщиках программного обеспечения, и рассмотрели все необходимое, чтобы они могли изучить и внедрить тестирование на проникновение на работе. Несмотря на то, что это руководство для начинающих по тестированию на проникновение, мы надеемся, что вы сможете улучшить свои знания о тестировании на проникновение с помощью этого руководства.
Если у вас есть какие-либо вопросы, оставьте комментарий ниже. Если вы тестировщик на проникновение, поделитесь своим опытом в разделе комментариев ниже.
TAG: qa
Penetration Testing Methodologies
Summary
- OWASP Testing Guides
- Web Security Testing Guide (WSTG)
- Mobile Security Testing Guide (MSTG)
- Firmware Security Testing Methodology
- Penetration Testing Execution Standard
- PCI Penetration Testing Guide
- PCI DSS Penetration Testing Guidance
- PCI DSS Penetration Testing Requirements
- Penetration Testing Framework
- Technical Guide to Information Security Testing and Assessment
- Open Source Security Testing Methodology Manual
- References
OWASP Testing Guides
In terms of technical security testing execution, the OWASP testing guides are highly recommended. Depending on the types of the applications, the testing guides are listed below for the web/cloud services, Mobile app (Android/iOS), or IoT firmware respectively.
- OWASP Web Security Testing Guide
- OWASP Mobile Security Testing Guide
- OWASP Firmware Security Testing Methodology
Penetration Testing Execution Standard
Penetration Testing Execution Standard (PTES) defines penetration testing as 7 phases. Particularly, PTES Technical Guidelines give hands-on suggestions on testing procedures, and recommendation for security testing tools.
- Pre-engagement Interactions
- Intelligence Gathering
- Threat Modeling
- Vulnerability Analysis
- Exploitation
- Post Exploitation
- Reporting
PTES Technical Guidelines
PCI Penetration Testing Guide
Payment Card Industry Data Security Standard (PCI DSS) Requirement 11.3 defines the penetration testing. PCI also defines Penetration Testing Guidance.
PCI DSS Penetration Testing Guidance
The PCI DSS Penetration testing guideline provides guidance on the following:
- Penetration Testing Components
- Qualifications of a Penetration Tester
- Penetration Testing Methodologies
- Penetration Testing Reporting Guidelines
PCI DSS Penetration Testing Requirements
The PCI DSS requirement refer to Payment Card Industry Data Security Standard (PCI DSS) Requirement 11.3
- Based on industry-accepted approaches
- Coverage for CDE and critical systems
- Includes external and internal testing
- Test to validate scope reduction
- Application-layer testing
- Network-layer tests for network and OS
PCI DSS Penetration Test Guidance
Penetration Testing Framework
The Penetration Testing Framework (PTF) provides comprehensive hands-on penetration testing guide. It also lists usages of the security testing tools in each testing category. The major area of penetration testing includes:
- Network Footprinting (Reconnaissance)
- Discovery & Probing
- Enumeration
- Password cracking
- Vulnerability Assessment
- AS/400 Auditing
- Bluetooth Specific Testing
- Cisco Specific Testing
- Citrix Specific Testing
- Network Backbone
- Server Specific Tests
- VoIP Security
- Wireless Penetration
- Physical Security
- Final Report — template
Penetration Testing Framework
Technical Guide to Information Security Testing and Assessment
Technical Guide to Information Security Testing and Assessment (NIST 800-115) was published by NIST, it includes some assessment techniques listed below.
- Review Techniques
- Target Identification and Analysis Techniques
- Target Vulnerability Validation Techniques
- Security Assessment Planning
- Security Assessment Execution
- Post-Testing Activities
The NIST 800-115 can be accessed here
Open Source Security Testing Methodology Manual
The Open Source Security Testing Methodology Manual (OSSTMM) is a methodology to test the operational security of physical locations, workflow, human security testing, physical security testing, wireless security testing, telecommunication security testing, data networks security testing and compliance. OSSTMM can be supporting reference of ISO 27001 instead of a hands-on or technical application penetration testing guide.
OSSTMM includes the following key sections:
- Security Analysis
- Operational Security Metrics
- Trust Analysis
- Work Flow
- Human Security Testing
- Physical Security Testing
- Wireless Security Testing
- Telecommunications Security Testing
- Data Networks Security Testing
- Compliance Regulations
- Reporting with the STAR (Security Test Audit Report)
Open Source Security Testing Methodology Manual
References
- PCI Data Security Standard — Penetration TestingGuidance
- PTES Standard
- Open Source Security Testing Methodology Manual (OSSTMM)
- Technical Guide to Information Security Testing and Assessment NIST SP 800-115
- HIPAA Security Testing Guidance
- Penetration Testing Framework 0.59
- OWASP Mobile Security Testing Guide
- Security Testing Guidelines for Mobile Apps
- Kali Linux
- Information Supplement: Requirement 11.3 Penetration Testing