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

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

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

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

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

Категории

Все категории
Loading categories
hotpot — Простой и безопасный инструмент командной строки для управления кодами двухфакторной аутентификации на основе TOTP. | Kitploit
Инструменты/GitHubGitHub/yen223/hotpot
Аутентификация и авторизацияУтилиты общего назначенияВзлом паролейИнструменты шифрования/дешифрованияКонфиденциальностьАутентификация
GitHubyen223/hotpot

hotpot

Простой и безопасный инструмент командной строки для управления кодами двухфакторной аутентификации на основе TOTP.

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

Популярное

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

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

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

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

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

Hotpot 🍲

Демонстрация работы Hotpot

Authy / Google Authenticator для командной строки.

Hotpot — это простая и безопасная утилита командной строки для управления TOTP-кодами двухфакторной аутентификации. Hotpot безопасно хранит ваши секреты 2FA в системной связке ключей и генерирует одноразовые пароли по времени, когда они вам нужны.

Создана на Rust для безопасности, производительности и надежности.

Возможности

  • Безопасное хранение с использованием системной связки ключей (Keychain/libsecret/Credential Manager)
  • Генерация TOTP (RFC 6238) с настраиваемыми алгоритмами (SHA1/SHA256/SHA512)
  • Интерактивная панель с кодами в реальном времени, индикаторами прогресса и нечетким поиском
  • Копирование одним нажатием в буфер обмена с визуальной обратной связью
  • Экспорт QR-кода для удобной настройки мобильного приложения
  • Захват скриншота (macOS) для импорта QR-кодов
  • Быстрый и отзывчивый терминальный интерфейс с плавными анимациями
  • Нечеткий поиск для быстрого поиска учетных записей

Установка

Клонируйте репозиторий и выполните:

root@kitploit:~
cargo install --path . --locked

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

Добавление новой учетной записи

root@kitploit:~
hotpot add <account-name>

Вас попросят ввести секрет Base32 в защищенном режиме.

Пример:

root@kitploit:~
hotpot add github
Enter the Base32 secret: ********

Добавление из изображения QR-кода (macOS)

root@kitploit:~
hotpot --load-image /path/to/qr-code.png

Или используйте интерактивный захват скриншота в панели, нажав [A] затем [S].

Интерактивная панель

Просто запустите hotpot, чтобы открыть интерактивную панель, где вы можете:

  • Просматривать все TOTP-коды в реальном времени с плавными индикаторами прогресса
  • Навигировать стрелками вверх/вниз
  • Копировать коды нажатием Enter (отображается индикатор "скопировано")
  • Искать, нажав [F] и вводя текст (нечеткое совпадение)
  • Добавлять учетные записи, нажав [A], затем выберите [M]ануально или [S]криншот (macOS)
  • Удалять учетные записи, нажав [D] (с подтверждением)
  • Экспортировать QR-коды, нажав [E] для настройки мобильного приложения
  • Выйти с помощью 'q', 'Esc' или Ctrl+C

Панель автоматически обновляется каждые 250 мс и корректно обрабатывает изменение размера терминала.

Генерация одного кода

root@kitploit:~
hotpot code <account-name>

Пример:

root@kitploit:~
hotpot code github

Удаление учетной записи

root@kitploit:~
hotpot delete <account-name>

Экспорт QR-кода

Вы можете экспортировать QR-код для учетной записи либо через панель (нажав [E]), либо с помощью команды:

root@kitploit:~
hotpot export-qr --name <account-name>

Это отобразит QR-код в терминале, который можно отсканировать приложениями-аутентификаторами.

Режим хранения в файле

Для переносимых конфигураций или когда доступ к связке ключей невозможен, вы можете использовать флаг --file для хранения учетных записей в JSON-файле вместо защищенной связки ключей.

root@kitploit:~
# Интерактивная панель с файловым хранилищем
hotpot --file ~/.config/hotpot/accounts.json

# Добавление учетной записи в файл
hotpot --file ./my-accounts.json add work-account

# Генерация кода из учетной записи в файле
hotpot --file ./my-accounts.json code work-account

# Удаление учетной записи из файла
hotpot --file ./my-accounts.json delete work-account

Сценарии использования файлового хранилища:

  • Переносимые конфигурации: храните учетные записи в файле, который можно синхронизировать или резервировать
  • Серверные среды: используйте, когда службы связки ключей недоступны
  • Разработка/Тестирование: изолируйте тестовые учетные записи от защищенного хранилища
  • Совместное использование команд: делитесь конфигурациями учетных записей (обеспечьте безопасность файла)

Замечание по безопасности: Файловое хранилище сохраняет секреты в виде plaintext JSON. Убедитесь, что установлены правильные права доступа (600), и рассмотрите возможность шифрования файла для конфиденциальных сред.

Безопасность

Хранилище по умолчанию (защищенное): Hotpot хранит все секреты в системной связке ключей:

  • macOS: Keychain
  • Linux: Secret Service API/libsecret
  • Windows: Windows Credential Manager

Файловое хранилище: При использовании флага --file учетные записи сохраняются в JSON-файл по указанному пути. Файл создается с соответствующими правами доступа (600), а директории создаются автоматически при необходимости. Этот режим полезен для переносимых конфигураций или когда доступ к связке ключей невозможен.

Разработка

Сборка из исходников

  1. Убедитесь, что у вас установлен Rust
  2. Клонируйте репозиторий
  3. Выполните:
root@kitploit:~
cargo build --release

Бинарный файл будет доступен по пути target/release/hotpot

Запуск тестов

Проект включает комплексные модульные тесты, покрывающие основную функциональность:

root@kitploit:~
cargo test

Покрытие тестов включает:

  • Генерацию и проверку TOTP-кодов
  • Логику фильтрации и поиска учетных записей
  • Парсинг и проверку QR-кодов
  • Управление состоянием панели
  • Обработку ввода и переключение режимов

Команды для разработки

root@kitploit:~
# Запуск в режиме разработки
cargo run

# Запуск с определенными аргументами
cargo run -- add github

# Тестирование с файловым хранилищем
cargo run -- --file test-accounts.json add test-account


# Проверка качества кода
cargo clippy

# Быстрая проверка компиляции
cargo check

Архитектура

Hotpot построен с модульной архитектурой, ориентированной на безопасность и удобство сопровождения:

  • main.rs: CLI-интерфейс и управление хранилищем
  • totp.rs: Реализация алгоритма TOTP (RFC 6238) с комплексным покрытием тестами
  • dashboard.rs: Интерактивный терминальный интерфейс с обновлениями в реальном времени и обширными модульными тестами
  • lib.rs: Общая обработка ошибок и вспомогательные утилиты

Ключевые зависимости

  • Безопасность и хранение: keyring, base32, hmac, sha1/sha2
  • CLI и терминал: clap, crossterm, rpassword
  • Интерактивные функции: fuzzy-matcher, qrcode, arboard
  • Обработка данных: serde, serde_json, url, urlencoding
  • Обработка изображений: , (детектирование QR-кодов)

Лицензия

Лицензия MIT

Вклад

Вклад приветствуется! Не стесняйтесь отправлять Pull Request.

Качество кода

Проект поддерживает высокие стандарты качества кода:

  • Комплексные модульные тесты (выполните cargo test)
  • Линтинг с Clippy (выполните cargo clippy)
  • Хорошо документированные функции и модули
  • Безопасное программирование с правильной обработкой ошибок

Недавние улучшения

  • Улучшенная панель: Рефакторинг UI-кода для лучшей поддерживаемости и производительности
  • Комплексное тестирование: Добавлено более 25 модульных тестов, покрывающих основную функциональность
  • Улучшенный UX: Добавлена визуальная обратная связь для скопированных кодов и плавные индикаторы прогресса
  • Качество кода: Выделены вспомогательные функции и уменьшено дублирование кода
Скачать инструмент
image
rqrr