fbpx

Тестирования на проникновение или этичный хакинг. Что отличает хакера от пентестера?

На профильных ресурсах по информационной безопасности часто можно встретить словосочетания «Этичный хакинг» (от англ. Ethical Hacking). В данном контексте слово «хакер» не является чем-то незаконным. Сегодня под «этичным хакингом» чаще всего понимают процедуру «пентеста» или «тестирования на проникновение», хотя это не совсем одинаковые понятия.

 

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

 

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

 

И слово «этичный» в данном контексте можно определить, как работу с высокой профессиональной моралью и принципами. Надежность – это главный принцип «этичного пентеста».

 

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

 

Некоторые методики по тестированию на проникновение (OSSTMM, PTES) предлагают обязательства (rules of engagement), которые необходимо выполнять специалистам при анализе защищенности. Данные этические правила можно сформулировать следующим образом:

  • Не разглашать конфиденциальную информацию и документы, полученные в ходе тестирования на проникновение.
  • Не разглашать результаты тестирования – это информация доступна только заказчику тестирования. При проведении такого рода работ всегда должно подписываться договор о неразглашении (NDA).
  • Информировать клиентов о возможных рисках тестирования на проникновения.
  • Использовать тесты, не нарушающих работоспособность исследуемой системы. Отказ или сбой может привести к простою и операционным потерям. Тестирование не проводится для нестабильных систем, пока не создана надежная инфраструктура по резервированию.
  • Незамедлительно информировать заказчика о найденных критических уязвимостях, для которых существуют известные способы эксплуатации или высока вероятностью эксплуатации до окончания пентеста. К примеру, если уязвимость может повлечь неконтролируемый/неотслеживаемый доступ к ресурсам информационной системы.
  • Тесты с участием людей (социальная инженерия) должны проводится только на заранее сформированной фокус-группе, в которую не должны входить клиенты, партнеры, частные лица.
  • Эксперт должен уважать и обеспечивать безопасность любых сведений, касающихся личной жизни как внутри, так и за пределами сферы деятельности, если доступ к такой информации был получен (например, из-за того, что пользователь хранил личные данные на рабочих компьютерах).
  • Полученные сведения о сотрудниках сообщаются заказчику только через неидентифицируемые и статистические данные. Требование распространяется и на отчет по социальной инженерии, т.к. это может нанести вред сотрудникам. К примеру, если кто-то из членов фокус-группы стал жертвой тестов с использованием методов социальной инженерии.
  • Инструменты применяемые в процессе тестирования на проникновение необходимо проверять в изолированной лаборатории до использования «в производстве». Аналитик должен быть в уверен в происхождении применяемого инструментария и его корректности.
  • Не продавать или передавать инструментарий и наработки для анализа защищённости третьим лицам.
  • Отчет об выявленных уязвимостях не может быть использован для коммерческой выгоды за пределами взаимодействия с клиентом.

 

Хорошим тоном для компаний, оказывающих данные услуги, являются:

  • Договор, оговаривающий ограничения тестируемых компонентов. Что и как может быть протестировано? Допускаются ли атаки с отказом в обслуживании (DoS/DDoS)? Используются ли методы социальной инженерии?
  • Любые изменения в плане тестирования должны согласовываться.
  • Договор должен содержать контактные данные лиц для экстренной связи.
  • Необходимо согласовывать сроки и время проведения тестирования. К примеру, ряд тестов разрешается выполнять в нерабочее для заказчика время.
  • Исполнитель не разглашает названия или иные сведения о предыдущих или действующих клиентах.
  • Рекомендации и предлагаемые решения по исправлению выявленных уязвимостей – это часть отчета. В отчете следует упомянуть все выявленные аномалии, а также неудачные (неработающие) меры безопасности.

 

Но что было бы, если бы специалист по пентесту пренебрёг данными принципами? И что его отличает от хакера в плохом смысле этого слова? Вот несколько страшилок из реальной жизни:

  • При сканировании внешнего периметра был найден хост под управлением Windows Server 2012 с включенной службой RDP. Перебор логинов и паролей не дал результатов. Стоит ли извещать заказчика о критичной уязвимости? Публично доступный сервис удаленных рабочих столов – сама по себе серьезная проблема, но она часто встречается в организациях. Но вчера еще не критичный сервис, вследствие отсутствия патча на новую уязвимость CVE-2019-0708/1181/1182 (BlueKeep, BlueKeep-2) может привести к повторению эпидемии шифровальщиков, вроде WannaCry.
  • И второй случай, связанный с возможностью заражения шифровальщиком. В результате тестов с использованием социальной инженерии несколько сотрудников из фокус-группы запустили файл, прикрепленный к письму электронной почты. В случае тестирования на проникновения исследователи лишь зафиксируют факт запуска, т.к. данный файл больше ничего не делает кроме подачи сигнала. Но некоторые письма могут содержать настоящее вредоносное вложение, например, шифровальщик. Потенциальному злоумышленнику не важно кого заражать – ему главное заразить наибольшее число рабочих мест, и кто-нибудь обязательно переведет деньги за расшифровку данных. И одна из причин, почему ФИО сотрудников не следует включать в отчет – работодатель может вынудить уволиться провинившегося сотрудника. Ведь именно из-за него могли бы заразить шифровальщиком всех! А на самом деле данный случай характеризует не проблему тяги сотрудника ко всему неизвестному, а проблему в работе службы безопасности и её вовлеченностью в обучение персонала по вопросам защиты информации.
  • В процессе тестирования на проникновения внешних ресурсов было выявлено, что на пограничных маршрутизаторах и межсетевых экранах включен протокол SNMP, а строки на подключение к оборудованию «Community String» оставлены по-умолчанию (т.е. заводские). Почти все производители выкладывают MIB-базы для работы с оборудованием по протоколу SNMP. Но разница между специалистом по пентесту и хакером будет в том, что первый проверит, можно ли изменить некритичное поле «Название оборудование», а второй попробует изменить «IP-адреса сетевых интерфейсов» или записи ACL. Такие действия злоумышленника либо вызовут неработоспособность какого-либо сегмента сети, либо он получит полный доступ к сети организации, к примеру, настроив GRE-тоннель. И не факт, что служба защиты информации заметит изменение настроек.
  • Аналогично, при исследовании сайта в одной из форм была выявлена XSS-уязвимость, а параметр httpOnly не выставляется web-сервером при назначении Cookies. Специалисту, выполняющему пентест, достаточно факта, что он может внедрить тестовый фрагмент на Web-страницу. Но злоумышленник может просто похитить Cookies (сессии) авторизовавшихся пользователей. В результате он сможет зайти и работать на сайте от имени пользователей, чьи сессии он перехватил.
  • Часто при разработке Web-порталов (да и многих других продуктов) версии программного обеспечения фиксируются и затем не обновляются (зачастую, это и не всегда возможно из-за изменений в том же API). Пользователя не волнует, как и на чём работает сайт – главное, чтобы он работал и был доступен. Владельца тоже будет всё устраивать, пока он обеспечивает поставленные задачи. Но при анализе Web-сайтов часто выявляются устаревшие версии JS-фреймворков. Так, в одном из популярных JS-фреймворков была найдена уязвимость, позволяющая загружать на сайт файлы. В случае тестирования на проникновения – достаточно показать возможность выполнения данных действий, ничего не нарушив. Например, добавить скрытую страницу на сайт. Но злоумышленник может банально «дефейснуть» сайт, заменив главную страницу Web-сайта или ее элементы другой страницей. Вряд ли кому-нибудь понравится, если вдруг на сайте появится противоправная информация.

 

Специалист по тестированию на проникновение, в отличие от злоумышленников, не преследует цель нарушить работоспособность сервисов или похитить конфиденциальную информацию. Его цель – обнаружить уязвимость, показать способы ее эксплуатации и возможные последствия для владельца, а также предложить способы исправления выявленных проблем!

 

Соблюдение специалистом «этики пентеста» – это его репутация! И как говорят – «Working ethically!»

 


 

Специалисты компания Инжиниринговый центр РЕГИОНАЛЬНЫЕ СИСТЕМЫ обладают большим ПРАКТИЧЕСКИМ опытом проведения тестов на проникновение. Наши наработанные методики уже доказали свою эффективность предотвратив более 80 киберинцидентов и сэкономив заказчикам более 150 000 000 рублей.  

ЗАКАЗАТЬ ПЕНТЕСТ

 

 

Материалы по теме:

Назад