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

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

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

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

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

Категории

Все категории
Loading categories
Simple-Sweet32 — Упрощенная версия криптографической атаки на основе парадокса дней рождения: Sweet32 (CVE-2016-2183) | Kitploit
Инструменты/GitHubGitHub/zakyhermawan/simple-sweet32
Анализ уязвимостейЭксплуатацияКриптографияТестирование на ПроникновениеОбучение и Образование
GitHubzakyhermawan/simple-sweet32

Simple-Sweet32

Упрощенная версия криптографической атаки на основе парадокса дней рождения: Sweet32 (CVE-2016-2183)

Репозиторий
8 месяцев назадЕщё не проверено

Популярное

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

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

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

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

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

Sweet32

Это демонстрация атаки Sweet32 (CVE-2016-2183): https://sweet32.info/

Атака является примером атаки дня рождения, которая использует криптоалгоритмы с маленьким размером блока (64 бита) в режиме CBC, такие как 3DES и Blowfish. Атака требует генерации большого количества зашифрованных блоков с известным открытым текстом. После генерации можно идентифицировать одинаковые зашифрованные блоки и использовать их для определения значения открытого текста блоков с неизвестным открытым текстом.

Эта реализация использует 3DES (Triple DES) в качестве алгоритма шифрования, который имеет размер блока 64 бита (8 байт) — тот же размер блока, который делает реальный 3DES уязвимым к атаке Sweet32.

Формула атаки (Beastly Attack)

Когда два блока шифротекста совпадают (c_i = c_j), мы можем восстановить неизвестный открытый текст, используя:

root@kitploit:~
p_i = p_j ⊕ c_{i-1} ⊕ c_{j-1}

Где:

  • p_i — неизвестный открытый текст (например, секретный cookie)
  • p_j — известный открытый текст (например, HTTP-заголовки)
  • c_{i-1} и c_{j-1} — предыдущие блоки шифротекста

Это работает, потому что в режиме CBC коллизия означает, что входные данные блочного шифра были равны, что позволяет восстановить XOR без знания ключа шифрования.

Быстрая демонстрация

Запустите демонстрацию с гарантированной коллизией:

root@kitploit:~
# Step 1: Generate encrypted packet with secret cookie
python generate_rigged_packets.py rigged_demo.bin

# Step 2: Execute the attack to recover the cookie
python sweet32.py --block-size 8 rigged_demo.bin

Атака покажет значение SECRET COOKIE, а затем восстановит его, используя только шифротекст!

Скрипты

generate_rigged_packets.py

Создает пакет с гарантированной коллизией для демонстрационных целей. Значение cookie подобрано так, чтобы оно совпадало с блоком известного открытого текста.

sweet32.py

Выполняет атаку дня рождения Sweet32 для восстановления cookie.

О Sweet32

Атака Sweet32 использует парадокс дней рождения. Для 64-битного блочного шифра:

  • После ~2^32 блоков (~32 ГБ данных) коллизии становятся вероятными
  • Когда два блока шифротекста совпадают, их XOR показывает XOR открытых текстов
  • Если один открытый текст известен, другой можно восстановить

Это делает 3DES (и другие 64-битные блочные шифры) уязвимыми в долгоживущих HTTPS-сессиях.

Статистика

Для реальной атаки Sweet32 на 3DES (64-битные блоки):

Размер блокаРазмер блокаКоличество пакетовНеобходимый объем данныхКоличество блоков
8 byte64 bits~785GB~785GB~2^32 blocks

Реальная атака требует шифрования ~785 ГБ данных под одним и тем же ключом, поэтому она в первую очередь затрагивает долгоживущие HTTPS-соединения.

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