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

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

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

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

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

Категории

Все категории
Loading categories
gv_decryptor — Инструмент восстановления дампа Gallery Vault с автоматическим обнаружением, выводом ключей и автоматическим восстановлением медиафайлов. | Kitploit
Инструменты/GitHubGitHub/caveeroo/gv_decryptor
Безопасность AndroidИнструменты шифрования/дешифрованияОбратная инженерияФорензикаМобильная криминалистикаВосстановление ДанныхЦифровая криминалистикаКриптография
GitHubcaveeroo/gv_decryptor

gv_decryptor

Инструмент восстановления дампа Gallery Vault с автоматическим обнаружением, выводом ключей и автоматическим восстановлением медиафайлов.

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

Популярное

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

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

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

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

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

Gallery Vault Decryptor

Инструмент восстановления для ресурсов, зашифрованных приложением Gallery Vault (ThinkYeah) для Android. Он поддерживает структуру контейнера V2, описанную ниже, и не требует PIN-кода Gallery Vault.

Восстанавливайте только те данные, которыми вы владеете или которые уполномочены проверять.

Требования

  • Python 3.10 или новее
  • PyCryptodome для операций DES в этом формате
  • prompt-toolkit для терминального интерфейса

Установите зависимости времени выполнения:

root@kitploit:~
python3 -m pip install -r requirements.txt

Для разработки и тестов:

root@kitploit:~
python3 -m pip install -r requirements-dev.txt
ruff format --check .
ruff check .
python3 -m pytest

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

Интерактивный терминальный интерфейс

root@kitploit:~
python3 gv_tui.py

Выберите каталог дампа или отдельный зашифрованный файл, проверьте каталог вывода и нажмите F5 или выберите Recover. F10 запрашивает безопасную остановку во время активного восстановления и завершает работу в режиме ожидания.

Умное обнаружение ищет каталоги с именами вида .galleryvault_DoNotDelete_123 и обрабатывает их каталог files. Отключите его, чтобы проверить каждый файл в выбранном пути.

Пакетный CLI

root@kitploit:~
python3 gv_decryptor.py /path/to/dump --out /path/to/output

Полезные параметры:

root@kitploit:~
--manual, --scan-all  Сканировать все файлы вместо обнаружения репозиториев
--no-recursive        Сканировать или обнаруживать только на верхнем уровне
--overwrite           Заменять существующие восстановленные файлы
--verbose             Показывать пропущенные файлы и подробные счётчики статусов

Отдельный зашифрованный файл также принимается:

root@kitploit:~
python3 gv_decryptor.py encrypted_asset --manual

Если --out опущен, восстановленные файлы сохраняются в INPUT_recovered. Дерево входных файлов сохраняется внутри этого каталога. Существующие файлы не перезаписываются, если не указан --overwrite, а вывод записывается атомарно, поэтому неудачное или отменённое восстановление не оставляет частично восстановленный файл.

Коды выхода CLI:

  • 0: восстановлен хотя бы один ресурс, и ни один кандидат не завершился с ошибкой
  • 1: не восстановлено ни одного ресурса или хотя бы один кандидат завершился с ошибкой
  • 2: недопустимая конфигурация ввода или вывода

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

Расширение восстановленного файла выбирается по сигнатуре файла. Встроенный детектор распознаёт PNG, JPEG, GIF, WebP, MP4, MOV, 3GP, HEIC/HEIF, AVIF, MP3, WAV, Ogg, AVI, Matroska, PDF и ZIP. Неизвестное содержимое записывается как .bin.

Как это работает

В поддерживаемом формате Gallery Vault V2 PIN-код защищает пользовательский интерфейс приложения; полезная нагрузка файла использует позиционно-зависимое XOR-преобразование. Её ключ для каждого файла хранится в контейнере после шифрования ключом DES, полученным из констант, используемых приложением.

Упрощённая структура контейнера:

root@kitploit:~
┌──────────────────── Gallery Vault V2 container ────────────────────┐
│ Thumbnail prefix │ Encrypted payload                               │
├────────────────────────────────────────────────────────────────────┤
│ Inner marker  >>tyfs>>                                             │
│ Optional swapped payload block                                     │
├─────────────────────────── Tail metadata ──────────────────────────┤
│ Thumbnail length              8 bytes                              │
│ Payload/marker boundary       8 bytes                              │
│ Layout selector               1 byte                               │
│ DES-encrypted XOR key         variable, block aligned              │
│ Encrypted-key length          8 bytes                              │
│ Metadata                      variable                             │
│ Metadata length               8 bytes                              │
│ Version field                 2 bytes (01 01)                      │
├────────────────────────────────────────────────────────────────────┤
│ End marker  <<tyfs<<                                               │
└────────────────────────────────────────────────────────────────────┘
                              │
                              ▼
      validate offsets → recover XOR key → assemble payload
                              │
                              ▼
                    stream recovered asset

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

root@kitploit:~
plain[i] = encrypted[i] XOR (i & 0xff) XOR key[i mod key_length]

Файлы преобразуются порциями, что ограничивает использование памяти для больших видео. Умное обнаружение и сканирование всех файлов используют одну и ту же реализацию в CLI и TUI.

Совместимость и устранение неполадок

  • UNSUPPORTED_VERSION означает, что файл содержит маркеры Gallery Vault, но не содержит поддерживаемое поле версии V2.
  • CORRUPT_STRUCTURE означает, что маркер, длина или граница полезной нагрузки недействительны.
  • NOT_GV означает, что конечный маркер Gallery Vault не найден вблизи конца файла.
  • EXISTS означает, что целевой файл был сохранён; используйте --overwrite только когда замена намеренная.
  • Используйте --verbose при сканировании смешанного каталога, чтобы увидеть подробные статусы.

Gallery Vault имел несколько выпусков и структур хранения. Совместимость ограничена файлами, соответствующими структуре V2 выше; сохраняйте исходные зашифрованные данные, пока восстановленные файлы не будут проверены.

Отказ от ответственности

Этот инструмент предоставляется только в образовательных и криминалистических целях. Автор не несёт ответственности за неправомерное использование. Всегда убедитесь, что у вас есть надлежащее разрешение перед расшифровкой данных, которые вам не принадлежат.

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