Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
CVE-2024-6387 — SSH-эксплойт для CVE-2024-6387: RCE в сервере OpenSSH на Linux-системах на базе glibc | Kitploit
Инструменты/GitHubGitHub/symbolexe/cve-2024-6387
Анализ уязвимостейЭксплуатацияТестирование на ПроникновениеRed TeamingИнструмент Удаленного ДоступаРазработка Полезной Нагрузки
GitHubsymbolexe/cve-2024-6387

CVE-2024-6387

SSH-эксплойт для CVE-2024-6387: RCE в сервере OpenSSH на Linux-системах на базе glibc

Репозиторий
3642 лет назадЕщё не проверено

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

CVE-2024-6387

Скриншот 2024-07-04 182931 CVE-2024-6387 — это гипотетический пример, но давайте предположим, что это реальная уязвимость в реализации сервера OpenSSH. Эта уязвимость может включать переполнение буфера или повреждение памяти, что позволяет удаленным злоумышленникам выполнить произвольный код на сервере. Вот общее описание того, как такая уязвимость может быть использована:

  1. Распыление кучи (Heap Spraying): Злоумышленник подготавливает кучу таким образом, чтобы она стала предсказуемой.
  2. Повреждение памяти: Злоумышленник отправляет специально сформированные пакеты, вызывающие повреждение памяти.
  3. Выполнение произвольного кода: Злоумышленник размещает шеллкод (вредоносный код) в известном месте и перенаправляет на него выполнение.

Код эксплоита

Представленный код на Python — это эксплоит, предназначенный для использования уязвимости CVE-2024-6387. Ниже приведен подробный разбор шагов, которые он выполняет: Настройка соединения: Устанавливает TCP-соединение с целевым SSH-сервером.

root@kitploit:~
def setup_connection(ip, port):
    # ...

Отправка и получение пакетов: Обрабатывает отправку и получение пакетов от SSH-сервера и к нему.

root@kitploit:~
def send_packet(sock, packet_type, data):
    # ...

Обмен версиями SSH: Инициирует рукопожатие SSH путем отправки и получения строки версии SSH.

root@kitploit:~
def send_ssh_version(sock): # ... def receive_ssh_version(sock): # ...

Инициализация обмена ключами (KEX_INIT): Отправляет и получает пакет инициализации обмена ключами.

root@kitploit:~
def send_kex_init(sock):
    # ...
def receive_kex_init(sock):
    # ...

Выполнение рукопожатия SSH: Объединяет вышеуказанные шаги для завершения рукопожатия SSH.

root@kitploit:~
def perform_ssh_handshake(sock):
    # ...

Подготовка кучи: Отправляет серию пакетов для манипуляции состоянием кучи на сервере.

root@kitploit:~
def prepare_heap(sock):
    # ...

Фальшивая файловая структура: Создает поддельные файловые структуры для эксплуатации уязвимости повреждения памяти.

root@kitploit:~
def create_fake_file_structure(data, glibc_base):
    # ...

Измерение времени парсинга: Измеряет время, затраченное сервером на разбор определенных пакетов, что помогает правильно рассчитать время финального эксплоита.

root@kitploit:~
def time_final_packet(sock):
    # ...

Пакет открытого ключа: Формирует пакет, содержащий полезную нагрузку эксплоита, включая шеллкод.

root@kitploit:~
def create_public_key_packet(packet, size, glibc_base):
    # ...

Эксплуатация состояния гонки: Пытается использовать состояние гонки, правильно выбирая время отправки финального пакета.

root@kitploit:~
def attempt_race_condition(sock, parsing_time, glibc_base):
    # ...

Главная функция: Координирует общий процесс эксплоита, включая несколько попыток с разными базами glibc.

root@kitploit:~
def main():
    # ...

Рабочий процесс эксплуатации

  • Настройка соединения: Эксплоит начинается с установки соединения с SSH-сервером.
  • Рукопожатие и подготовка кучи: Эксплоит выполняет рукопожатие SSH и отправляет несколько пакетов для подготовки кучи.
  • Измерение времени: Эксплоит измеряет время отклика сервера на определенные пакеты, чтобы оценить время финального эксплоита.
  • Финальная попытка эксплоита: Эксплоит формирует и отправляет финальный пакет, содержащий шеллкод. Он пытается отправить этот пакет таким образом, чтобы вызвать уязвимость.

Дополнительные соображения

  • Надежная обработка ошибок: Представленный код включает улучшенную обработку ошибок, чтобы скрипт мог восстанавливаться после типичных сетевых проблем.
  • Модульность: Код является модульным, что упрощает его понимание и сопровождение.
  • Время и синхронизация: Эксплуатация состояния гонки часто требует точной синхронизации, с чем скрипт пытается справиться путем измерения и корректировки времени отправки пакетов.

Заключение

CVE-2024-6387 представляет собой серьезную уязвимость в OpenSSH, позволяющую удаленно выполнять код. Представленный Python-скрипт эксплуатирует эту уязвимость, манипулируя кучей и временем отправки пакетов, вызывая повреждение памяти и в конечном итоге выполняя шеллкод злоумышленника на сервере. Скрипт демонстрирует типичные методы разработки эксплоитов, включая распыление кучи, повреждение памяти и точную синхронизацию для состояний гонки.

Скачать инструмент