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

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

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

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

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

Категории

Все категории
Loading categories
Anvil — Anvil — это инструмент оценки поверхности атаки для толстых клиентских приложений Windows, ориентированный в первую очередь на анализ в рантайме. Он создан для специалистов по тестированию на проникновение и исследователей безопасности, проводящих целевые оценки безопасности приложений. Инструмент охватывает несколько классов атак за один целевой запуск. | Kitploit
Инструменты/GitHubGitHub/shellkraft/anvil
Повышение привилегийРазведкаАнализ уязвимостейЭксплуатацияПост-эксплуатацияТестирование на ПроникновениеАнализ Бинарных ФайловRed Teaming
GitHubshellkraft/anvil

Anvil

Репозиторий
374166 месяцев назадПроверено Kitploit

Популярное

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

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

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

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

Смотреть все инструменты →

Описание

Anvil — это инструмент оценки поверхности атаки для толстых клиентских приложений Windows, ориентированный в первую очередь на анализ в рантайме. Он создан для специалистов по тестированию на проникновение и исследователей безопасности, проводящих целевые оценки безопасности приложений. Инструмент охватывает несколько классов атак за один целевой запуск.

Поделиться

logo


Повышение привилегий и оценка поверхности атак для толстых клиентов Windows, основанные на анализе выполнения.

Anvil — это инструмент для повышения привилегий и оценки поверхности атак для толстых клиентов Windows, основанный на анализе выполнения. Вместо слепого сканирования файловой системы он сочетает захват Procmon с Windows AccessCheck, чтобы сообщать только о тех путях, которые наблюдаются во время выполнения и подтверждены как доступные для записи стандартными пользователями, устраняя шум ложных срабатываний, свойственный универсальным инструментам перечисления.


Содержание

  • Ключевые возможности
  • Как это работает
  • Модули
  • Требования
  • Инструменты Sysinternals
  • Установка
  • Распространение
  • Использование
  • Примеры
  • Вывод
  • Модель серьёзности
  • Фильтры
  • Отказ от ответственности

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

Большинство инструментов для оценки толстых клиентов охватывают один или два класса атак. Anvil построен на идее, что наблюдение во время выполнения, проверка на эксплуатацию через ACL и широкая поверхность атак должны быть объединены в одном целевом запуске — с конвейером проверок, который делает выводы применимыми на практике.

Конвейер от ложных срабатываний

Каждый кандидат проходит четыре последовательных проверки, прежде чем будет зафиксирован.

Жёсткие проверки

  • Уровень целостности процесса должен быть High или SYSTEM IL
  • Путь не должен находиться внутри System32, SysWOW64 или Program Files
  • Каталог доступен для записи стандартным пользователем — проверка через Windows API AccessCheck

Логические проверки модулей

  • Символическая ссылка: флаги опции (Supersede, OverwriteIf и т.д.) + защита от записи между пользователями
  • COM: CLSID реестра сопоставляется с отсутствующим или доступным для записи путём DLL
  • Бинарный файл: проверка порядка PATH — записываемые записи, стоящие до System32
  • Некавыченный путь: подтверждение, что промежуточные фиктивные каталоги доступны для записи, исключение путей к .sys ядра

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

  1. Определение цели
    Инструмент определяет путь к исполняемому файлу цели (из --exe, --service или --pid). Если это служба, извлекается ServiceInfo с текущим PID и состоянием.

  2. Захват Procmon

    • Для службы запускается Procmon, затем служба чисто перезапускается (с ожиданием смены состояния). Захватывается новый PID.
    • Для обычного EXE процесс запускается с уровнем целостности Medium (с использованием дублированного токена Explorer) для имитации стандартного пользователя. PID записывается.

    Уровень целостности процесса считывается сразу после запуска (пока процесс жив) и сохраняется в контексте.

  3. Анализ с фильтрами по модулю
    Каждый модуль запрашивает отфильтрованный экспорт CSV из Procmon, используя свой собственный файл .pmc (хранится в filters/). CSV анализируется, и применяется ряд проверок:

    • Целостность ≥ High
    • Путь не находится в защищённом системном каталоге
    • Каталог доступен для записи стандартным пользователем (AccessCheck)
    • Дополнительная логика, характерная для модуля (например, опция для символьных ссылок, корреляция реестр-файл для COM)
  4. Статическая корреляция
    Модуль com выполняет дополнительный статический проход — сканирование целевого бинарного файла на наличие встроенных CLSID и проверку каждого из них против HKLM и HKCU — чтобы выявить возможности перехвата, не проявившиеся во время захвата. Они помечаются тегом [Static Correlation].

  5. Формирование отчёта
    Результаты выводятся в терминал (с цветовой кодировкой) и, при необходимости, записываются в JSON или автономный HTML-отчёт.


Architecture

flowchart TB
    %% Phase 1
    subgraph Phase1["Phase 1: Target & Runtime Discovery"]
        TR["Target Resolver<br/>--exe / --service / --pid"] -->
        IL["Integrity Gate<br/>Medium-IL launch / Service restart"] -->
        PM["Procmon Engine<br/>Runtime FS / Reg / Pipe events"]
    end

    %% Phase 2
    subgraph Phase2["Phase 2: Signal Reduction"]
        direction LR
        PF["Per-Module PMC Filters<br/>High-signal traces only"] -->
        CSV["Filtered CSV Export"]
    end

    %% Phase 3
    subgraph Phase3["Phase 3: Exploitability Gates"]
        HG["Hard Gates<br/>High-Integrity target<br/>Not protected path"] -->
        ACL["AccessChk Validation<br/>Writable by standard user"] -->
        LG["Logic Gates<br/>Module-specific rules"]
    end

    %% Phase 4
    subgraph Phase4["Phase 4: Correlation"]
        RT["Runtime Findings"]
        ST["Static Correlation<br/>COM: CLSID binary scan / registry"]
    end

    %% Phase 5
    subgraph Phase5["Phase 5: Reporting"]
        SV["Severity Engine<br/>P1–P5"] --> OUT["Console Output"]
        SV --> JSON["JSON Report"]
        SV --> HTML["HTML Report"]
    end

    %% Cross-phase flow
    PM --> PF
    CSV --> HG
    LG --> RT
    ST -.-> RT
    RT --> SV

    %% Styling
    classDef p1 fill:#0f2a44,stroke:#4cc9f0,color:#e6f1ff
    classDef p2 fill:#2b193d,stroke:#f72585,color:#fde8f3
    classDef p3 fill:#1f2d1c,stroke:#7ae582,color:#eaf7ea
    classDef p4 fill:#3a1f1f,stroke:#ffb703,color:#fff3d6
    classDef p5 fill:#0b2e2a,stroke:#00f5d4,color:#e6fffb

    class Phase1 p1
    class Phase2 p2
    class Phase3 p3
    class Phase4 p4
    class Phase5 p5
    linkStyle default stroke:#9aa4b2,stroke-width:2px

Сравнение

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