
Универсальный инструмент анализа вредоносного ПО.
Вы можете получить:
Qu1cksc0pe стремится получить еще больше информации о подозрительных файлах и помогает пользователю понять, на что способен этот файл.
python qu1cksc0pe.py --file suspicious_file --analyze
Инструменты, обычно используемые для обхода AMSI, включают:
AmsiOpenSession, который обычно используется в начале сеанса PowerShell для открытия контекста AMSI.
Путём исправления функции AmsiOpenSession для возврата кода ошибки (например, `0x80070005` для E_ACCESSDENIED), злоумышленник предотвращает установление сеанса AMSI.
Этот метод использует тот факт, что Windows AMSI опирается на хуки на уровне процесса.
Злоумышленники могут получить возможность вмешиваться в эти хуки с помощью внедрения кода, встроенного ассемблера или изменения таблиц указателей функций, что фактически отключает сканирование AMSI для всего процесса.
- Исправление **AmsiScanBuffer**:
Функция AmsiScanBuffer отвечает за сканирование содержимого на наличие вредоносных шаблонов.```bash
# Launch Web UI
python3 qu1cksc0pe.py --ui

03/03/2026
build_deb.sh): .deb post-install теперь включает загрузку JADX v1.5.3, установку Ollama и pip-установку pyOneNote, так что свежая система Kali/Parrot полностью готова к работе без ручной настройки. Зависимости: default-jre-headless, unzip, curl | wget; adb/strace/ltrace перемещены в Recommends (не блокируют установку на системах, где они отсутствуют).qu1cksc0pe.py, apkAnalyzer.py, emulator.py, pcap_analyzer.py и теперь используют вместо . Ранее под-анализаторы, запущенные внутри virtualenv, возвращались к системному Python и вызывали для каждой pip-установленной зависимости (puremagic, androguard, pyaxmlparser, …).02/03/2026
--console и Modules/console.py (интерактивный режим оболочки). Все возможности анализа полностью доступны через стандартные флаги CLI.libscan (qu1cksc0pe.py), setup_scr (windows_static_analyzer.py, apkAnalyzer.py) и 11 блоков else: pass без операций (qu1cksc0pe.py, apkAnalyzer.py, domainCatcher.py, powershell_analyzer.py). Все голые в защитах импорта заменены на .01/03/2026
--watch → Process Monitor) теперь использует чистый Python-движок перехвата Windows Debug API (Modules/windows_api_hooker.py) вместо Frida. Вызовы API перехватываются во время выполнения через программные точки останова INT3 с восстановлением флага трассировки single-step для повторной установки перехвата после каждого срабатывания. Для динамического анализа Windows не требуется зависимость от Frida.kernel32, ntdll, advapi32, ws2_32, wininet, user32 и shell32. Детали аргументов (пути к файлам, ключи реестра, адреса сокетов, имена хостов, коды VK, типы перехвата) извлекаются из контекста регистров x64 (RCX/RDX/R8/R9 + область теневого стека). Процессы, защищённые ACG (например, рендерер Chrome), регистрируются как перехваты write_failed без аварийного завершения.28/02/2026
--report и --ai. Все результаты анализа (URL, IP-адреса, DNS-запросы, подозрения на DGA, HTTP-запросы, имена хостов TLS SNI, дайджесты/совпадения JA3, интересные строки, анализ соединений, внешние IP-адреса, извлечённые исполняемые файлы) собираются в sc0pe_pcap_report.json и автоматически передаются анализатору ИИ.detect_dga_domains() (энтропия Шеннона + длина метки + эвристика соотношения цифр), analyze_connections() (обнаружение подозрительных/C2 портов + инвентаризация внешних IP), analyze_http_requests() (разбор HTTP с помощью dpkt, маркировка подозрительных User-Agent), extract_tls_sni() (ручное извлечение SNI на уровне байтов из TLS ClientHello).--report/--ai — вызывается с флагом , который пропускает интерактивный запрос подтверждения и извлекает файлы напрямую.25/02/2026
.lnk) через --analyze (Modules/lnk_analyzer.py). Разбирает двоичный формат MS-SHLLINK без внешних зависимостей: извлекает целевой путь, аргументы командной строки, рабочий каталог, расположение значка, временные метки (FILETIME), ShowCommand, горячую клавишу и сетевой ресурс. Обнаруживает подозрительные индикаторы (скрытое/свёрнутое окно, чрезмерно длинные аргументы, полезные нагрузки Base64, пути UNC, целевые папки temp/AppData, подделку значков) и двоичные файлы LOLBAS. Сканирование шаблонов по категориям (Execution / Persistence / Defense Evasion / Download/Network / Obfuscation) работает по полям и сообщает полное значение поля для каждого совпадения — без усечения контекстного окна. Включено сопоставление с правилами YARA.kimi-k2.5:cloud в multiple.conf) теперь всегда пробуется первой; обнаруженные локальные модели используются только как запасные. Ранее SC0PE_AI_SKIP_CLOUD_WHEN_LOCAL понижал настроенную модель в пользу локальных, что приводило к полному расходованию временного бюджета до достижения целевой модели.SC0PE_AI_HTTP_PROBE_TIMEOUT (который предназначен только для лёгкого опроса списка моделей). Вызовы генерации теперь правильно используют в качестве верхней границы.21/02/2026
mitre_attack, mitre_technique_count, mitre_api_match_count.Dangerous, Special, Info; отчёт JSON теперь включает permission_summary.Systems/Android/perms.json был расширен/нормализован современными разрешениями Android (включены дополнения Android 12+/13+).

А также другие дистрибутивы Linux, подобные Kali/Parrot
[!NOTE] Если у вас возникают проблемы с модулями Python, создание виртуального окружения Python (python_venv) должно их решить. Подробные инструкции по установке и устранению неполадок (зависимости, использование Docker, примечания для Windows) см. в документации обзора проекта. Выбор модели ИИ осуществляется вручную: установите
[Ollama] modelвSystems/Multiple/multiple.confна нужную модель.```bash
git clone --depth 1 https://github.com/CYB3RMX/Qu1cksc0pe
virtualenv -p python3 sc0pe_venv source sc0pe_venv/bin/activate
bash setup.sh
python qu1cksc0pe.py --install # Optional
dos2unix /usr/bin/qu1cksc0pe
docker build -t qu1cksc0pe . docker run -it --rm -v $(pwd):/data qu1cksc0pe:latest --file /data/suspicious_file --analyze
# Environment Variables
Вы можете изменить некоторые поведения анализатора через переменные окружения (полезно для CI, воспроизводимости или контроля размера/времени ожидания отчета).
**Пример для Linux/macOS (bash/zsh)**```bash
SC0PE_ANDROID_REPORT_DETAILED=1 python qu1cksc0pe.py --file app.apk --analyze --report
Пример Windows (PowerShell)```powershell $env:SC0PE_ANDROID_REPORT_DETAILED="1" python .\qu1cksc0pe.py --file app.apk --analyze --report
| Переменная | По умолчанию | Описание |
| :--- | :--- | :--- |
| `SC0PE_ANDROID_REPORT_DETAILED` | `0` | Анализатор Android делает JSON более подробным (сохраняет большие поля и более высокие лимиты). Включает больше деталей в раздел `resource_scan` и чаще сохраняет большие дублирующиеся поля, такие как `code_patterns`. |
| `SC0PE_WINDOWS_REPORT_DETAILED` | `0` | Анализатор Windows сохраняет списки API по категориям более подробно (вместо только уникальных имён API). |
| `SC0PE_AUTO_DECRYPT_CHAIN` | `0` | Анализатор документов: когда расшифровка документа Office успешна, автоматически повторно запускает анализ расшифрованного вывода (по возможности). |
| `SC0PE_AI_INTERESTING_PATTERNS_MAX_KEYS` | `25` | ИИ-анализатор: ограничивает количество ключей из `interesting_string_patterns`, включаемых в промпт LLM. |
| `SC0PE_AI_INTERESTING_PATTERNS_MAX_VALUES` | `30` | ИИ-анализатор: ограничивает размер списка на ключ `interesting_string_patterns` в промпте LLM. |
| `SC0PE_AI_INCLUDE_TEMP_EXCERPT` | `0` | ИИ-анализатор: включает сырой отрывок из `temp.txt` в промпт, если установлено `1` (по умолчанию — режим разбора/сводки без сырого отрывка). |
| `SC0PE_AI_TEMP_TXT_EXCERPT_CHARS` | `800` | ИИ-анализатор: ограничение по символам для сырого отрывка из `temp.txt` (используется при `SC0PE_AI_INCLUDE_TEMP_EXCERPT=1`). |
| `SC0PE_AI_TEMP_TXT_MAX_STRINGS` | `50` | ИИ-анализатор: ограничение количества значимых строк, выбираемых из разобранного `temp.txt`. |
| `SC0PE_AI_TEMP_TXT_MIN_LEN` | `6` | ИИ-анализатор: минимальная длина значимой строки, извлекаемой из `temp.txt`. |
| `SC0PE_AI_TEMP_TXT_MAX_LEN` | `180` | ИИ-анализатор: максимальная длина значимой строки, извлекаемой из `temp.txt`. |
| `SC0PE_AI_TEMP_PARSE_MAX_BYTES` | `2097152` | ИИ-анализатор: максимум байт для разбора из `temp.txt` при построении компактных доказательств. |
| `SC0PE_AI_TEMP_PARSE_MAX_LINES` | `12000` | ИИ-анализатор: максимум строк для разбора из `temp.txt`. |
| `SC0PE_AI_TEMP_SAMPLE_LINES` | `2500` | ИИ-анализатор: размер выборки, используемой для оценки значимых строк. |
| `SC0PE_AI_TEMP_IOC_CAP` | `40` | ИИ-анализатор: ограничение на количество кандидатов IoC, разобранных из `temp.txt`. |
| `SC0PE_AI_TEMP_IOC_PROMPT_MAX` | `20` | ИИ-анализатор: максимальное количество разобранных значений IoC каждого типа, отправляемых в промпт LLM. |
| `SC0PE_AI_MAX_REPORT_CHARS` | `180000` | ИИ-анализатор: порог для режима полного отчёта в промпте; отчёты большего размера автоматически сжимаются. |
| `SC0PE_AI_COMPACT_MAX_LIST_ITEMS` | `40` | ИИ-анализатор: лимит выборки списков в режиме компактного отчёта. |
| `SC0PE_AI_COMPACT_MAX_STR` | `220` | ИИ-анализатор: максимальная длина строки на поле в режиме компактного отчёта. |
| `SC0PE_AI_COMPACT_MAX_DEPTH` | `4` | ИИ-анализатор: ограничение глубины вложенности в режиме компактного отчёта. |
| `SC0PE_AI_OLLAMA_HTTP_TIMEOUT` | `60` | ИИ-анализатор: таймаут HTTP-вызова к Ollama (секунды). |
| `SC0PE_AI_HTTP_PROBE_TIMEOUT` | `20` | ИИ-анализатор: короткий таймаут проверки перед полным вызовом генерации HTTP (секунды). |
| `SC0PE_AI_OLLAMA_CLI_TIMEOUT` | `90` | ИИ-анализатор: таймаут вызова CLI Ollama (секунды). |
| `SC0PE_AI_TOTAL_BUDGET` | `120` | ИИ-анализатор: общий бюджет генерации с учётом повторных попыток/запасных вариантов (секунды). |
| `SC0PE_AI_OLLAMA_NUM_PREDICT` | `700` | ИИ-анализатор: стандартный бюджет токенов генерации на один вызов Ollama. |
| `SC0PE_AI_OLLAMA_RETRY_NUM_PREDICT` | `1400` | ИИ-анализатор: бюджет токенов генерации при повторной попытке, если вывод выглядит обрезанным. |
| `SC0PE_AI_OLLAMA_NUM_CTX` | `8192` | ИИ-анализатор: настройка контекстного окна Ollama. |
| `SC0PE_AI_DISABLE_THINK` | `1` | ИИ-анализатор: отправляет `think=false` (если поддерживается) и удаляет артефакты размышлений из отображаемого/сохранённого вывода. |
| `SC0PE_AI_ALLOW_MODEL_FALLBACK` | `1` | ИИ-анализатор: если `1`, может пробовать локально доступные модели Ollama, если настроенная модель недоступна/не работает. |
| `SC0PE_AI_SKIP_CLOUD_WHEN_LOCAL` | `1` | ИИ-анализатор: предпочитать локальные модели облачным, когда есть локальные варианты. |
| `SC0PE_AI_SKIP_CLOUD_CLI` | `1` | ИИ-анализатор: пропускать облачные модели при попытках запасного CLI. |
| `SC0PE_AI_MAX_MODEL_CANDIDATES` | `4` | ИИ-анализатор: максимальное количество моделей-кандидатов для перебора в цепочке запасных вариантов. |
| `SC0PE_AI_FILTER_WHITELIST_DOMAINS` | `1` | Санитайзер IoC ИИ: фильтровать легитимные/белые домены с помощью `Systems/Multiple/whitelist_domains.txt`. |
| `SC0PE_AI_ALLOW_SHORT_DOMAINS` | `0` | Санитайзер IoC: разрешать очень короткие домены SLD (отключено по умолчанию для снижения ложных срабатываний). |
| `SC0PE_AI_MIN_SLD_LEN` | `4` | Санитайзер IoC: минимальная длина регистрируемой метки для проверки домена. |
| `SC0PE_AI_ALLOW_FILELIKE_TLDS` | `0` | Санитайзер IoC: если `0`, фильтрует псевдодомены, похожие на файлы, например `sheet1.xml`. |
| `SC0PE_AI_KEEP_LOCAL_PATHS` | `0` | Санитайзер IoC: если `0`, удаляет пути локальной анализирующей машины из `file_paths`. |
| `SC0PE_DOC_AUTO_EXTRACT_MACROS` | `1` | Анализатор документов: автоматически извлекать обнаруженные макросы VBA/XLM в вывод отчёта (`0` отключает). |
| `SC0PE_REPORT_MAX_MACRO_CHARS` | `50000` | Анализатор документов: ограничение текста на макрос при сохранении извлечённого макроса в JSON-отчёт. |
| `SC0PE_EMAIL_DNSBL_FILTER_NOISY` | `1` | Анализатор электронной почты: фильтровать шумные DNSBL-провайдеры для снижения ложных срабатываний. |
| `SC0PE_EMAIL_DNSBL_ALLOW_UNKNOWN` | `0` | Анализатор электронной почты: включать/исключать DNSBL-срабатывания с неизвестной категорией. |
| `SC0PE_EMAIL_DNSBL_NOISY_PROVIDERS` | не задано | Анализатор электронной почты: список дополнительных DNSBL-провайдеров, разделённых запятыми, которые следует считать шумными. |
| `SC0PE_AUTO_CLEANUP_ATTACHMENTS` | не задано | Анализатор электронной почты: установить `1` для автоудаления, `0` для никогда не удалять, не задано — для интерактивного запроса. |
| `OLLAMA_HOST` | `http://127.0.0.1:11434` | Бэкенд ИИ-анализа отчётов (Ollama). Установите, если Ollama удалён или на другом хосте/порту. |
| `JAVA_HOME` | не задано | Анализатор Android: помогает найти среду выполнения Java для JADX. Установите, если Java установлена, но не обнаружена. |
# Статический анализ
## Обычный анализ
<i><b>Описание</b>: Вы можете выполнить базовый анализ и сортировку образцов.</i>
<b>Использование</b>: ```python qu1cksc0pe.py --file suspicious_file --analyze```<br>

## Анализ ресурсов
<i><b>Описание</b>: С помощью этой функции вы можете анализировать активы (ресурсы) заданного файла. Также вы можете обнаруживать и извлекать встроенные полезные нагрузки из образцов вредоносного ПО, таких как AgentTesla, Formbook и т.д.</i>
<b>Эффективно против</b>:
- .NET Исполняемые файлы
<b>Использование</b>: ```python qu1cksc0pe.py --file suspicious_file --resource```<br>
> [!NOTE]
> Сканирование ресурсов Android APK было перенесено в анализатор Android. Используйте:
> `python qu1cksc0pe.py --file app.apk --analyze --report`
> JSON-отчёт содержит `resource_scan`. Установите `SC0PE_ANDROID_REPORT_DETAILED=1`, чтобы сохранить больше деталей в отчёте.

## Сканирование хеша
<i><b>Описание</b>: Вы можете проверить, присутствует ли хеш-значение заданного файла во встроенной базе хешей вредоносного ПО. Также можно сканировать каталоги с помощью этой функции.</i>
<b>Использование</b>: ```python qu1cksc0pe.py --file suspicious_file --hashscan```<br>

## Сканирование папки
<b>Поддерживаемые аргументы</b>:
- ```--hashscan```
- ```--packer```
<b>Использование</b>: ```python qu1cksc0pe.py --folder FOLDER --hashscan```<br>

## VirusTotal
<b>Содержимое отчёта</b>:
- ```Категории угроз```
- ```Обнаружения```
- ```Отчёты CrowdSourced IDS```
<b>Использование для --vtFile</b>: ```python qu1cksc0pe.py --file suspicious_file --vtFile```<br>
> [!NOTE]
> В веб-интерфейсе пресеты `Стандартный анализ`, `Документ` и `Архив` также выполняют поиск файла в VirusTotal в фоне и показывают результат на странице отчёта.

## Сканирование документов
<i><b>Описание</b>: Эта функция позволяет выполнять глубокую проверку заданных файлов документов. Например, вы можете легко обнаружить и извлечь возможные вредоносные ссылки или встроенные эксплойты/полезные нагрузки из подозрительного файла документа!</i>
<b>Эффективно против</b>:
- Документы Word (.doc, .docm, .docx)
- Документы Excel (.xls, .xlsm, .xlsx)
- Формат переносимых документов (.pdf)
- Документы OneNote (.one)
- Документы в формате Rich Text (.rtf)
- Семейство VBScript/VBA (.vbs, .vbe, .vba, .vb, .bas, .cls, .frm)
<b>Использование</b>: ```python qu1cksc0pe.py --file suspicious_document --docs```<br>

## Сканирование пакетных сценариев (.bat/.cmd)
<i><b>Описание</b>: Анализируйте пакетные сценарии Windows на предмет подозрительных команд, закодированных полезных нагрузок, URL/доменов/IP-адресов и совпадений с правилами.</i>
<b>Использование</b>: ```python qu1cksc0pe.py --file suspicious_script.bat --analyze --report```<br>
### Извлечение встроенных файлов/эксплойтов

## Сканирование архивов
<i><b>Описание</b>: С помощью этой функции вы можете выполнять проверки на наличие подозрительных файлов в архивных файлах.</i>
<b>Эффективно против</b>:
- ZIP
- RAR
- ACE
<b>Использование</b>: ```python qu1cksc0pe.py --file suspicious_archive_file --archive```<br>
<b>С отчётом</b>: ```python qu1cksc0pe.py --file suspicious_archive_file --archive --report```<br>
<b>С поддержкой ИИ</b>: ```python qu1cksc0pe.py --file suspicious_archive_file --archive --ai```
> [!NOTE]
> Поддержка архивов ACE требует установки `7z`/`7zz` (скрипты установки устанавливают их в поддерживаемых системах).

## Анализатор сигнатур файлов
<i><b>Описание</b>: С помощью этой функции вы можете обнаруживать и извлекать встроенные исполняемые файлы (.exe, .elf) из заданного файла. Также можно анализировать большие файлы (даже 1 ГБ и выше) и извлекать из них образцы реального вредоносного ПО (анализ «накачанных» файлов).</i>
<b>Использование</b>: ```python qu1cksc0pe.py --file suspicious_file --sigcheck```<br>

### Извлечение файлов (File Carving)

## Извлечение техник MITRE ATT&CK
<i><b>Описание</b>: Привязка к MITRE ATT&CK автоматически генерируется во время статического анализа на основе обнаруженных API/функций/шаблонов.</i>
<b>Эффективно против</b>:
- Исполняемые файлы Windows
- Исполняемые файлы Linux
<b>Использование</b>: ```python qu1cksc0pe.py --file suspicious_file --analyze```<br>

## Классификация рисков разрешений Android
<i><b>Описание</b>: Анализ разрешений Android теперь классифицирует разрешения как `Опасные`, `Особые` или `Информационные` и записывает сводку `permission_summary` в JSON-отчёты.</i>
<b>Использование</b>: ```python qu1cksc0pe.py --file suspicious_app.apk --analyze --report```<br>
> [!NOTE]
> На странице отчёта веб-интерфейса разрешения Android отображаются в отдельном разделе со счётчиками и значками состояния каждого разрешения.
## Определение языка программирования
<i><b>Описание</b>: Вы можете получить информацию о языке программирования из заданного файла.</i>
<b>Использование</b>: ```python qu1cksc0pe.py --file suspicious_executable --lang```<br>

## Интерактивная оболочка
<i><b>Описание</b>: Вы можете использовать Qu1cksc0pe в режиме командной строки.</i>
<b>Использование</b>: ```python qu1cksc0pe.py --console```<br>

# Динамический анализ
## Анализ Android-приложений
> [!NOTE]
> Необходимо подключить виртуальное или физическое устройство к компьютеру.
<br><b>Использование</b>: ```python qu1cksc0pe.py --watch```<br>
https://github.com/user-attachments/assets/7b27abb9-f18e-4611-8bdd-cd65106b5cf0
## Динамический анализ Linux
<i><b>Описание</b>: Процесс динамического анализа Linux реализован в виде меню и позволяет выбрать эмуляцию или мониторинг процессов в реальном времени.</i>
<br><b>Использование</b>: ```python qu1cksc0pe.py --watch```<br>
После выбора Linux:
- Вариант `1`: Эмуляция двоичного файла (изолированная среда).
- Вариант `2`: Мониторинг PID.
Примечания:
- Мониторинг PID принимает как числовой PID, так и имя процесса.
- Интерактивные подсказки Linux поддерживают автодополнение по TAB (выбор, путь, PID/имя).
- Порядок запасных вариантов эмуляции: Docker SDK -> Docker CLI -> хост `qemu` (если Docker недоступен).
## Анализ процессов Windows
<br><b>Использование</b>: ```python qu1cksc0pe.py --watch```<br>
https://github.com/CYB3RMX/Qu1cksc0pe/assets/42123683/a2c84b8f-c12c-47ac-96e9-c345aeda1f54
# Ссылки
- <a href="https://www.linkedin.com/posts/mehmetalikerimoglu_qu1cksc0pe-all-in-one-static-malware-analysis-activity-6853239604439523328-B9dN/?trk=public_profile_like_view&originalSubdomain=tr">The Cyber Security Hub</a>
- <a href="https://www.kitploit.com/2021/12/top-20-most-popular-hacking-tools-in.html">Kitploit - Top 20 Most Popular Hacking Tools in 2021</a>
- <a href="https://www.csirt.rnsi.mai.gov.pt/content/infosec-news-20211011">CSIRT.MAI</a>
- <a href="https://vulners.com/kitploit/KITPLOIT:8846405132281597137">Vulners</a>
- <a href="https://www.redpacketsecurity.com/qu1cksc0pe-all-in-one-static-malware-analysis-tool/">RedPacket Security</a>
- <a href="https://cert.bournemouth.ac.uk/qu1cksc0pe-all-in-one-static-malware-analysis-tool/">Bournemouth University - CERT</a>
- <a href="https://github.com/Ignitetechnologies/Mindmap/blob/main/Forensics/Digital%20Forensics%20Tools%20HD.png">Hacking Articles - Digital Forensics Tools Mindmap</a>
- <a href="https://twitter.com/hack_git/status/1666867995036057602">HackGit - Twitter Post</a>
- <a href="https://twitter.com/DailyDarkWeb/status/1668966526358286336">Daily Dark Web - Twitter Post</a>
- <a href="https://isc.sans.edu/diary/The+Importance+of+Malware+Triage/29984">SANS ISC - Blog Post</a>
- <a href="https://korben.info/qu1cksc0pe-analyse-logiciels-malveillants.html">Korben - Blog Post</a>
- <a href="https://www.heise.de/ratgeber/Malware-Analysetool-Schadpotenzial-von-Daten-mit-Qu1cksc0pe-ermitteln-10001929.html">heise online - Blog Post</a>
## История звёзд
[](https://www.star-history.com/#CYB3RMX/Qu1cksc0pe&type=date&legend=top-left)
| Files | Analysis Type |
|---|
| Исполняемые файлы Windows (.exe, .dll, .msi, .bin) | Статический, Динамический |
| Исполняемые файлы Linux (.elf, .bin) | Статический, Динамический |
| Исполняемые файлы MacOS (mach-o) | Статический |
| Файлы Android (.apk, .jar, .dex) | Статический, Динамический(пока только .apk) |
| Бинарные файлы Golang (Linux) | Статический |
| Файлы документов | Статический |
| Семейство VBScript/VBA (.vbs, .vbe, .vba, .vb, .bas, .cls, .frm) | Статический (--docs) |
| HTML-документы (.html, .htm) | Статический (--analyze) |
| JavaScript (.js) | Статический (--analyze) |
| HTA / HTML-приложение (.hta) | Статический (--analyze) |
| Пакетные скрипты Windows (.bat, .cmd) | Статический (--analyze) |
| Ярлык Windows (.lnk) | Статический (--analyze) |
| Архивные файлы (.zip, .rar, .ace) | Статический |
| Файлы PCAP (.pcap) | Статический |
| Скрипты Powershell | Статический |
| Файлы электронной почты (.eml) | Статический |
email_analyzer.pysys.executableshutil.which("python3")ModuleNotFoundErrorapkAnalyzer.py — resolve_decompiler_path() и is_valid_jadx_launcher() теперь перехватывают PermissionError при сканировании директории /opt/Qu1cksc0pe/jadx/lib/, используя проверку os.access() в качестве запасного варианта. Ранее инструмент завершал работу с необработанным исключением разрешения при запуске от обычного пользователя, если JADX был установлен от root.archiveAnalyzer.py — архивы RAR5 (и архивы RAR на системах с unrar-free) возвращали пустой список файлов, так как unrar-free не поддерживает RAR5. Добавлен двухэтапный запасной вариант: (1) попробовать rarfile с лучшим доступным экстрактором; (2) если infolist() пуст, использовать 7z l (только список, пароль не требуется), разобранный с помощью нового вспомогательного метода _parse_7z_list() в обёртку ListOnlyArchive. Запароленные архивы теперь отображаются без зависания — read() возвращает пустые байты, поэтому сканирование содержимого пропускается корректно.apt install, напоминающее пользователю выполнить ollama signin (функции ИИ) и qu1cksc0pe --key_init (настройка API-ключа VirusTotal).except:except ImportErrorModules/android_dynamic_analyzer.py отсутствовал import configparser — в Windows поиск пути ADB (adb_conf = configparser.ConfigParser()) вызывал бы NameError во время выполнения. Импорт добавлен.Modules/installer.sh): добавлены set -euo pipefail, проверка количества и корректности аргументов, проверка целостности исходной директории, валидация системного пользователя (отклоняет root как целевого пользователя), проверки зависимостей python3/pip3, обнаружение перезаписи с запросом подтверждения, откат по trap ERR при сбое, исправлена ошибка cp -r, которая вкладывала директорию внутрь /opt/Qu1cksc0pe, если целевая директория уже существовала, pip теперь выполняется от имени целевого пользователя (sudo -u) вместо root, dos2unix защищён проверкой command -v, деинсталлятор требует подтверждения и сообщает, если ничего не установлено..animations/ (GIF-демо, ~80 МБ во всех исторических версиях) и RansomWare.WannaCry (тестовый образец). Полный размер клонирования уменьшен с ~110 МБ до ~5 МБ.frida больше не требуется для динамического анализа Windows. Он по-прежнему используется только для динамического анализа Android.strace/ltrace вместо Frida для трассировки системных вызовов и вызовов библиотек. strace -f автоматически отслеживает порождённые дочерние процессы; ltrace используется как запасной вариант, если strace недоступен. Зависимость от Frida и скрипт sc0pe_linux_dynamic.js полностью удалены.\372) удаляются перед проверкой на печатные символы, поэтому данные IPC через pipe больше не просачиваются в таблицу системных вызовов.setup.sh: strace и ltrace теперь устанавливаются автоматически как системные зависимости во время настройки.Systems/Linux/linux_trace_list.json (остатки определений системных вызовов эпохи Frida) и Modules/mitre.py (устаревшая обёртка, заменённая интегрированным статическим анализом Windows).sigChecker.pyauto_extractpuremagic), архитектуру, подсистему, временную метку компиляции, хеш импорта, энтропию по секциям с флагом упаковки, подозрительные импорты Win32 API и встроенные строки IoC (URL, IP-адреса, адреса электронной почты, извлечённые из сырых байтов).extracted_ips удаляется (заменён на external_ips), а http_requests фильтруется только по хостам, не входящим в белый список, для уменьшения шума.andro_familydetect.py получил метод SourceScan(), который сканирует декомпилированные исходные файлы в TargetAPK/sources/ на соответствие SourcePatterns, определённым в family.json. Три новых семейства добавлены в Systems/Android/family.json: Cerberus, Anubis, EventBot (шаблоны, полученные из опубликованных правил YARA).http_requests и suspicious_connections отображаются как таблицы; данные сортировки carved_executables отображаются в структурированных панелях (базовая информация KV, таблица секций PE, список подозрительных импортов, списки встроенных IoC) вместо сырых строковых представлений словарей.magic.from_file().SC0PE_AI_OLLAMA_HTTP_TIMEOUTstatistics_method() полностью пропускался. Поля, специфичные для PE (Time Date Stamp, IMPHASH), корректно опускаются, если файл не является отдельным PE..html, .htm), JavaScript (.js) и HTA/HTML Application (.hta) через --analyze. Анализ выполняется новым модулем Modules/html_script_analyzer.py (извлечён из document_analyzer.py). Анализ HTML/JS охватывает шаблоны вредоносного кода, обфускацию, сетевые индикаторы, выполнение, оболочку/Node.js, файловую систему и индикаторы персистентности с подсказками по декодированию Base64 и сканированием YARA. Анализ HTA выполняет полные проверки на уровне HTML (шаблоны вредоносного кода, URL, iframe, PowerShell) плюс сканирование шаблонов встроенных блоков скриптов с автоматическим определением языка VBScript/JScript. Эти типы файлов не поддерживаются --docs.qu1cksc0pe_decoded_b64_values.txtSystems/Multiple/whitelist_domains.txt (включено по умолчанию).--archive --report) и анализ отчёта с помощью ИИ (--archive --ai).