Из Википедии, бесплатной энциклопедии
  (Перенаправлено из тестирования на проникновение )
Перейти к навигации Перейти к поиску

Тест на проникновение , в просторечии известный как тест на проникновение , пентест или этический взлом , представляет собой санкционированную имитацию кибератаки на компьютерную систему, выполняемую для оценки безопасности системы; [1] [2] не следует путать с оценкой уязвимости . [3] Тест проводится для выявления слабых мест (также называемых уязвимостями), включая возможность получения неавторизованными сторонами доступа к функциям и данным системы [4] [5], а также сильные стороны [6], позволяющие полная оценка рисков должен быть завершен.

В процессе обычно определяются целевые системы и конкретная цель, затем анализируется доступная информация и используются различные средства для достижения этой цели. Целью теста на проникновение может быть белый ящик (о котором предварительная и системная информация предоставляется тестировщику заранее) или черный ящик (о котором предоставляется только основная информация - если таковая имеется - кроме названия компании). Тест «серого ящика» на проникновение - это комбинация этих двух (где аудитору предоставляются ограниченные знания о цели). [7] Тест на проникновение может помочь определить уязвимость системы для атак (и оценить, насколько она уязвима). [8] [6]

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

Национальный центр кибербезопасности Великобритании описывает тестирование на проникновение как: «Метод получения уверенности в безопасности ИТ-системы путем попытки взломать часть или всю безопасность этой системы, используя те же инструменты и методы, что и злоумышленник». [10]

Цели теста на проникновение различаются в зависимости от типа одобренной деятельности для любого конкретного взаимодействия с основной целью, направленной на обнаружение уязвимостей, которые могут быть использованы злоумышленником, и информирование клиента об этих уязвимостях вместе с рекомендуемыми стратегиями смягчения. [11]

Тесты на проникновение являются составной частью полного аудита безопасности . Например, Стандарт безопасности данных индустрии платежных карт требует регулярного тестирования на проникновение и после внесения изменений в систему. [12]

Существует несколько стандартных структур и методологий для проведения тестов на проникновение. К ним относятся Руководство по методологии тестирования безопасности с открытым исходным кодом (OSSTMM), Стандарт выполнения тестирования на проникновение (PTES), Специальная публикация NIST 800-115, Структура оценки безопасности информационных систем (ISSAF) и Руководство по тестированию OWASP .

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

История [ править ]

К середине 1960-х годов растущая популярность компьютерных систем с разделением времени, которые делали ресурсы доступными по линиям связи, породила новые проблемы с безопасностью. Как объясняют ученые Дебора Рассел и Г.Т. Гангеми-старший, «1960-е ознаменовали истинное начало эпохи компьютерной безопасности». [13] : 27

В июне 1965 года, например, несколько ведущих американских экспертов по компьютерной безопасности провели одну из первых крупных конференций по системной безопасности, организованную государственным подрядчиком, Корпорацией разработки систем (SDC). Во время конференции кто-то отметил, что одному сотруднику SDC удалось легко подорвать различные системные меры безопасности, добавленные к компьютерной системе с разделением времени AN / FSQ-32 SDC . В надежде, что дальнейшее исследование безопасности системы будет полезным, участники попросили «... провести исследования в таких областях, как нарушение защиты в системе с разделением времени». Другими словами, участники конференции инициировали один из первых официальных запросов на использование компьютерного проникновения в качестве инструмента для изучения безопасности системы. [14] : 7–8

Весной 1967 года на Объединенной компьютерной конференции многие ведущие компьютерные специалисты снова встретились, чтобы обсудить проблемы безопасности системы. Во время этой конференции эксперты по компьютерной безопасности Уиллис Уэр , Гарольд Петерсен и Рейн Терн, все из корпорации RAND , и Бернард Петерс из Агентства национальной безопасности(АНБ) все использовали фразу «проникновение» для описания атаки на компьютерную систему. В своем документе Уэр упомянул удаленно доступные военные системы с разделением времени, предупредив, что «следует предвидеть преднамеренные попытки проникновения в такие компьютерные системы». Его коллеги Петерсен и Терн разделили те же опасения, отметив, что системы онлайн-коммуникации «... уязвимы для угроз конфиденциальности», включая «преднамеренное проникновение». Бернард Петерс из АНБ высказал то же самое, настаивая на том, что компьютерный ввод и вывод «... могут предоставить большие объемы информации для проникающей программы». Во время конференции компьютерное проникновение будет официально идентифицировано как серьезная угроза для компьютерных систем онлайн. [14] : 8

Угроза, которую представляет компьютерное проникновение, была затем изложена в большом отчете, организованном Министерством обороны США (DoD) в конце 1967 года. По сути, официальные лица DoD обратились к Уиллису Уэру, чтобы возглавить рабочую группу экспертов из NSA, CIA , DoD академические круги и промышленность для формальной оценки безопасности компьютерных систем с разделением времени. Опираясь на многие документы, представленные на совместной компьютерной конференции весной 1967 года, целевая группа в значительной степени подтвердила угрозу безопасности системы, которую представляет компьютерное проникновение. Первоначально отчет Уэра был засекречен, но многие ведущие компьютерные эксперты страны быстро определили его как исчерпывающий документ по компьютерной безопасности. [14] Джеффри Р. Йост из Института Чарльза Бэббиджа.недавно охарактеризовал отчет Ware как «... безусловно, наиболее важное и тщательное исследование технических и эксплуатационных вопросов, касающихся безопасных вычислительных систем за тот период». [15] Фактически, отчет Ware подтвердил главную угрозу, которую представляет компьютерное проникновение для новых компьютерных систем с разделением времени онлайн.

Чтобы лучше понять слабые места системы, федеральное правительство и его подрядчики вскоре начали организовывать группы злоумышленников, известные как команды тигров , чтобы использовать компьютерное проникновение для проверки безопасности системы. Дебора Рассел и Г.Т. Гангеми-старший заявили, что в 1970-е годы «...« команды тигров »впервые появились на компьютерной арене. Команды тигров были спонсируемыми правительством и отраслью командами взломщиков, которые пытались сломать защиту компьютерных систем в попытка обнаружить и, в конечном итоге, исправить дыры в системе безопасности ". [13] : 29

Ведущий ученый в области истории компьютерной безопасности Дональд Маккензи также отмечает, что «RAND провела некоторые исследования проникновения (эксперименты по обходу средств контроля компьютерной безопасности) ранних систем с разделением времени от имени правительства». [16] [17] Джеффри Р. Йост из Института Чарльза Бэббиджа в своей собственной работе по истории компьютерной безопасности также признает, что и RAND Corporation, и SDC «участвовали в одном из первых так называемых« проникновений » исследования, чтобы попытаться проникнуть в системы с разделением времени, чтобы проверить их уязвимость ». [15] Практически во всех этих ранних исследованиях команды тигров успешно взламывали все целевые компьютерные системы, поскольку системы разделения времени в стране имели слабую защиту.

Из первых действий команды «тигров» усилия в RAND Corporation продемонстрировали полезность проникновения в качестве инструмента для оценки безопасности системы. В то время один аналитик RAND отметил, что тесты «... продемонстрировали практичность проникновения в систему как инструмента для оценки эффективности и адекватности реализованных мер защиты данных». Кроме того, ряд аналитиков RAND настаивали на том, что все упражнения по тестированию на проникновение дают несколько преимуществ, которые оправдывают его дальнейшее использование. Как они отметили в одной статье, «злоумышленник, кажется, развивает дьявольское настроение в своем поиске слабых мест и незавершенности операционной системы, которые трудно подражать». По этим и другим причинам[14] : 9

Предположительно ведущим экспертом по проникновению компьютеров в эти годы становления был Джеймс П. Андерсон, который работал с АНБ, RAND и другими правительственными агентствами над изучением безопасности системы. В начале 1971 года ВВС США заключили контракт с частной компанией Андерсона на изучение безопасности ее системы разделения времени в Пентагоне. В своем исследовании Андерсон выделил ряд основных факторов, влияющих на проникновение компьютеров. Андерсон описал общую последовательность атак по шагам:

  1. Найдите уязвимость, которую можно использовать.
  2. Создайте атаку вокруг него.
  3. Протестируйте атаку.
  4. Захватите используемую линию.
  5. Войдите в атаку.
  6. Воспользуйтесь записью для восстановления информации.

Со временем описание Андерсоном общих шагов проникновения в компьютер помогло многим другим экспертам по безопасности, которые полагались на этот метод для оценки безопасности компьютерных систем с разделением времени. [14] : 9

В последующие годы внедрение компьютеров как инструмент оценки безопасности стало более изощренным и изощренным. В начале 1980-х годов журналист Уильям Брод кратко резюмировал текущие усилия тигровых команд по оценке безопасности системы. Как сообщил Броуд, доклад Уиллиса Уэра, спонсируемый Министерством обороны США, «... показал, как шпионы могут активно проникать в компьютеры, красть или копировать электронные файлы и взламывать устройства, которые обычно охраняют сверхсекретную информацию. Исследование длилось более десяти лет. тихой деятельности элитных групп компьютерных ученых, работающих на правительство, которые пытались взломать чувствительные компьютеры. Они преуспевали во всех попытках ". [18]

В то время как эти различные исследования могли предположить, что компьютерная безопасность в США остается серьезной проблемой, ученый Эдвард Хант недавно сделал более широкую мысль о всестороннем исследовании проникновения компьютеров в качестве инструмента безопасности. В недавней статье по истории тестирования на проникновение Хант предполагает, что оборонное ведомство в конечном итоге «... создало многие инструменты, используемые в современной кибервойне», поскольку оно тщательно определило и исследовало множество способов, которыми компьютерные злоумышленники могут взламывать целевые системы. . [14] : 5

Инструменты [ править ]

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

Специализированные дистрибутивы ОС [ править ]

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

Известные примеры ОС для тестирования на проникновение включают:

  • BlackArch на базе Arch Linux
  • BackBox на базе Ubuntu
  • Kali Linux (заменена на BackTrack в декабре 2012 г.) на основе Debian
  • ОС Parrot Security на базе Debian
  • Pentoo на основе Gentoo
  • WHAX на основе Slackware

Многие другие специализированные операционные системы облегчают тестирование на проникновение - каждая более или менее предназначена для определенной области тестирования на проникновение.

Ряд дистрибутивов Linux содержат известные уязвимости ОС и приложений, и их можно использовать в качестве целей для отработки. Такие системы помогают начинающим специалистам по безопасности опробовать новейшие инструменты безопасности в лабораторных условиях. Примеры включают Damn Vulnerable Linux (DVL), OWASP Web Testing Environment (WTW) и Metasploitable.

Программные фреймворки [ править ]

  • BackBox
  • Hping
  • Проект Metasploit
  • Несс
  • Nmap
  • OWASP ZAP
  • СВЯТОЙ
  • w3af

Этапы тестирования на проникновение [ править ]

Процесс тестирования на проникновение можно разделить на пять этапов:

  1. Разведка: сбор важной информации о целевой системе. Эта информация может быть использована для лучшей атаки цели. Например, поисковые системы с открытым исходным кодом могут использоваться для поиска данных, которые могут быть использованы в атаке социальной инженерии .
  2. Сканирование: использует технические инструменты, чтобы злоумышленник узнал больше о системе. Например, Nmap можно использовать для поиска открытых портов.
  3. Получение доступа: используя данные, собранные на этапах разведки и сканирования, злоумышленник может использовать полезную нагрузку для эксплуатации целевой системы. Например, Metasploit можно использовать для автоматизации атак на известные уязвимости.
  4. Поддержание доступа: для поддержания доступа необходимо предпринять шаги, необходимые для того, чтобы иметь возможность постоянно находиться в целевой среде, чтобы собрать как можно больше данных.
  5. Скрытие следов: злоумышленник должен удалить все следы компрометации системы жертвы, любые типы собранных данных, события журнала, чтобы оставаться анонимным. [20]

Как только злоумышленник использует одну уязвимость, он может получить доступ к другим машинам, поэтому процесс повторяется, т.е. он ищет новые уязвимости и пытается их использовать. Этот процесс называется поворотом.

Уязвимости [ править ]

Допустимые операции, которые позволяют тестеру выполнить недопустимую операцию, включают неэкранированные команды SQL, неизмененные хешированные пароли в проектах, видимых для источника, человеческие отношения и старые функции хеширования или криптографии. Одного недостатка может быть недостаточно для критически серьезного эксплойта. Практически всегда требуется использовать несколько известных недостатков и формировать полезную нагрузку таким образом, чтобы она выглядела как допустимая операция. Metasploit предоставляет библиотеку ruby ​​для общих задач и поддерживает базу данных известных эксплойтов.

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

Представьте, что на веб-сайте есть 100 полей для ввода текста. Некоторые уязвимы для SQL-инъекцийна определенных струнах. Мы надеемся, что отправка случайных строк в эти поля на некоторое время ударит по пути ошибочного кода. Ошибка проявляется в виде сломанной HTML-страницы, наполовину обработанной из-за ошибки SQL. В этом случае только текстовые поля рассматриваются как потоки ввода. Однако программные системы имеют много возможных входных потоков, таких как файлы cookie и данные сеанса, поток загруженных файлов, каналы RPC или память. Ошибки могут произойти в любом из этих входных потоков. Цель теста - сначала получить необработанную ошибку, а затем понять недостаток на основе неудачного тестового примера. Тестировщики пишут автоматизированный инструмент, чтобы проверить свое понимание недостатка до тех пор, пока он не станет правильным. После этого может стать очевидным, как упаковать полезную нагрузку, чтобы целевая система запускала ее выполнение. Если это нежизнеспособно, можно надеяться, что очередная ошибка фаззера принесет больше плода. Использование фаззера экономит время, поскольку не проверяет адекватные пути кода, где использование эксплойтов маловероятно.

Полезная нагрузка [ править ]

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

  • Metasploit
  • Несс
  • Nmap
  • OpenVAS
  • W3af

Стандартные государственные услуги по тестированию на проникновение [ править ]

Администрация общих служб (GSA) стандартизировала службу «теста на проникновение» как предварительно проверенную службу поддержки, чтобы быстро устранять потенциальные уязвимости и останавливать злоумышленников до того, как они повлияют на федеральное правительство, правительство штата или местные органы власти США. Эти службы обычно называются высокоадаптивными службами кибербезопасности (HACS) и перечислены на веб-сайте GSA Advantage в США. [21]

В результате были определены ключевые поставщики услуг, которые прошли техническую проверку и проверку на предмет предоставления этих расширенных услуг по проникновению. Эта служба GSA предназначена для улучшения быстрого заказа и развертывания этих услуг, уменьшения дублирования государственных контрактов США, а также для более своевременной и эффективной защиты и поддержки инфраструктуры США.

132-45A Тестирование на проникновение [22] - это тестирование безопасности, при котором специалисты по оценке услуг имитируют реальные атаки, чтобы определить методы обхода функций безопасности приложения, системы или сети. Службы тестирования на проникновение HACS обычно стратегически проверяют эффективность превентивных и обнаруживающих мер безопасности, используемых для защиты активов и данных. В рамках этой услуги сертифицированные этические хакеры обычно проводят имитацию атаки на систему, системы, приложения или другую цель в среде в поисках слабых мест в системе безопасности. После тестирования они обычно документируют уязвимости и описывают, какие средства защиты эффективны, а какие могут быть побеждены или использованы.

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

См. Также [ править ]

  • IT риск
  • ITHC
  • Команда тигра
  • Белая шляпа (компьютерная безопасность)

Общие ссылки [ править ]

  • Длинный, Джонни (2011). Google Hacking for Penetration Testers , Elsevier [23]
  • Полное руководство по тестированию на проникновение [24]

Ссылки [ править ]

  1. ^ "Что такое тестирование на проникновение?" . Проверено 18 декабря 2018 .
  2. ^ «Обзор тестирования на проникновение» . Проверено 25 января 2019 .
  3. ^ "В чем разница между оценкой уязвимости и тестом на проникновение?" . Проверено 21 мая 2020 .
  4. ^ Руководство по подготовке CISSP® и CAPCM: платиновое издание . Джон Вили и сыновья. 2006-11-06. ISBN 978-0-470-00792-1. Тест на проникновение может определить, как система реагирует на атаку, можно ли взломать защиту системы и какую информацию можно получить из системы.
  5. ^ Кевин М. Генри (2012). Тестирование на проникновение: защита сетей и систем . IT Governance Ltd. ISBN 978-1-849-28371-7. Тестирование на проникновение - это имитация атаки на систему, сеть, часть оборудования или другой объект с целью доказать, насколько уязвима эта система или «цель» для реальной атаки.
  6. ^ a b Крис Томас (Space Rogue), Дэн Паттерсон (2017). Взломать пароли легко с IBM Space Rogue (видео). CBS Interactive . Событие происходит в 4: 30-5: 30 . Проверено 1 декабря 2017 года .
  7. ^ «Типы Pen Testing объяснены» . 2017-06-09 . Проверено 23 октября 2018 .
  8. ^ «Тестирование на проникновение: оценка вашей общей безопасности до того, как это сделают злоумышленники» . Институт SANS . Проверено 16 января 2014 года .
  9. ^ a b «Написание отчета о тестировании на проникновение» . Институт SANS . Проверено 12 января 2015 года .
  10. ^ «Тестирование на проникновение» . NCSC . Aug 2017 . Проверено 30 октября 2018 года .
  11. ^ Патрик Энгебретсон, Основы взлома и проникновения тестирования в архив 2017-01-04 в Wayback Machine , Elsevier, 2013
  12. ^ Алан Колдер и Герайнт Уильямс (2014). PCI DSS: Карманное руководство, 3-е издание . ISBN 978-1-84928-554-4. проверка уязвимости сети не реже одного раза в квартал и после любого значительного изменения в сети
  13. ^ a b Рассел, Дебора; Гангеми, GT (1991). Основы компьютерной безопасности . ISBN O'Reilly Media Inc. 9780937175712.
  14. ^ Б с д е е Hunt, Эдвард (2012). «Программы проникновения компьютеров правительства США и их последствия для кибервойны». IEEE Annals of the History of Computing . 34 (3): 4–21. DOI : 10.1109 / MAHC.2011.82 . S2CID 16367311 . 
  15. ^ a b Йост, Джеффри Р. (2007). де Леу, Карл; Бергстра, Ян (ред.).История стандартов компьютерной безопасности , в истории информационной безопасности: всеобъемлющий справочник . Эльзевир. С. 601–602.
  16. ^ Маккензи, Дональд; Поттинджер, Гаррель (1997). «Математика, технологии и доверие: формальная проверка, компьютерная безопасность и вооруженные силы США» . IEEE Annals of the History of Computing . 19 (3): 41–59. DOI : 10.1109 / 85.601735 .
  17. ^ Маккензи, Дональд А. (2004). Механизация доказательства: вычисления, риск и доверие . Массачусетский технологический институт . п. 156. ISBN. 978-0-262-13393-7.
  18. ^ Броуд, Уильям Дж. (25 сентября 1983 г.). "Компьютерная безопасность беспокоит военных экспертов", The New York Times
  19. ^ Faircloth, Джереми (2011). «Глава 1: Инструменты торговли» (PDF) . Набор инструментов с открытым исходным кодом для тестирования на проникновение (третье изд.). Эльзевир . ISBN  978-1597496278. Проверено 4 января 2018 .[ требуется цитата для проверки ]
  20. ^ "Обобщение пяти этапов тестирования на проникновение - Cybrary" . Cybrary . 2015-05-06 . Проверено 25 июня 2018 .
  21. ^ "Услуги GSA HACS SIN 132-45" . 1 марта 2018.
  22. ^ «Услуги по тестированию на проникновение» . 1 марта 2018.
  23. ^ Лонг, Джонни (2011). Google Взлом для тестеров на проникновение . Elsevier Science. ISBN 978-0-08-048426-6.
  24. ^ "Полное руководство по тестированию на проникновение | Core Sentinel" . Core Sentinel . Проверено 23 октября 2018 .