## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-XAITAX-CVE-2024-6387_CHECK
# CVE-2024-6387_Check

## 📜 Описание
CVE-2024-6387_Check — это лёгкий и эффективный инструмент, предназначенный для выявления серверов, работающих под управлением уязвимых версий OpenSSH, в частности недавно обнаруженной уязвимости `regreSSHion` (CVE-2024-6387). Скрипт обеспечивает быструю проверку множества IP-адресов, доменных имён и CIDR-диапазонов для обнаружения потенциальных уязвимостей и обеспечения безопасности вашей инфраструктуры.
## 🌟 Возможности
* **Быстрое сканирование** : Мгновенная проверка множества IP-адресов, доменов и CIDR-диапазонов на наличие уязвимости CVE-2024-6387.
* **Получение баннера** : Эффективное получение SSH-баннеров без аутентификации.
* **Обнаружение Grace Time** : Опциональное определение, смягчили ли серверы уязвимости с помощью настройки LoginGraceTime.
* **Поддержка IPv6** : Полная поддержка IPv6-адресов как при прямом сканировании, так и при сканировании по имени хоста.
* **Многопоточность** : Использование потоков для параллельных проверок, что значительно сокращает время сканирования.
* **Детализированный вывод** : Чёткий вывод с эмодзи, суммирующий результаты сканирования.
* **Проверка портов** : Определение закрытых портов и сводка по не отвечающим хостам.
* **Обнаружение исправленных версий** : Распознавание и исключение известных исправленных версий из отчёта об уязвимостях.
* **Разрешение DNS/имён хостов** : Определение и отображение имён хостов для IP-адресов.
## 🚀 Использование
root@kitploit:~
python CVE-2024-6387_Check.py <targets> [--ports PORTS] [--timeout TIMEOUT] [--list FILE] [--grace-time-check [SECONDS]] [--dns-resolve] [--use-help-request]
### Аргументы командной строки
* `<targets>`: IP-адреса, доменные имена, пути к файлам, содержащим IP-адреса, или CIDR-диапазоны.
* `--timeout TIMEOUT`: Установить таймаут подключения в секундах (по умолчанию: 1 секунда).
* `--list FILE`: Файл со списком IP-адресов для проверки.
* `--ports PORTS`: Указать разделённый запятыми список номеров портов для проверки (по умолчанию: 22).
* `--use-help-request`: Включить отправку HELP-запроса, если первоначальное получение SSH-баннера не удалось.
* `--grace-time-check [SECONDS]`: Время в секундах ожидания после определения версии для проверки смягчения `LoginGraceTime` (по умолчанию: 120 секунд).
* `--dns-resolve`: Разрешать и отображать имена хостов для IP-адресов.
### Примеры
#### Один IP
root@kitploit:~
python CVE-2024-6387_Check.py 192.168.1.1
#### IP-адреса из файла
root@kitploit:~
python CVE-2024-6387_Check.py -l ip_list.txt
#### Несколько IP и доменов
root@kitploit:~
python CVE-2024-6387_Check.py 192.168.1.1 example.com 192.168.1.2
#### CIDR-диапазон
root@kitploit:~
python CVE-2024-6387_Check.py 192.168.1.0/24
#### С несколькими портами
root@kitploit:~
python CVE-2024-6387_Check.py 192.168.1.1 example.com --ports 22,2222
#### Проверка смягчения LoginGraceTime
root@kitploit:~
python CVE-2024-6387_Check.py 192.168.1.1 --grace-time-check
#### Проверка смягчения LoginGraceTime с произвольным временем
root@kitploit:~
python CVE-2024-6387_Check.py 192.168.1.1 --grace-time-check 150
#### Включение HELP-запроса
root@kitploit:~
python CVE-2024-6387_Check.py 192.168.1.1 --use-help-request
#### Включение разрешения DNS/имён хостов
root@kitploit:~
python CVE-2024-6387_Check.py 192.168.1.1 --dns-resolve
### ✨ Подробное описание возможностей
#### Обнаружение Grace Time
Инструмент поддерживает проверку смягчения LoginGraceTime. При использовании опции `--grace-time-check` скрипт будет ждать указанный период после получения SSH-баннера, чтобы проверить, остаётся ли соединение открытым; это указывает на то, что параметр LoginGraceTime может быть установлен в 0 в качестве меры смягчения.
#### Поддержка IPv6
Инструмент полностью поддерживает IPv6-адреса. Вы можете сканировать как IPv4, так и IPv6-адреса напрямую или через разрешение имени хоста.
#### Обнаружение исправленных версий
Инструмент распознаёт некоторые исправленные версии OpenSSH и исключает их из отчёта об уязвимостях, обеспечивая более точные результаты.
#### Разрешение DNS/имён хостов
При использовании опции `--dns-resolve` скрипт определяет и отображает имена хостов для IP-адресов в выводе. Эта функция помогает более чётко идентифицировать сканируемые хосты.
### Обработка HELP-запроса
Инструмент включает возможность работы с ограничительными SSH-сервисами, которые не возвращают баннер сразу. При использовании опции `--use-help-request` скрипт отправляет запрос "HELP", если первоначальное получение SSH-баннера не удалось, увеличивая количество обнаружений "смягчения".
### Вывод
Скрипт предоставляет сводку по просканированным целям:
* 🚨 Уязвимые: Серверы, работающие под управлением уязвимой версии OpenSSH.
* 🛡️ Не уязвимые: Серверы, работающие под управлением неуязвимой версии OpenSSH.
* ⚠️ Неизвестные: Серверы, работающие под управлением неизвестной версии SSH.
* 🔒 Закрытые порты: Количество серверов с закрытым портом 22 (или указанным портом).
* 📊 Всего просканировано: Общее количество просканированных целей.
root@kitploit:~
🛡️ Servers not vulnerable: 2
[+] Server at somedomain.cloudapp.azure.com (running SSH-2.0-OpenSSH_8.2p1 Ubuntu-4ubuntu0.11)
[+] Server at regresshion_test.cc (running SSH-2.0-OpenSSH_9.6p1 Ubuntu-3ubuntu13.3)
🚨 Servers likely vulnerable: 1
[+] Server at 4.231.170.122 (abc.com) (running SSH-2.0-OpenSSH_9.2p1 Debian-2+deb12u2)
[+] Server at 4.231.170.121 (running SSH-2.0-OpenSSH_9.2p1 Debian-2+deb12u2) vulnerable and LoginGraceTime remediation not done (Session was closed by server at 120.1 seconds)
⚠️ Servers with unknown SSH version: 1
[+] Server at 103.97.85.85 (xxx.com) (banner: SSH-2.0-ROSSSH)
🔒 Servers with port 22 closed: 254
📊 Total scanned targets: 257
## 📆 Журнал изменений
### [08 июля 2024] - Версия 0.8
* [Добавлено] Включены исправленные версии для FreeBSD 13.3, 14.x и 15.
* [Добавлено] Разрешение имён хостов через `-d` или `--dns-resolve`.
* [Исправлено] Обнаружение LoginGraceTime @agibson2.
### [06 июля 2024] - Версия 0.7
* [Добавлено] Представлена опция использования HELP-запроса для получения SSH-баннера, если первая попытка не удалась. Эту функцию можно включить с помощью аргумента `--use-help-request`. Это помогает обходить определённые конфигурации SSH, которые не возвращают баннер немедленно, улучшая совместимость с более ограничительными SSH-сервисами.
* [Добавлено] #30: Возможность сканирования нескольких портов.
### [05 июля 2024] - Версия 0.6
* [Добавлено] Представлено обнаружение LoginGraceTime.
* [Исправлено] Устранена проблема, из-за которой хосты, имеющие только IPv6-адрес, не могли быть протестированы по имени хоста.
## 📚 Ссылки
Блог Qualys об уязвимости regreSSHion