Kali Linux — тестирование проникновения на сайт
В этой главе мы узнаем о тестировании на проникновение веб-сайтов, предлагаемом Kali Linux.
Vega Usage
Vega — это бесплатная платформа для сканирования и тестирования с открытым исходным кодом, предназначенная для проверки безопасности веб-приложений. Vega может помочь вам найти и проверить SQL-инъекцию, межсайтовый скриптинг (XSS), непреднамеренно раскрытую конфиденциальную информацию и другие уязвимости. Он написан на Java, на основе графического интерфейса и работает в Linux, OS X и Windows.
Vega включает в себя автоматический сканер для быстрых тестов и перехватывающий прокси для тактического осмотра. Vega может быть расширена с помощью мощного API на языке Интернета: JavaScript. Официальная веб-страница https:»//»subgraph.com/vega/
Шаг 1 — Чтобы открыть Vega, выберите Приложения → 03-Анализ веб-приложений → Vega.
Шаг 2 — Если вы не видите приложение в пути, введите следующую команду.
Шаг 3 — Чтобы начать сканирование, нажмите знак «+».
Шаг 4 — Введите URL веб-страницы, который будет сканироваться. В этом случае это метапроизводимая машина → нажмите «Далее».
Шаг 5 — Отметьте все поля модулей, которыми вы хотите управлять. Затем нажмите «Далее».
Шаг 6 — Нажмите «Далее» еще раз на следующем снимке экрана.
Шаг 7 — Нажмите «Готово».
Шаг 8 — Если появится следующая таблица, нажмите «Да».
Сканирование будет продолжено, как показано на следующем снимке экрана.
Шаг 9 — После того, как сканирование завершено, на левой нижней панели вы можете увидеть все результаты, которые классифицированы в соответствии с серьезностью. Если вы щелкните по нему, вы увидите все детали уязвимостей на правой панели, такие как «Запрос», «Обсуждение», «Воздействие» и «Исправление».
ZapProxy
ZAP-OWASP Zed Attack Proxy — это простой в использовании интегрированный инструмент тестирования на проникновение для поиска уязвимостей в веб-приложениях. Это интерфейс Java.
Шаг 1 — Чтобы открыть ZapProxy, перейдите в Приложения → 03-Анализ веб-приложений → owaspzap.
Шаг 2 — Нажмите «Принять».
ZAP начнет загружаться.
Шаг 3 — Выберите один из вариантов, как показано на следующем снимке экрана, и нажмите «Пуск».
Следующая сеть является метасплочной с IP: 192.168.1.101
Шаг 4. Введите URL-адрес веб-сайта тестирования в поле «URL-адрес для атаки» → нажмите «Атака».
После завершения сканирования в верхней левой панели вы увидите все просканированные сайты.
На левой панели «Оповещения» вы увидите все полученные данные вместе с описанием.
Шаг 5 — Нажмите «Паук», и вы увидите все отсканированные ссылки.
Использование инструментов базы данных
sqlmap
sqlmap — это инструмент для тестирования на проникновение с открытым исходным кодом, который автоматизирует процесс обнаружения и использования недостатков SQL-инъекций и захвата серверов баз данных. Он поставляется с мощным механизмом обнаружения, множеством нишевых функций для окончательного тестера проникновения и широким диапазоном переключателей, начиная от дактилоскопии базы данных, за выборку данных из базы данных, до доступа к базовой файловой системе и выполнения команд в операционной системе через внешнюю систему. зонные соединения.
Давайте узнаем, как использовать sqlmap.
Шаг 1 — Чтобы открыть sqlmap, перейдите в Приложения → Оценка базы данных → sqlmap.
Веб-страница, имеющая уязвимые параметры для SQL-инъекций, является метасложной.
Шаг 2. Чтобы начать тестирование SQL-инъекций, введите «sqlmap — u URL-адрес жертвы»
Шаг 3 — Из результатов вы увидите, что некоторые переменные уязвимы.
sqlninja
sqlninja — это инъекция SQL в Microsoft SQL Server для полного доступа к графическому интерфейсу. sqlninja — это инструмент, предназначенный для использования уязвимостей SQL-инъекций в веб-приложении, использующем Microsoft SQL Server в качестве серверной части. Полную информацию об этом инструменте можно найти на http:»//»sqlninja.sourceforge.net/
Шаг 1 — Чтобы открыть sqlninja, перейдите в Приложения → Оценка базы данных → sqlninja.
Инструменты сканирования CMS
WPScan
WPScan — это сканер уязвимостей WordPress черного ящика, который можно использовать для сканирования удаленных установок WordPress на наличие проблем безопасности.
Шаг 1 — Чтобы открыть WPscan, перейдите в Приложения → 03-Анализ веб-приложений → «wpscan».
Появится следующий скриншот.
Если сканер не обновляется, он попросит вас обновить. Я рекомендую это сделать.
Как только сканирование начнется, вы увидите результаты. На следующем снимке экрана уязвимости обозначены красной стрелкой.
Joomscan
Joomla, вероятно, является наиболее широко используемой CMS из-за своей гибкости. Для этой CMS это сканер Joomla. Это поможет веб-разработчикам и веб-мастерам выявить возможные слабые места безопасности на развернутых сайтах Joomla.
Шаг 2 — Чтобы получить справку по использованию, введите «joomscan /?»
Шаг 3 — Чтобы начать сканирование, введите «joomscan –u URL-адрес жертвы».
Результаты будут отображаться, как показано на следующем снимке экрана.
Присоединяйся к сообществу «Xakep.ru»!
Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее
-60% |
---|
-60% |
1 year
9990 рублей 4000 р.
1 month_r
920 р.
UpGuard
UpGuard Web Scan is an external risk assessment tool that uses publicly available information to grade.
Test results are categorized into the following groups.
- Website risks
- Email risks
- Network security
- Phishing and Malware
- Brand protection
Good to get a quick security posture of your website.
Инструменты сканирования SSL
Текущие тесты включают в себя проверку того, поддерживает ли цель протокол SSLv2, шифр NULL, слабые шифры на основе длины ключа (40 или 56 бит), наличие надежных шифров (например, AES), если цифровой сертификат подписан MD5, и текущие возможности пересмотра SSL / TLS.
Вы можете видеть, что сертификат действителен до 2018 года, как показано зеленым на следующем снимке экрана.
w3af — это платформа для атаки и аудита веб-приложений, целью которой является выявление и использование всех уязвимостей веб-приложений. Этот пакет предоставляет графический интерфейс пользователя (GUI) для платформы. Если вам нужно только приложение командной строки, установите w3af-console.
Фреймворк был назван «metasploit for the web», но на самом деле он намного больше, поскольку он также обнаруживает уязвимости веб-приложений с помощью методов сканирования «черного ящика». Ядро w3af и его плагины полностью написаны на Python. Проект имеет более 130 плагинов, которые идентифицируют и используют SQL-инъекции, межсайтовый скриптинг (XSS), удаленное включение файлов и многое другое.
Шаг 1 — Чтобы открыть его, перейдите в Приложения → 03-Анализ веб-приложений → Нажмите w3af.
Шаг 2 — В поле «Цель» введите URL-адрес жертвы, который в этом случае будет метасовместимым веб-адресом.
Шаг 3 — Выберите профиль → Нажмите «Пуск».
Шаг 4 — Перейдите в «Результаты», и вы можете увидеть результаты с деталями.
Источник
1. Проверяем сетевую инфраструктуру.
В кибератаках, также как и войне, все начинается с разведки, чтобы найти уязвимое место соперника.
Для того, чтобы эффективно атаковать, нам необходимо знать, какое ПО используется на сервере и какие двери открыты или закрыты недостаточно крепко.
К несчастью владельцев сайтов, сейчас, чтобы все это узнать, нужно лишь здравое любопытство и утилита nmap.
Nmap — это набор инструментов для сканирования сетевой инфраструктуры веб-сервиса. Он может быть использован для проверки безопасности, для идентификации запущенных серверных приложений.
Nmap позволяет запускать готовые скрипты, которые значительно упрощают анализ вашего сервера. Минус — теперь даже смышленный школьник, вооружившись пачкой скриптов, может предоставлять опасность для серверов компании.
Интересный факт: сyществует целая галерея фильмов, где утилита nmap используется для кибератак. Часть представлена ниже. Более полный список и разбор можно посмотреть по ссылке
Ну что, картинки посмотрели, теперь можно и поработать! Приступаем к делу.
Как пользоваться Kali Linux для проверки сайтов
Суть обеспечения безопасности своих веб-сайтов сводится к тому, чтобы найти проблему раньше хакера и исправить её. Проблемы в безопасности сайтов (уязвимости сайтов) хакеры ищут с помощью специализированных программ, на их жаргоне «инструментов».
Инструменты для проверки сайтов свободно доступны, но проблема в том, что большинство веб-мастеров не умеет ими пользоваться. Ситуация для них усугубляется тем, что это в большей части утилиты командной строки, то есть это программы без графического интерфейса, их нужно запускать в консоли. И всё ещё хуже от того, что это даже не Windows программы — большинство из них легко устанавливаются только в Linux.
Я подготовил эту очень простую инструкцию для абсолютных новичков, которые даже никогда не видели Linux. С помощью неё вы сможете:
Сложно не будет, обещаю! Начнём.
Скачайте Kali Linux
Зайдите на страницу https:»//»www.kali.org/downloads/, найдите там вариант Kali Linux 64-Bit и скачайте Torrent-файл. Затем скачайте образ системы (уверен, торрентами вы и без моих инструкций умеете пользоваться).
1.2 Устанавливаем nmap
В установке нет ничего сложного. Примеры установки покажу на примере Windows. В дистрибутивах Linux последняя версия nmap обычно установлена по умолчанию.
1.2.1 Установка на Windows 10
Перейдите по ссылке загрузки nmap и загрузите последнюю стабильную версию. Дальше запустите от имени администратора. Программа установки по умолчанию предложит установить все компоненты, галочки можно не снимать. Описывать шаги далее подробно ( Примите лицензионное соглашение и тд) не буду, там все легко.
1.2.2 Запуск nmap на Windows
Запускать nmap можно как в режиме графического интерфейса, так и через командную строку.
Для запуска графической оболочки введите в строку поиска nmap и в результатах выберите nmap — Zenmap GUI
Для дальнейшей работы вы можете вводить нужные команды в поле «Команда», а затем нажимать на кнопку Сканирование. Результаты сканирования в виде текстового отчета вы можете посмотреть в окне, которое я старательно подписал «Отчет»
Нам ближе использование nmap через командную строку aka консоль. Для запуска командной строки введите «cmd» в строку поиска на панели инструментов. Нажмите Enter и затем откроется командная строка. Дальше прямо в нее можно вводить nmap команды.
Командная строка в Windows 10 c введенной командой nmap выглядит вот так:
1.2.3 Устанавливаем скрипты
Также нам надо установить скрипт nmap_vulners, который будет проводить проверку на то, содержатся ли уязвимости в ПО, которое мы используем. Для его установки нужно скачать файлы скрипта и перенести файлы http-vulners-regex.nse и vulners.nse в C:\Program Files (x86)\Nmap\scripts.
1.2.4 Начинаем проверку
Для начала запускаем сканирование сервера командой ниже, чтобы выяснить какие порты используются и для чего. Команда выглядит так (подставьте свой ip или домен). Команду нужно вводить в окне консоли, либо если вы используете Zenmap GUI, то в поле «Команда» (пример выше):
- Параметр T5 отвечает за скорость анализа сервера. Скорость можно менять от T0 до T5, где T0 — очень медленная скорость анализа, а T5 — очень быстрая. Если вы не хотите сильно нагружать сервер, то используйте T2.
- Параметр -p- означает, что мы будем проверять весь диапазон портов (‘это займет около 10 минут) . Его можно убрать и тогда скрипт просканирует не все порты, а только 1000 первых (самые распространенные).
Ответ будет выглядеть примерно так:
Из отчета мы видим, что nmap отобразил порты (под колонкой PORT), которые активны. В данном случае у меня используются:
- Порт 21 занят под FTP
- Порт 22 занят под SSH.
- Порт 80 прослушивается сервером Apache.
- Порт 3306 используется MySQL
Теперь запустис скрипт, который проверит уязвимости в ПО на сервере. Для этого пишем следующую команду с указанием портов, которые будем проверять. Вам нужно будет заменить список портов на свои:
Пример отчета. Ссылки на описание уязвимости идут после строки vulners (пример такой строки со ссылкой в отчете: CVE-2014-9278 4.0 https:»//»vulners.com/cve/CVE-2014-9278 )
Как видите из отчета, скрипт проанализировал активное ПО нашего сервера и любезно предоставил ссылки с описанием каждой найденной уязвимости. Что согласитесь, очень удобно как нас.
Также можно записать результат анализа в файл, который потом можно скинуть ответственному разработчику или системному администратору. Сам файл результатов будет находиться в каталоге, из которого вы запускаете скрипт. Пример такой команды ниже:
nmap -T5-sV -Pn 161.35.92.161—script=vulners.nse -p22,80,443,8080,8443,3306,20,21,23> result.txt
Индусфейс БЫЛ
Обнаружение уязвимостей высокого риска, критических CVE и вредоносных программ, которые могут использовать злоумышленники. Индусфейс БЫЛ (Сканер веб-приложений). Это единственный поставщик, предлагающий сканеры веб-приложений по цене 59 долларов. Indusface WAS является высокоэффективным в DAST на G2 на 2022 год.
Этот комплексный сканер безопасности приложений проверяет ваши критически важные активы, используя подробный анализ кода и всестороннюю оценку, чтобы обнаруживать и устранять все слабые места в системе безопасности и гарантировать, что ни один недостаток не останется незамеченным.
Indusface WAS делает это, предоставляя:
- Глубокое и интеллектуальное сканирование веб-приложений
- Полное покрытие, обнаруживающее OWASP Top 10, вредоносное ПО и другие угрозы безопасности
- Гарантия отсутствия ложноположительных результатов
- Проверка бизнес-логики на уязвимости с поддержкой экспертов
- Мониторинг вредоносных программ и обнаружение черных списков
- Полная информация об уязвимости и исправлении
После завершения сканирования Indusface WAS предоставляет отчет, позволяющий понять серьезность обнаруженных уязвимостей и исправить их. С помощью этого подробного и точного отчета, предлагающего обзор уровня безопасности, приоритезации рисков и рекомендаций по исправлению, находите уязвимости быстро, без усилий и точно.
Как запустить Kali Linux
Плюсы такого способа:
Поскольку я обещал, что будет просто, то мы выберем работу именно в Live-системе. Если у вас появится дальнейший интерес, то вы сможете установить ОС Linux в виртуальную машину или в качестве второй системы.
Quttera
Quttera checks the website for malware and vulnerabilities exploits.
It scans your website for malicious files, suspicious files, potentially suspicious files, PhishTank, Safe Browsing (Google, Yandex), and Malware domain list.
Запуск Kali Linux без установки
Скаченный образ можно записать на флешку с помощью Etcher (в этой программе всего три кнопки – не запутаетесь) и загрузиться с этой флешки.
Но есть и ещё более простой вариант! Запуск Live-системы Linux в виртуальной машине VirtualBox.
Итак, поскольку мы будем запускать Kali Linux в VirtualBox, то в этом случае нам НЕ нужно записывать ISO образ на флешку, нужно только установить VirtualBox, это делается элементарно, но на всякий случай вот инструкция.
Создание виртуальной машины Kali Linux
Мы все знаем, что на компьютере работает одна операционная система. Мы можем установить вторую операционную систему (например, другую версию Windows или дистрибутив Linux), но чтобы переключиться в эту другую операционную систему, необходимо выключить компьютер и при загрузке выбрать другую ОС. Так вот программа VirtualBox убирает это ограничение — она позволяет запускать на одном компьютере две и более операционных систем, каждая из которых работает независимо от другой!
Это достигается благодаря «виртуальным компьютерам» («виртуальным машинам»), за которые отвечает VirtualBox.
Итак, создадим нашу виртуальную машину, в которой мы будем запускать Kali Linux.
-
Откройте VirtualBox
-
Нажмите кнопку Создать:
- Введите Имя «Kali Linux», нажмите кнопку Далее.
- Установите количество оперативной памяти, которую вы выделяете виртуальной машине — рекомендуется 4 гигабайта или более. Но помните, что выделяемая память забирается у вашей основной ОС, то есть оставьте достаточное количество, чтобы ваша основная ОС также нормально работала. Нажмите кнопку Далее.
- Нам не нужен жёсткий диск, поскольку мы будем работать исключительно в Live-системе. Поэтому выбираем «Не подключать виртуальный жёсткий диск». И нажимаем кнопку Создать.
-
Система думает, что мы не знаем, что делаем, но мы то знаем! Поэтому нажимаем кнопку Продолжить.
-
Этот шаг необязательный. Зайдите в настройки виртуальной машины (выделите её и нажмите кнопку «Настроить», либо кликните по виртуальной машине правой кнопкой и в контекстном меню выберите «Настроить»). Там в разделе Система на вкладке Процессор рекомендую добавить количество ядер (чтобы работала быстрее) и поставить галочку «Включить PAE/NX». Когда изменения сделаны, нажмите кнопку ОК для их сохранения.
Intruder
Intruder is a powerful cloud-based vulnerability scanner to find weaknesses in the entire web application infrastructure. It is enterprise-ready and offers a government & bank-level security scanning engine without complexity.
Its robust security checks include identifying:
- Missing patches
- Misconfigurations
- Web application issues such as SQL injection & cross-site scripting
- CMS issues
Intruder saves you time by prioritizing results based on their context and proactively scanning your systems for the latest vulnerabilities. It also integrates with major cloud providers (AWS, GCP, Azure) and Slack & Jira.
You can give Intruder a try for 30 days for free.
WARNING
Статья предназначена для «белых хакеров», профессиональных пентестеров и руководителей службы информационной безопасности (CISO). Ни автор, ни редакция не несут ответственности за любой возможный вред, причиненный этим материалом.
Запуск Kali Linux для новичка
Теперь запустите виртуальную машину — для этого дважды кликните по ней, либо нажмите кнопку Запустить.
Появится чёрный экран (на данном этапе это нормально):
В меню перейдите в Устройства → Оптические диски → Выбрать образ диска:
Выберите образ Kali Linux который вы недавно скачали.
Прежде чем перезагрузиться, сделаем ещё одну настройку. В меню перейдите в Устройства → Общий буфер обмена → Двунаправленный.
И теперь в меню выберите Машина → Перезагрузить.
А вот и сама великая и ужасная Kali Linux:
Нажимаем ENTER, чтобы загрузиться.
Qualys
SSL Server Test by Qualys is essential to scan your website for SSL/TLS misconfiguration and vulnerabilities. It provides an in-depth analysis of your https:»//» URL including expiry day, overall rating, cipher, SSL/TLS version, handshake simulation, protocol details, BEAST, and much more.
As a best practice, you should run the Qualys test after making any SSL/TLS-related changes.
Консоль Kali Linux
Теперь мы будем работать в командной строке (консоли Linux). Чтобы её открыть кликните на эту иконку:
Лучшие команды Kali Linux для новичков
Проверка сайтов WordPress в Kali Linux
Для проверки сайтов, работающих на WordPress, используется программа WPScan. Эта программа может определить старые версии WordPress, тему оформления, установленные плагины, показать известные уязвимости в плагинах и темах оформления WordPress.
Начнём с обновления базы данных (нужно делать один раз после загрузки компьютера):
Для проверки сайтов запустите команду вида:
Например, если я хочу проверить сайт www.forum.comp-web-pro.ru, то команда следующая:
Определено, что на сайте доступна регистрация, найдена версия WordPress, определена тема оформления.
Найдено много уязвимостей в установленных плагинах WordPress:
Criminal IP
Criminal IP‘s Domain Search is a real-time URL Scanner that determines how a website is secure by extracting various data such as network logs, technologies used, connected subdomains, certificate information, and page redirections. This Domain Search is ideal for developers and cybersecurity teams who need visibility of vulnerability status and security threats through all these key elements.
Additionally, this AI-based Intelligence tool provides information about the HTML structure, JavaScript variables, and the probability of a URL being a phishing site, indicating the potential presence of malware or ransomware.
Criminal IP offers many features for free, and you can subscribe to plans that are tailored for various uses.
SiteGuarding
SiteGuarding helps you to scan your domain for malware, website blacklisting, injected spam, defacement, and much more. The scanner is compatible with WordPress, Joomla, Drupal, Magento, osCommerce, Bulletin, and other platforms.
SiteGuarding also helps you to remove malware from your website, so if you are site is affected by viruses, they will be useful.
HostedScan Security
HostedScan Security is an online service that automates vulnerability scanning for any business. It provides a comprehensive suite of scanners to scan networks, servers, and websites for security risks. Manage your risks via dashboards, reporting, and alerts.
The scanners include:
- Network vulnerability scanner to test for CVEs and vulnerable, out-of-date software
- Web application scanner to check for SQL injection, vulnerable javascript libraries, cross-site scripting, and more
- Full TCP and UDP port scanner to detect firewall and network misconfiguration
- TLS/SSL scanner to validate certificates and test for SSL vulnerabilities such as Heartbleed and Robot
HostedScan Security offers a free tier of 10 scans per month, making it simple and easy to get started scanning and securing your business.
Observatory
Mozilla recently introduced an observatory, which helps a site owner to check various security elements. It validates against OWASP хедер security, TLS best practices, and performs third-party tests from SSL Labs, High-Tech Bridge, Security Headers, HSTS Preload, etc.
2. Проверяем устойчивость к перебору.
В нашем случае nmap определил, что на сервере есть ssh, ftp и mysql. Попробуем проверить насколько устойчивые пароли используются.
2.1 SSH
Вводим следующую команду (напомню, что вводить нужно либо в консоль, либо в поле «Команда» программы Zenmap GUI:
nmap —script ssh-brute -p22 161.35.92.161—script-args userdb=users.lst,passdb=passwords.lst
В случае успеха (процесс не быстрый) скрипт выведет подобранный пароль и логин .
Подобранные пары логин\пароль будут выведены после строчки Accounts:
Кроме того, можно расширить стандартные списки паролей и пользователей от nmap, заменив файлы users.lst и passwords.lst . Различные базы для брутфорса можно найти в этом gitbub репозитории. Файлы с базой паролей можно разместить в папке nmap/nselib/data
2.2 FTP
Теперь проверяем FTP порт следующей командой:
nmap -d —script ftp-brute -p 21161.35.92.161
Аналогично, сервис выведет подобранные пары логинов и паролей:
Разведка
Прежде чем пытаться атаковать цель, нужно собрать информацию о ней. Для этого хорошо подходит инструмент WhatWeb. Эта утилита предоставляет подробную информацию о CMS жертвы и использованных ей веб-инструментах.
Советую запускать WhatWeb с ключом -а, указывая после него значение 3 или 4. Разница между ними только в том, что во втором случае WhatWeb будет сканировать еще и субдиректории. Имей в виду, что оба варианта задают агрессивный метод опросов — со всеми вытекающими, а точнее «втекающими» на сервер логами.
Вот пример запуска и собранных ответов:
$ whatweb -a3 https:»//»URL https:»//»URL [200 OK] Cookies[PHPSESSID], Country[UNITED KINGDOM][GB], Frame, HTML5, JQuery[1.9.0,2.2.3], Open-Graph-Protocol[website], PHP[7.1.33], PasswordField[password], Script[application/ld+json,text/javascript], Title[Bower Partnerships | Best Equity Release Broker Customer Service 2019], UncommonHeaders[link,x-robots-tag,alt-svc], WordPress, X-Powered-By[PHP/7.1.33], X-UA-Compatible[IE=EDGE]
Здесь мы видим, что это сайт британской компании, сделанный на WordPress, используется PHP v. 7.1.33 и jQuery 1.9.0, 2.2.3. Неплохо для начала!
Если у тебя нет VPN или ты просто не хочешь заморачиваться с установкой, обрати внимание на онлайновую версию WhatWeb.
WhatWeb online
Кстати, при работе с заграничными сайтами она дает большую скорость.
Если тебе достаточно определить только название CMS, то для этого есть отдельные сервисы, даже русскоязычные.
Вот свежая статистика популярности различных CMS в рунете:
- WordPress — 58,12%;
- Joomla — 17,12%;
- OpenCart — 4,65%;
- Drupal — 3,75%;
- Wix — 3,74%;
- MODX Revolution — 2,81%;
- MODX Evolution — 2,76%;
- Nethouse — 2,23%;
- прочие — 4,78%.