Сканер скрытых меток и угроз в Python-коде
Desktop scanner for hidden marks and threats in Python code
🇷🇺 Русский ·
🇬🇧 English ·
·
·
Инквизитор — настольная программа, которая проверяет Python-код на то, что не видно глазами: невидимые символы Юникода, стеганографические вставки, поддельные «похожие» буквы, зашитые секреты и обфусцированный/опасный код. Удобно перед тем, как запускать или публиковать чужой код.
- Невидимые символы Юникода — zero-width, управление направлением текста (bidi / Trojan Source, U+202E), tag-символы (ASCII-контрабанда), селекторы начертания.
- Стеганография — расшифровывает скрытые сообщения в невидимых символах несколькими схемами; распознаёт метки автора.
- Гомоглифы — слова со смешанными алфавитами (например, латиница + кириллическая «а»).
- Секреты — ключи AWS, токены Telegram, Stripe, GitHub, Google, Slack, приватные ключи, JWT и обобщённые присваивания паролей/токенов.
- Закодированные строки — длинные base64/hex.
- Водяные знаки —
__author__, копирайты, метки в комментариях. - Опасный код —
exec/eval/compile, сетевые вызовы, запуск системных команд (анализ дерева разбора, AST).
- Отчёт-«светофор»: 🟢 чисто · 🟡 замечания · 🔴 угрозы.
- Экспорт отчёта в HTML и текст; очистка файла от невидимых меток.
- Тёмная тема, перетаскивание файла/папки, переключение RU/EN.
- Движок без зависимостей (только стандартная библиотека) — работает и в консоли. Графический интерфейс — на PyQt6.
git clone https://github.com/andryhasayan-source/inkvizitor.git
cd inkvizitor
pip install -r requirements.txt
python main.pyПроверка одного файла из консоли (код возврата 0 — чисто, 1 — есть угрозы):
python main.py путь/к/файлу.pybuild.batГотовый файл появится в dist\Inkvizitor.exe. Зависимости (PyQt6, PyInstaller) ставятся
автоматически.
SHASH|shashevpro.ru|2026-06-18|FD845584
└─┬─┘ └─────┬─────┘ └────┬───┘ └──┬───┘
магия домен дата CRC32
Инквизитор обнаруживает такие метки (своя метка — «инфо», чужая — «средняя»). Само создание меток выполняется отдельным инструментом.
MIT © 2026 ShashevPro · shashevpro.ru · vk.com/andrey_shashev
Inquisitor is a desktop tool that scans Python code for what the eye cannot see: invisible Unicode characters, steganographic payloads, look-alike (homoglyph) letters, hard-coded secrets, and obfuscated or dangerous code. Handy before you run or publish someone else's code.
- Invisible Unicode — zero-width characters, bidirectional override (Trojan Source, U+202E), tag characters (ASCII smuggling), variation selectors.
- Steganography — decodes hidden messages embedded in invisible characters using several schemes; recognizes author marks.
- Homoglyphs — mixed-script words (e.g. Latin with a Cyrillic "а").
- Secrets — AWS keys, Telegram / Stripe / GitHub / Google / Slack tokens, private keys, JWTs and generic password/token assignments.
- Encoded strings — long base64 / hex literals.
- Watermarks —
__author__, copyrights, marks in comments. - Dangerous code —
exec/eval/compile, network calls, shell commands (AST analysis).
- Traffic-light report: 🟢 clean · 🟡 notes · 🔴 threats.
- Export the report to HTML and text; clean a file of invisible marks.
- Dark theme, drag-and-drop a file/folder, RU/EN switch.
- Dependency-free engine (standard library only) — runs headless too. The GUI uses PyQt6.
git clone https://github.com/andryhasayan-source/inkvizitor.git
cd inkvizitor
pip install -r requirements.txt
python main.pyScan a single file from the console (exit code 0 = clean, 1 = threats found):
python main.py path/to/file.pybuild.batThe result appears at dist\Inkvizitor.exe. Dependencies (PyQt6, PyInstaller) are
installed automatically.
SHASH|shashevpro.ru|2026-06-18|FD845584
Inquisitor only detects such marks (own mark → "info", foreign → "medium"). Creating marks is done by a separate tool.
MIT © 2026 ShashevPro · shashevpro.ru · vk.com/andrey_shashev

