Инструменты и методика пентестинга

Автор работы: Пользователь скрыл имя, 18 Декабря 2012 в 12:22, реферат

Краткое описание

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

Содержание

1. Пентестинг. 3
2. Виды тестов на проникновение. 4
3. Сканеры уязвимостей. 6
4. Обзор инструментов для пентестинга. 7
• Nessus 8
• Nikto 9
• OpenVAS 9
• IBM Rationa Appscan 10
Заключение. 12
Список использованных источников информации. 13

Вложенные файлы: 1 файл

Инструменты и методы Пентестинга.docx

— 49.11 Кб (Скачать файл)

МИНИСТЕРСТВО ОБРАЗОВАНИЯ  И НАУКИ РФ

Филиал ФГБОУ ВПО «Санкт-Петербургского Государственного инженерно-экономического университета» в г. Вологда

 

 

Информационная безопасность

Реферат

На тему: «Инструменты и  методика пентестинга»

 

 

 

 

Выполнил: студент группы Про-51

Кусков И.В.

Проверил: Еременко А.П.

 

 

 

Вологда

2012

Оглавление

1. Пентестинг. 3

2. Виды тестов на проникновение. 4

3. Сканеры уязвимостей. 6

4. Обзор инструментов для пентестинга. 7

· Nessus 8

· Nikto 9

· OpenVAS 9

· IBM Rationa Appscan 10

Заключение. 12

Список  использованных источников информации. 13

 

 

 


  1. Пентестинг.

Тестирование на проникновение (жарг. Пентест) — метод оценки безопасности компьютерных систем или сетей средствами моделирования атаки злоумышленника. Процесс включает в себя активный анализ системы на наличие потенциальных уязвимостей, которые могут спровоцировать некорректную работу целевой системы, либо полный отказ в обслуживании. Анализ ведется с позиции потенциального атакующего и может включать в себя активное использование уязвимостей системы. Результатом работы является отчет, содержащий в себе все найденные уязвимости системы безопасности, а также может содержать рекомендации по их устранению. Цель испытаний на проникновение — оценить его возможность осуществления и спрогнозировать экономические потери в результате успешного осуществления атаки. Испытание на проникновение является частью аудита безопасности.[2]

В случае успешного взлома полученная техническая информация, которая и является результатом  пентеста, предоставляется специалистам, которые отвечают за безопасность объекта. Они стараются устранить пути, которыми пентестер проник в систему, исправить найденные уязвимости. Это может многократно повысить уровень обеспечения безопасности и общую надежность информационной системы за счет урезания возможностей для потенциальных злоумышленников, ведь существует огромная вероятность, что они будут вести атаку этими же методами и использовать существующие уязвимости. 
 
Тесты на проникновение часто сопоставляют с комплексным анализом защищенности, который выполняется при помощи специального программного обеспечения и может предоставить большой объем полезных данных. Пентест часто критикуют как раз за недостаточность информации и отсутствие полноты анализа, потому что все уязвимости можно и не найти, а если пентестер не смог взломать систему, не факт что её не взломает злоумышленник. И, тем не менее, тестирование на проникновение остается качественным и эффективным методом совершенствования информационной безопасности и позволяет объективно оценить уровень защищенности цели.[1]

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

  1. Виды тестов на проникновение.

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

Тесты на проникновение классифицируются в зависимости от следующих критериев:

Выбора сети, из которой  осуществляется проникновения в  систему.

Информации, предоставленной  для осуществления проникновения.

Степени осведомленности  сотрудников Заказчика о проводимом тестировании.

1.     Выбора сети, из которой осуществляется проникновения  в систему.

Тестирование может быть начато, как из внешней сети (Интернет), так и из внутренней (Интранет). В зависимости от выбора сети проникновения, выделяют:

  • Внешний тест на проникновение.

 

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

·       Внутренний тест на проникновение.

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

2.     Информация, предоставленная для осуществления  проникновения.

В зависимости от вида информации, которая передается Исполнителю, можно  выделить следующие методы проведения тестирования на проникновение:

·       Метод  «Черного ящика» (Black box test).

В данном случае моделируются действия злоумышленника, обладающего  только общедоступными сведениями о  компании (доменные имена, внешние IP-адреса).

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

·       Метод  «Белого ящика» (White box test).

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

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

3.     Степень осведомленности  сотрудников Клиента о проведении  тестирования.

 

В зависимости от того, была ли осведомлена о проведении тестирования служба информационной безопасности компании (и/или сотрудники других департаментов), можно использовать следующие методы взаимодействия с Заказчиком:

·       Black Hat.

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

·       White hat.

Метод «White hat» подразумевает оповещение сотрудников о проводимых мероприятиях. В данном случае целью теста на проникновение является исключительно проверка защищенности информационных ресурсов, не включающая анализ действий сотрудников компании.

В зависимости от потребностей Заказчика, различные виды тестирований на проникновение можно проводить  по отдельности или комбинировать  с целью получения максимально  прозрачной информации о степени  защищенности информационных ресурсов[3].

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

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

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

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

Работу сканера уязвимостей  можно разбить на 4 шага:

  1. Обычно, сканер сначала обнаруживает активные IP-адреса, открытые порты, запущенную операционную систему и приложения.
  2. Составляется отчёт о безопасности (необязательный шаг).
  3. Попытка определить уровень возможного вмешательства в операционную систему или приложения (может повлечь сбой).
  4. На заключительном этапе сканер может воспользоваться уязвимостью, вызвав сбой операционной системы или приложения.

Сканеры могут быть вредоносными или «дружественными». Последние обычно останавливаются в своих действиях на шаге 2 или 3, но никогда не доходят до шага 4.

Среди сканеров уязвимостей  можно выделить:

  • Сканер портов
  • Сканеры, исследующие топологию компьютерной сети
  • Сканеры, исследующие уязвимости сетевых сервисов
  • Сетевые черви
  • CGI-сканеры ("дружественные" — помогают найти уязвимые скрипты)

Наиболее популярным программным  обеспечением в этом вопросе являются следующие программы:

    • Nessus: Оценка уязвимостей под UNIX
    • GFI LANguard: Коммерческий сканер сетевых уязвимостей под Windows
    • Retina: Коммерческий сканер для оценки уязвимостей
    • Core Impact: Автоматизированный продукт для тестирования несанкционированных проникновений в систему
    • ISS Internet Scanner: Оценка уязвимостей на уровне приложений
    • X-scan: Сканер для исследования сетевых уязвимостей
    • Sara: Security Auditor’s Research Assistant
    • QualysGuard: Сканер уязвимостей (веб-сервис)
    • SAINT: Security Administrator’s Integrated Network Tool
    • MBSA: Microsoft Baseline Security Analyzer[2]

 

  1. Обзор инструментов для пентестинга.

У каждого пенстера есть свои предпочтения по части софта и утилит для пентеста. Рассмотрим наиболее популярные.

  • Nessus

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

Плагины - ключевая особенность  архитектуры приложения: любой тест на проникновение не зашивается наглухо  внутрь программы, а оформляется  в виде подключаемого плагина. Аддоны распределяются на 42 различных типа: чтобы провести пентест, можно активировать как отдельные плагины, так и все плагины определенного типа - например, для выполнения всех локальных проверок на Ubuntu-системе. Причем никто не ограничивает тебя в написании собственных тестов на проникновения: для этого в Nessus был реализован специальный скриптовый язык - NASL (Nessus Attack Scripting Language), который позже позаимствовали и другие утилиты.

Еще большей гибкости разработчики добились, отделив серверную часть  сканера, выполняющего все действия, от клиентской программы, представляющей собой не более чем графический  интерфейс. В последней 4.2 версии демон  на 8834 порту открывает веб-сервер; с ним можно управлять сканером через удобный интерфейс на Flash'е, имея один лишь браузер. После установки сканера серверная запускается автоматически, как только укажешь ключ для активации: ты бесплатно можешь запросить его на домашнем сайте Nessus. Правда, для входа, и локального, и удаленного, понадобится предварительно создать пользователя: в винде это делается в два клика мыши через GUI-админку Nesus Server Manager, с ее же помощью можно запускать и останавливать сервер.

Любой тест на проникновение  начинается с создания так называемых Policies - правил, которых сканер будет придерживаться во время сканирования. Здесь-то и выбираются виды сканирования портов (TCP Scan, UDP Scan, Syn Scan и т.д.), количество одновременных подключений, а также типичные чисто для Nessus опции, как, например, Safe Checks. Последняя включает безопасное сканирование, деактивируя плагины, которые могут нанести вред сканируемой системе. Важный шаг в создании правил - это подключение нужных плагинов: можно активизировать целые группы, скажем, Default Unix Accounts, DNS, CISCO, Slackware Local Security Checks, Windows и т.д. Выбор возможных атак и проверок - огромный! Отличительная черта Nessus - умные плагины. Сканер никогда не будет сканировать сервис только по номеру его порта. Переместив веб-сервер со стандартного 80-го порта, скажем, на 1234-й, обмануть Nessus не удастся - он это определит. Если на FTP-сервере отключен анонимный пользователь, а часть плагинов используют его для проверки, то сканер не будет их запускать, заведомо зная, что толку от них не будет. Если плагин эксплуатирует уязвимость в Postfix'е, Nessus не будет пытать счастья, пробуя тесты против sendmail'а - и т.д. Понятно, что для выполнения проверок на локальной системе, необходимо предоставить сканеру Credentials (логины и пароли для доступа) - это завершающая часть настройки правил[5].

Информация о работе Инструменты и методика пентестинга