Курс Ultimate Kali Linux — #6 Изучение необходимости тестирования на проникновение и его этапов.
Здравствуйте, дорогие друзья.
Каждый день специалисты по кибербезопасности соревнуются с субъектами угроз в обнаружении уязвимостей в системах и сетях. Представьте, что злоумышленник может воспользоваться уязвимостью в системе до того, как специалист по кибербезопасности сможет ее обнаружить, и внедрить меры безопасности для смягчения угрозы. Злоумышленник скомпрометировал бы систему. Это позволит специалисту по кибербезопасности реализовать стратегии реагирования на инциденты (IR) и планы по восстановлению скомпрометированной системы обратно в приемлемое рабочее состояние.
Организации осознают необходимость нанимать хакеров в белой шляпе, таких как тестеры на проникновение, которые обладают навыками моделирования реальных кибератак на системы и сети организации с целью обнаружения и использования скрытых уязвимостей. Эти методы позволяют тестировщику на проникновение выполнять те же типы атак, что и реальному хакеру; разница в том, что тестер на проникновение нанят организацией и ему предоставлено юридическое разрешение на проведение такого интрузивного тестирования безопасности.
Важная заметка
Тестеры на проникновение обычно хорошо разбираются в компьютерах, операционных системах, сетях и программировании, а также в том, как они работают вместе. Самое главное, вам нужен творческий подход. Креативное мышление позволяет человеку мыслить нестандартно, выходить за рамки предполагаемого использования технологий и находить новые захватывающие способы их реализации.
По окончании теста на проникновение заинтересованным сторонам организации предоставляется отчет с подробным описанием всех результатов, таких как уязвимости и способы использования каждой из них. Отчет также содержит рекомендации о том, как смягчить и предотвратить возможную кибератаку на каждую обнаруженную уязвимость. Это позволяет организации понять, что обнаружит хакер, если она станет целью, и как реализовать контрмеры, чтобы снизить риск кибератаки. Некоторые организации даже проводят второй тест на проникновение после выполнения рекомендаций, изложенных в отчете о тесте на проникновение, чтобы определить, устранены ли все уязвимости и снижен ли риск.
Создание плана при тестировании на проникновение
Хотя тестирование на проникновение интересно, мы не можем атаковать цель без плана боя. Планирование гарантирует, что тестирование на проникновение следует последовательному порядку шагов для достижения желаемого результата, а именно выявления и использования уязвимостей. На каждом этапе обрисовывается и описывается, что необходимо, прежде чем переходить к следующим шагам. Это гарантирует, что все подробности о работе и цели будут собраны эффективно, а тестер на проникновение будет иметь четкое представление о предстоящей задаче.
Ниже приведены различные этапы тестирования на проникновение:
Как показано на предыдущей диаграмме, тестирование на проникновение обычно состоит из этапов предварительного взаимодействия, сбора информации, моделирования угроз, анализа уязвимостей, эксплуатации, последующей эксплуатации, и написания отчета. Каждый из этих этапов будет рассмотрен более подробно в следующих разделах.
Предварительная подготовка
На этапе предварительного взаимодействия отбирается ключевой персонал. Эти люди играют ключевую роль в предоставлении информации, координации ресурсов и помощи тестерам на проникновение в понимании масштабов, широты и правил участия в оценке.
На этом этапе также рассматриваются юридические требования, которые обычно включают Соглашение о неразглашении информации (NDA) и Соглашение о консультационных услугах (CSA). Ниже приводится типичный обзор процесса того, что требуется перед фактическим тестированием на проникновение:
NDA — это юридическое соглашение, в котором указано, что тестер на проникновение и его работодатель не будут передавать или хранить какую-либо конфиденциальную или конфиденциальную информацию, обнаруженную во время оценки. Компании обычно подписывают эти соглашения с организациями, занимающимися кибербезопасностью, которые, в свою очередь, подписывают их с сотрудниками, работающими над проектом. В некоторых случаях компании подписывают эти соглашения напрямую с тестировщиками на проникновение из компании, выполняющей проект.
Объем теста на проникновение, также известный как правила взаимодействия, определяет системы, которые тестер на проникновение может и не может взломать. Это обеспечивает проникновение для тестера, остается в пределах правовых границ. Это взаимное соглашение между клиентом (организацией) и тестером на проникновение и их работодателем. Он также определяет конфиденциальные системы и их IP-адреса, а также время тестирования и то, какие системы требуют специальных параметров тестирования. Для тестировщиков на проникновение невероятно важно уделять пристальное внимание объему теста на проникновение и месту, где они проводят тестирование, чтобы всегда оставаться в рамках ограничений тестирования.
Ниже приведены некоторые примеры вопросов перед взаимодействием, которые помогут вам определить объем теста на проникновение:
- Каков размер/класс вашей внешней сети? (тестирование на проникновение в сеть)
- Каков размер/класс вашей внутренней сети? (тестирование на проникновение в сеть)
- Какова цель и цель теста на проникновение? (Применимо к любой форме тестирования на проникновение)
- Сколько страниц имеет веб-приложение? (тестирование на проникновение веб-приложений)
- Сколько пользовательских входных данных или форм имеет веб-приложение?
Это не обширный список вопросов перед взаимодействием, и все соглашения следует тщательно продумать, чтобы убедиться, что вы задаете все важные вопросы, чтобы не преуменьшать объем и не занижать цену взаимодействия.
Теперь, когда мы поняли этапы юридического ограничения тестирования на проникновение, давайте перейдем к этапу сбора информации и его важности.
Сбор информации
Тестирование на проникновение включает сбор информации, который имеет жизненно важное значение для обеспечения доступа тестировщиков на проникновение к ключевой информации, которая поможет им в проведении оценки. Опытные профессионалы обычно проводят день или два, проводя обширную разведку цели. Чем больше знаний о цели известно, тем легче специалисту по тестированию на проникновение определить поверхность атаки, например, точки входа в системы и сети цели. Кроме того, этот этап также помогает тестировщику на проникновение для идентификации сотрудников, инфраструктуры, геолокации для физического доступа, сведений о сети, серверов и другой ценной информации о целевой организации.
Понимание цели очень важно для тестера на проникновение перед любой атакой, поскольку оно помогает создать профиль потенциальной цели. Например, восстановление учетных данных пользователей/учетных записей для входа на этом этапе будет иметь жизненно важное значение для последующих этапов тестирования на проникновение, поскольку это поможет нам получить доступ к уязвимым системам и сетям. Далее мы обсудим основы моделирования угроз.
Моделирование угроз
Моделирование угроз — это процесс, используемый, чтобы помочь тестерам на проникновение и защитникам сетевой безопасности лучше понять угрозы, которые послужили причиной проведения оценки, или угрозы, которым приложение или сеть наиболее подвержены. Эти данные затем используются, чтобы помочь тестерам на проникновение моделировать, оценивать и устранять наиболее распространенные угрозы, с которыми сталкивается организация, сеть или приложение.
Ниже приведены некоторые структуры моделирования угроз:
- Подмена, фальсификация, отказ от прав, раскрытие информации, отказ в доступе к серверу и Повышение привилегий (STRIDE)
- Процесс моделирования атак и анализа угроз (PASTA)
Поняв, с какими угрозами сталкивается организация, следующим шагом будет проведение оценки уязвимости активов для дальнейшего определения рейтинга и серьезности риска.
Анализ уязвимостей
Анализ уязвимостей обычно предполагает, что оценщики или тестеры на проникновение выполняют сканирование уязвимостей или сети/портов, чтобы лучше понять, какие службы находятся в сети или приложения, работающие в системе, и есть ли какие-либо уязвимости в каких-либо системах, включенных в объем оценки. Этот процесс часто включает обнаружение и тестирование уязвимостей вручную, что часто является наиболее точной формой анализа или оценки уязвимостей.
Существует множество инструментов, как бесплатных, так и платных, которые помогут нам быстро выявить уязвимости в целевой системе или сети. После обнаружения слабых мест безопасности следующим этапом является попытка эксплуатации.
Эксплуатация
Эксплуатация является наиболее часто игнорируемой или упускаемой из виду частью тестирования на проникновение, и реальность такова, что клиенты и руководители не заботятся об уязвимостях, если только они понимают, почему они важны для них. Эксплуатация — это боеприпасы или доказательства, которые помогают объяснить, почему уязвимость важна, и иллюстрируют влияние, которое уязвимость может оказать на организацию. Более того, без эксплуатации оценка не является тестом на проникновение и представляет собой не что иное, как оценку уязвимости, которую большинство компаний могут провести собственными силами лучше, чем сторонний консультант.
Проще говоря, на этапе сбора информации тестер на проникновение будет профилировать цель и выявлять любые уязвимости. Далее, используя информацию об уязвимостях, тестер на проникновение проведет исследование и создаст конкретные эксплойты, которые воспользуются уязвимостями цели — это и есть эксплуатация. Мы используем эксплойты (вредоносный код), чтобы использовать уязвимость (слабость) в системе, которая позволит нам выполнять произвольный код и команды на цели.
Часто после успешного взлома целевой системы или сети мы можем думать, что задача выполнена, но это еще не так. Есть задачи и цели, которые необходимо выполнить после взлома системы. Это этап тестирования на проникновение после эксплуатации.
Постэксплуатация
Эксплуатация — это процесс получения доступа к системам, которые могут содержать конфиденциальную информацию. Процесс постэксплуатации является продолжением этого этапа, на котором полученная точка опоры используется для доступа к данным или их распространения на другие системы с помощью методов горизонтального перемещения внутри целевой сети. Во время пост-эксплуатации основная цель обычно состоит в том, чтобы продемонстрировать влияние, которое уязвимость и полученный доступ могут оказать на организацию. Это воздействие помогает высшему руководству лучше понять уязвимости и ущерб, который они могут нанести организации в случае реальной кибератаки.
Написание отчета
Написание отчета — это один из наиболее важных элементов любого теста на проникновение. Тестирование на проникновение может быть услугой, но написание отчета — это результат, который видит клиент, и единственный ощутимый элемент, предоставляемый клиенту в конце оценки. Отчетам следует уделять столько же внимания и заботы, сколько и тестированию.
Написание отчета предполагает гораздо больше, чем просто перечисление нескольких уязвимостей, обнаруженных в ходе оценки. Это средство, с помощью которого Вы сообщаете о рисках и влиянии на бизнес, обобщаете свои выводы и включаете шаги по исправлению ситуации. Хороший тестер на проникновение должен быть хорошим составителем отчета, иначе обнаруженные им проблемы будут потеряны и никогда не будут поняты клиентом, который нанял их для проведения оценки.
Заполнив этот раздел, вы теперь сможете описать каждый этап теста на проникновение и получить лучшее представление об ожиданиях тестеров на проникновение в отрасли.
Далее мы углубимся в понимание различных подходов к тестированию на проникновение.
На этом все. Всем хорошего дня!