0Pricing
Cloud & IT Cert Prep · Урок

Сканирование уязвимостей и тестирование на проникновение

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

«Сканирование уязвимостей и тестирование на проникновение» — бесплатный урок Cloud & IT Cert Prep на CoddyKit. Это урок 1 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Cloud & IT Cert Prep, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Cloud & IT Cert Prep содержит 4 уроков всего.

Проактивная безопасность: поиск недостатков прежде всего

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

Определение сканирования уязвимостей

Сканирование уязвимостей — это автоматизированный процесс, который проверяет системы по базе известных уязвимостей. Сканеры сравнивают номера версий, параметры конфигурации и сигнатуры программного обеспечения с базами данных CVE и рекомендациями поставщиков, чтобы выявить потенциальные слабые места. Сканирование обычно является неинвазивным: оно определяет, что уязвимость, вероятно, существует, основываясь на версии или конфигурации, но, как правило, не пытается ее эксплуатировать. Сканирование можно выполнять регулярно (ежедневно, еженедельно или непрерывно) и в большом масштабе — на тысячах систем. Оно является требованием соответствия стандарту PCI-DSS (ежеквартальное внешнее сканирование с помощью ASV) и многим другим фреймворкам.

# Vulnerability scan types:
# Credentialed (authenticated): logs into system, checks installed
#   packages, registry, configurations -- more accurate
# Uncredentialed (unauthenticated): probes from outside,
#   checks network-visible services -- more false positives

# Scanning frequency recommendations:
# Internal: weekly (or continuous)
# External: monthly + after significant changes
# PCI-DSS: quarterly external by ASV + internal after changes
# HIPAA: periodic (frequency by risk assessment)

Определение тестирования на проникновение

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

Правила взаимодействия и авторизация

Тестирование на проникновение без разрешения незаконно — оно представляет собой несанкционированный доступ в соответствии с такими законами, как CFAA (Computer Fraud and Abuse Act) в US. До начала любого пен-тестирования необходимо подписать документ Rules of Engagement (RoE), в котором определяются: область охвата (какие системы, диапазоны IP, домены), временное окно (рабочие или нерабочие часы), запрещённые действия (никаких физических атак и DoS против производственных систем), экстренные контакты и подписи уполномоченных лиц. Письма о гарантии неприкосновенности, которые команда пен-тестирования носит с собой, подтверждают наличие разрешения, если её обнаружат сотрудники службы безопасности. Никогда не начинайте тестирование без полного письменного разрешения.

# Rules of Engagement - key elements:
# 1. Authorized systems (IP ranges, domains, applications)
# 2. Exclusions (do NOT test: 10.0.1.100 - CEO's laptop)
# 3. Time window: Mon-Fri 9pm-5am only
# 4. Allowed techniques: no DoS, no physical
# 5. Emergency stop: call John at +1-555-0100
# 6. Reporting requirements and classification
# 7. Signatures: CISO + legal counsel + pen test lead
# 8. Duration: June 1 - June 15

Виды тестирования на проникновение по уровню знаний

Пен-тесты классифицируются по объёму информации, которой располагает специалист о цели. При тестировании типа Black box предварительная информация отсутствует — специалист начинает работу так же, как внешний атакующий, используя OSINT и сканирование для обнаружения целей. Это наиболее реалистичный вариант, но при нём можно не выявить внутренние уязвимости. При тестировании типа White box предоставляется полная информация: схемы сети, исходный код и учётные данные, что позволяет провести тщательную, но менее реалистичную проверку. При тестировании типа Gray box предоставляется частичная информация (например, учётная запись обычного пользователя), что соответствует сценарию скомпрометированного инсайдера или украденных учётных данных. Большинство реальных мероприятий относятся к типу Gray box или Black box.

# Test knowledge types:
# Black box:
#   Tester knows: target organization name and scope
#   Simulates: external attacker with no prior knowledge

# Gray box:
#   Tester knows: some network info, may have user credentials
#   Simulates: insider threat or compromised employee account

# White box:
#   Tester knows: full network maps, source code, all credentials
#   Simulates: insider admin or code review
#   Best for: thorough coverage of all attack surfaces

Внутреннее и внешнее тестирование

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

Ложноположительные и ложноотрицательные результаты сканирования

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

# False positive/negative scenarios:

# False Positive:
# Scanner reports OpenSSL 1.0.2g as vulnerable to Heartbleed
# But: this OS distribution backported the fix to 1.0.2g
# Fix: validate with credentialed scan or manual verification

# False Negative:
# Scanner misses SQL injection in custom web application
# Because: scanner tests generic payloads, not app-specific logic
# Fix: supplement with DAST web app scanning or manual pen test

# Credentialed scan reduces both error types significantly

Непрерывное управление уязвимостями

Современные программы безопасности рассматривают управление уязвимостями как непрерывный процесс, а не как периодическое мероприятие. Непрерывное сканирование обнаруживает новые уязвимости по мере их появления (а также по мере публикации новых CVE), не дожидаясь следующего запланированного окна сканирования. Жизненный цикл управления уязвимостями включает следующие этапы: обнаружение, приоритизация (по оценке CVSS и с учётом бизнес-контекста), устранение (установка исправления, настройка или принятие риска), проверка (повторное сканирование для подтверждения исправления) и составление отчёта. Интеграция с управлением исправлениями гарантирует, что обнаруженные уязвимости запускают автоматизированные процессы развёртывания исправлений. SLA определяют, как быстро необходимо устранять уязвимости разной степени серьёзности (например, Critical: 24 часа, High: 7 дней).

# Vulnerability remediation SLA examples:
# Critical (CVSS 9.0-10.0): patch within 24-48 hours
# High     (CVSS 7.0-8.9):  patch within 7 days
# Medium   (CVSS 4.0-6.9):  patch within 30 days
# Low      (CVSS 0.1-3.9):  patch within 90 days

# Exceptions process:
# If patch cannot be applied within SLA:
# -> document compensating control
# -> manager + CISO approval
# -> risk acceptance with expiration date

Результаты и отчётность по тестированию на проникновение

Тестирование на проникновение завершается подробным отчётом, который является основным результатом работы. Обычно отчёт включает: резюме для руководства без технических знаний (общая оценка риска, влияние на бизнес, ключевые находки); раздел с техническими находками (подробные описания уязвимостей, снимки экрана с доказательствами и шаги воспроизведения); а также план устранения проблем с рекомендациями, расставленными по приоритету. Обычно находкам присваивается уровень риска (Critical/High/Medium/Low) с использованием оценок CVSS и бизнес-контекста. Качественный отчёт о пен-тестировании позволяет заказчику воспроизвести и проверить каждую находку, а также точно понять, какое устранение требуется.

# Pen test report structure:
# 1. Executive Summary
#    - Overall risk rating
#    - Key business risks identified
#    - High-level recommendations
# 2. Scope and Methodology
# 3. Technical Findings (per vulnerability):
#    - Title and severity rating
#    - Description
#    - Evidence (screenshots, output)
#    - Steps to reproduce
#    - Business impact
#    - Remediation recommendation
# 4. Appendices: tool output, timestamps

Программы вознаграждений за поиск уязвимостей

Программы вознаграждений за поиск уязвимостей платят внешним исследователям безопасности за обнаружение уязвимостей в системах организации и ответственное сообщение о них. Такие платформы, как HackerOne, Bugcrowd и Intigriti, связывают организации с тысячами исследователей безопасности по всему миру. Программы вознаграждений обеспечивают непрерывное внешнее тестирование в большом масштабе, причём оплата производится только за подтверждённые находки. Они дополняют внутреннее пен-тестирование, предоставляя разные взгляды исследователей и постоянное тестирование между официальными проверками. За находки уровня Critical обычно выплачивается от 500 до 50 000 долларов и более в зависимости от серьёзности и условий программы. Организации определяют область охвата и правила аналогично Rules of Engagement при пен-тестировании.

Сравнение сканирования и тестирования на проникновение

Для экзамена Security+ важно чётко понимать ключевые различия. Сканирование уязвимостей: автоматизированное, неразрушающее, с широким охватом; выявляет потенциальные уязвимости, но не подтверждает возможность их эксплуатации; проводится часто или непрерывно, обычно штатными сотрудниками. Тестирование на проникновение: ручное (или полуавтоматизированное), может нарушать работу систем, обеспечивает глубокую целевую проверку, подтверждает фактическую возможность эксплуатации и последствия в реальных условиях; проводится периодически (ежеквартально или ежегодно) и обычно требует специализированной внешней экспертизы и официального разрешения. Эти методы дополняют друг друга: сканирование обеспечивает широту, а пен-тестирование — глубину. Зрелая программа безопасности регулярно использует оба метода.

Быстрая проверка

Проверьте своё понимание концепций CompTIA Security+ (SY0-701), рассмотренных в этом уроке.

Итоги урока

В этом уроке Вы узнали, что сканирование уязвимостей является автоматизированным, частым и неинвазивным: оно выявляет потенциальные уязвимости, не эксплуатируя их, тогда как тестирование на проникновение является ручным, целевым и активно эксплуатирует уязвимости, чтобы доказать реальные последствия и пути атаки. Оба вида проверки требуют надлежащего разрешения, оформленного документами Rules of Engagement, а сканирование с учётными данными значительно сокращает число ложноположительных и ложноотрицательных результатов по сравнению со сканированием без аутентификации. Далее мы рассмотрим распространённые инструменты сканирования, включая Nessus, OpenVAS и Nmap.

Часто задаваемые вопросы

Урок «Сканирование уязвимостей и тестирование на проникновение» бесплатный?

Да — полный текст урока «Сканирование уязвимостей и тестирование на проникновение» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Cloud & IT Cert Prep, подпишись на CoddyKit PRO. Курс Cloud & IT Cert Prep содержит 4 уроков всего.

Чему я научусь в уроке «Сканирование уязвимостей и тестирование на проникновение»?

Разберитесь в ключевых различиях между автоматическим сканированием (неинвазивным и выполняемым по расписанию) и ручным тестированием на проникновение (ориентированным на цель и часто более разрушите… Ты практикуешь Cloud & IT Cert Prep с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Cloud & IT Cert Prep?

Предыдущий опыт не требуется. Cloud & IT Cert Prep на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 1 из 4.

Сколько времени занимает урок «Сканирование уязвимостей и тестирование на проникновение»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Cloud & IT Cert Prep?

Да. Каждый урок Cloud & IT Cert Prep включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Сканирование уязвимостей и тестирование на проникновение
  2. Распространённые инструменты сканирования: Nessus, OpenVAS, Nmap
  3. Этапы тестирования на проникновение: от разведки до отчёта
  4. Оценка CVSS и приоритизация уязвимостей
← Назад к Cloud & IT Cert Prep