Учебное пособие по тестированию на проникновение в Kali Linux: пошаговый процесс
В этом году Kali Linux исполняется 10 лет, и чтобы отпраздновать это событие, дистрибутив Linux для тестирования на проникновение добавил средства защиты в свой арсенал инструментов безопасности с открытым исходным кодом.
Ещё неизвестно, сделает ли Kali Purple для защитных инструментов то, что Kali Linux сделала для пентеста с открытым исходным кодом, но добавление более 100 инструментов для SIEM , реагирования на инциденты , обнаружения вторжений и многого другого должно поднять профиль из этих защитных инструментов.
На данный момент Kali в первую очередь известна своими примерно 600 инструментами для пентестинга с открытым исходным кодом, что позволяет пентестерам легко устанавливать полный спектр наступательных инструментов безопасности.
В этой статье мы сосредоточимся в первую очередь на том, как использовать эту мощную ОС для проведения пентеста и избежать ошибок. Мы дадим вам обзор того, чего можно достичь с помощью Kali Linux, используя краткий набор предустановленных инструментов. Хотя это руководство служит введением в общие этапы пентестинга с практическими примерами, демонстрирующими передовой опыт, оно не заменяет полную профессиональную методологию пентестинга.
Kali Linux — популярный дистрибутив для пентестинга, поддерживаемый Offensive Security (OffSec), частной охранной компанией с 15-летней историей. Kali содержит сканеры, снифферы и многие другие инструменты для атак.
ОС может обеспечить полный сеанс пентеста или более конкретные атаки. Несмотря на то, что существует множество других дистрибутивов для пентестинга, Kali является лучшим, рекомендованным профессионалами.
Действительно, большинство предустановленных пакетов доступны как отдельные пакеты, но Kali включает и поддерживает высококачественные решения, предназначенные для профессионального использования.
Идея операционной системы состоит в том, чтобы иметь всеобъемлющий набор инструментов, который относительно легко обновлять, следуя лучшим стандартам в отрасли.
Kali создан только для пентестинга. Вот почему вы не захотите устанавливать его в качестве основной ОС, если только ваша машина не предназначена для пентестинга или это виртуальная машина.
Kali 2023.1 представляет новую версию ядра и восемь новых пакетов, включая CyberChef , который является довольно удобным интерфейсом для расшифровки и декодирования различных строк и хэшей с точностью и детализацией.
Новые важные изменения Python (3.11.2) ожидаются в предстоящем стабильном выпуске Debian, что вызывает некоторые проблемы с PIP, менеджером пакетов для Python. Команда Kali говорит, что это повлияет на все дистрибутивы на основе Debian, включая Kali, поэтому они сделали временное исправление, чтобы смягчить проблему.
Команда Kali также предупредила, что на все дистрибутивы Linux может повлиять ошибка с драйверами Nvidia и некоторыми конкретными моделями графических процессоров. Затронутые устройства могут работать медленно или зависать. В таких случаях вы мало что можете сделать, кроме как удалить драйверы Nvidia и дождаться исправления.
Другим важным дополнением в этом выпуске является Purple Edition для обеспечения безопасности, о котором мы расскажем ниже.
Также стоит упомянуть изменения в рабочем столе Xfce и добавление плазменного рабочего стола KDE. Пользователям Kali также понравятся новые обои, экраны загрузки и входа в систему.
Вы можете просмотреть полный журнал изменений , чтобы получить все подробности об этом выпуске.
Kali доступен для всех. Это бесплатный дистрибутив с открытым исходным кодом, так что каждый может скачать его. Это хорошая идея, чтобы попробовать что-то самостоятельно, а затем прочитать документацию или учебные пособия.
Тем не менее, хорошее ли это место для новичков, чтобы начать? Хотя Kali удобен для начинающих, профессиональное пентестирование — это не то, где вы можете импровизировать. Чтобы быть эффективным, необходимы знания и планирование.
Вот некоторые требования для того, чтобы стать хорошим пентестером:
- Владение основами пентестинга: юридические аспекты, области применения, основные этапы (такие как пассивная разведка, обнаружение сети, перечисление, повышение привилегий), пост-эксплуатация и постоянство.
- Владение сетевыми уровнями (модель OSI, IP, подсети и т. д.)
- Владение системами Windows и Linux
- Знание Python и некоторых языков программирования (например, Go, C, C++, Ruby); на мой взгляд, это необязательно, но некоторые специалисты по безопасности могут сказать иначе
Некоторые люди учатся быстрее, чем другие, но существует огромное количество инструментов и концепций, которые нужно знать, поэтому это займет время, независимо от ваших навыков или скорости обучения.
Kali Linux удивительно прост в установке. На странице «Get Kali» перечислены различные режимы установки с предварительно настроенными образами и готовыми к использованию виртуальными машинами.
Виртуальные машины идеально подходят для быстрого ознакомления. Не стесняйтесь тестировать их, даже с целью просто посмотреть, как выглядит ОС.
Поддерживается большинство операционных систем, вы найдёте контейнеры Docker и даже поддержку Android и Raspberry Pi. Пользователи Windows могут установить Kali, например, с помощью подсистемы Windows (WSL2).
Однако установка на «голое железо» не рекомендуется для начинающих.
Вы можете прошить ISO-образы на внешнем диске, чтобы установить Kali на выбранное вами устройство, загрузившись с этого диска.
Вы также можете запустить Kali в режиме реального времени с живыми дистрибутивами, не устанавливая его на свое устройство.
Без надлежащих знаний ваш пентест, скорее всего, провалится, так как нет волшебного рецепта, который вы могли бы применить вслепую, независимо от того, насколько хороши ваши инструменты.
Кроме того, атакующие инструменты могут отправлять несколько зондов или заголовков вместе со своими запросами (например, при сканировании и обнаружении), которые могут быть обнаружены и заблокированы средствами безопасности. Обратите внимание, что Kali не будет автоматически скрывать ваш IP-адрес или отпечатки пальцев. Вы можете использовать VPN или установить утилиты для захвата и пересылки трафика в другие подсети или настроить цепочки прокси.
Вы также можете использовать внешние платформы, такие как Linode, для настройки и работы.
Однако, если вы полный новичок, мой совет — не спешить с инструментами и начать с бесплатных проектов с открытым исходным кодом для атаки, таких как Juice Shop или многих других уязвимых приложений, которые призваны помочь вам изучить кибербезопасность.
Тогда вы, возможно, захотите изучить более продвинутые методы или инвестировать в специальные онлайн-программы обучения (см. последний раздел этой статьи).
Тест на проникновение направлен на имитацию реальной атаки на целевую систему. На самом деле это широкий термин, который охватывает широкий спектр тестов и процедур не только для веб-приложений, и организации могут использовать регулярные пентесты для повышения своей безопасности и устранения критических уязвимостей.
В отличие от оценок уязвимостей , пентесты предполагают эксплуатацию, что означает, что вы, как злоумышленник, взламываете систему по-настоящему, в соответствии с правилами, определёнными перед тестом. Конечная цель — написать хороший отчёт с рекомендациями.
Обратите внимание, что ваш пентест не является исчерпывающим анализом, так как у вас, скорее всего, будет ограниченное время и вам понадобится только один работающий эксплойт для достижения вашей цели.
Важно помнить, что пентестинг не ограничивается взломом уязвимых серверов, на которых размещены приложения и базы данных. Есть несколько других углов атаки для тестирования, в том числе:
- Сетевые компрометации
- Социальная инженерия (например, фишинг)
- Повреждения памяти
- Wi-Fi атаки
Kali — прекрасный набор инструментов, потому что в нём есть инструменты для широкого спектра пентестов. Веб-приложения хороши для обучения, потому что многие веб-серверы уязвимы и открывают большую поверхность для злоумышленников, поскольку организациям приходится открывать свою сеть для общественности.
Однако при необходимости (и в договоре) пентестер может проводить и физические атаки.
Законы не везде одинаковы, а это означает, что одни и те же процедуры могут быть законными в одних странах и незаконными в других. Это особенно верно, если вы сравниваете ЕС с США.
Насколько я знаю, «Этический взлом» не является охраняемым законом статусом. На законных исследователей безопасности подали в суд после демонстрации критических уязвимостей.
Масштаб необходим для того, чтобы отличить пентест от реальной атаки. Конечно, вам нужно явное согласие, которое обычно является юридическим соглашением, чтобы запустить пентест, но вы также должны очень точно определить область действия перед операцией .
И последнее, но не менее важное: установка Kali Linux на работе без разрешения также повлечет за собой дополнительные обязательства. Дистрибутив содержит конфиденциальные программы, которые могут подвергнуть риску вашу организацию, не говоря уже о вашей занятости.
Существуют буквально сотни инструментов Kali Linux для различных целей. Новички могут начать с очень популярных пакетов для классических и повторяющихся задач, или они могут обратиться к специалистам по безопасности за своими любимыми инструментами.
Хотя список инструментов может дать некоторые подсказки, он может сбить с толку новичков. Вот ряд задач пентеста и соответствующие инструменты Kali Linux:
- OSINT : используйте Maltego для сбора информации
- Социальная инженерия : используйте SET (инструментарий социального инженера)
- База знаний : Используйте эксплуатируемую базу данных
- Платформа пентестинга : используйте Metasploit Framework
- Сканирование портов : используйте Nmap для сканирования целевой сети и Ndiff для сравнения сканирований Nmap (например, чтобы увидеть, какие порты закрываются/открываются).
- Беспроводное пентестирование : используйте Aircrack-ng для взлома Wi-Fi, Bettercap для разведки и атак MitM на устройства Wi-Fi и BLE (Bluetooth с низким энергопотреблением).
- Packet sniffing: используйте Scapy для манипулирования пакетами, Ettercap также отлично подходит для выполнения атак MitM, а Wireshark обязателен.
- Перебор URL-адресов : используйте Gobuster или DirBuster для сканирования URL-адресов (каталогов, файлов и DNS) и Nikto для обнаружения уязвимостей сервера.
- Веб-фаззинг : используйте Wfuzz
- Веб-взлом : используйте BeEF для использования XSS и других уязвимостей в браузере или Burp Suite для перехвата запросов.
- SQL-инъекции : используйте sqlmap для взлома уязвимых баз данных
- Сканирование WordPress : используйте WPscan
- Удалённый вход в систему методом грубой силы : используйте Hydra (Hydra GTK для графического интерфейса)
- Перебор паролей : используйте John The Ripper
- Active Directory : используйте Mimikatz, Impacket
Списки не расскажут вам, как использовать каждый инструмент или правильную комбинацию для достижения вашей цели. Однако после установки Kali Linux сортирует пакеты по категориям, что добавляет полезный контекст и метки.
Категория обычно соответствует типичным этапам пентеста, таким как «сбор информации» или «постэксплуатация», а также повторяющимся задачам, таким как «атаки на пароли».
Просто откройте интерактивное меню:
Learning Kali Linux: Security Testing, Penetration Testing, and Ethical Hacking
With more than 600 security tools in its arsenal, the Kali Linux distribution can be overwhelming. Experienced and aspiring security professionals alike may find it challenging to select the most appropriate tool for conducting a given test. This practical book covers Kali’s expansive security capabilities and helps you identify the tools you need to conduct a wide range of security tests and penetration tests. You’ll also explore the vulnerabilities that make those tests necessary.
Author Ric Messier takes you through the foundations of Kali Linux and explains methods for conducting tests on networks, web applications, wireless security, password vulnerability, and more. You’ll discover different techniques for extending Kali tools and creating your own toolset.
- Learn tools for stress testing network stacks and applications
- Perform network reconnaissance to determine what’s available to attackers
- Execute penetration tests using automated exploit tools such as Metasploit
- Use cracking tools to see if passwords meet complexity requirements
- Test wireless capabilities by injecting frames and cracking passwords
- Assess web application vulnerabilities with automated or proxy-based tools
- Create advanced attack techniques by extending Kali tools or developing your own
- Use Kali Linux to generate reports once testing is complete
Resolve the captcha to access the links!