[go: up one dir, main page]

Skip to content

is a PoC for exploiting compression-based token leakage vulnerabilities (like CRIME attack)

License

Notifications You must be signed in to change notification settings

geniuszlyy/GenCRIMEExploit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 

Repository files navigation

EN

GenCRIMEExploit is a PoC for exploiting compression-based token leakage vulnerabilities (like CRIME attack). It attempts to guess the session token or sensitive data by leveraging the length of compressed responses from a target server.

Features

  • Fast token guessing using parallel threads
  • Adjustable charset for guessing
  • Custom HTTP headers support
  • Automatic retry mechanism for failed requests
  • Saves the discovered token to a file (optional)
  • Detailed logging of attack progress

Requirements

  • Python 3.x
  • Required libraries: requests, argparse, concurrent.futures, zlib

You can install the necessary dependencies using:

pip install requests

Usage

python main.py <url> <prefix> [--charset CHARSET] [--headers KEY=VALUE] [--threads THREAD_COUNT] [--timeout TIMEOUT] [--retries RETRIES] [--output OUTPUT_FILE]

Arguments

  • url: The target URL.
  • prefix: Known prefix for the token being guessed.
  • --charset: Set of characters to use for guessing (default: a-zA-Z0-9).
  • --headers: Additional HTTP headers as key-value pairs (format: key=value).
  • --threads: Number of concurrent threads for making requests (default: 10).
  • --timeout: Timeout for each HTTP request in seconds (default: 5).
  • --retries: Number of retry attempts for failed requests (default: 3).
  • --output: File to save the discovered token.

Example

python main.py https://example.com "session=" --charset abcdef123456 --headers "User-Agent=Mozilla/5.0" --threads 15 --timeout 10 --retries 5 --output token.txt

This example will attempt to guess a token with prefix "session=" at https://example.com using a charset of abcdef123456, with custom headers, 15 threads, 10 seconds timeout for requests, 5 retries, and will save the discovered token in token.txt.

Example Output

2024-10-01 12:00:00 - INFO - Текущий токен: session=xYz
2024-10-01 12:00:02 - INFO - Текущий токен: session=xYzA
2024-10-01 12:00:04 - INFO - Текущий токен: session=xYzA9
2024-10-01 12:00:06 - INFO - Обнаружен полный токен сессии: session=xYzA9=
Найдено значение токена: session=xYzA9=

RU

GenCRIMEExploit - это PoC для эксплуатации уязвимостей, связанных с утечкой токенов на основе компрессии (например, атака CRIME). Программа пытается угадать токен сессии или конфиденциальные данные, используя длину сжатых ответов от целевого сервера.

Возможности

  • Быстрое угадывание токена с использованием параллельных потоков
  • Настраиваемый набор символов для угадывания
  • Поддержка кастомных HTTP-заголовков
  • Автоматическая повторная отправка запросов при ошибках
  • Сохранение обнаруженного токена в файл (опционально)
  • Подробное логирование процесса атаки

Требования

  • Python 3.x
  • Необходимые библиотеки: requests, argparse, concurrent.futures, zlib

Вы можете установить необходимые зависимости с помощью:

pip install requests

Использование

python main.py <url> <prefix> [--charset CHARSET] [--headers KEY=VALUE] [--threads THREAD_COUNT] [--timeout TIMEOUT] [--retries RETRIES] [--output OUTPUT_FILE]

Аргументы

  • url: Целевой URL-адрес.
  • prefix: Известный префикс для угадываемого токена.
  • --charset: Набор символов для перебора (по умолчанию: a-zA-Z0-9).
  • --headers: Дополнительные HTTP-заголовки в формате key=value.
  • --threads: Количество параллельных потоков для выполнения запросов (по умолчанию: 10).
  • --timeout: Таймаут для каждого HTTP-запроса в секундах (по умолчанию: 5).
  • --retries: Количество попыток повторного запроса при ошибках (по умолчанию: 3).
  • --output: Файл для сохранения найденного токена.

Пример использования

python main.py https://example.com "session=" --charset abcdef123456 --headers "User-Agent=Mozilla/5.0" --threads 15 --timeout 10 --retries 5 --output token.txt

В этом примере программа пытается угадать токен с префиксом "session=" по адресу https://example.com, используя набор символов abcdef123456, кастомные заголовки, 15 потоков, 10-секундный таймаут для запросов, 5 повторов запросов и сохранит найденный токен в файл token.txt.

Пример вывода

2024-10-01 12:00:00 - INFO - Текущий токен: session=xYz
2024-10-01 12:00:02 - INFO - Текущий токен: session=xYzA
2024-10-01 12:00:04 - INFO - Текущий токен: session=xYzA9
2024-10-01 12:00:06 - INFO - Обнаружен полный токен сессии: session=xYzA9=
Найдено значение токена: session=xYzA9=