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

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

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

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

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

Категории

Все категории
Loading categories
serviceDetector — Определите, установлен ли сервис (вслепую) и/или запущен ли он (если он открывает именованные каналы) на удалённой машине, без использования прав локального администратора. | Kitploit
Инструменты/GitHubGitHub/tothi/servicedetector
РазведкаСбор информацииСетевая безопасностьТестирование на ПроникновениеRed Teaming
GitHubtothi/servicedetector

serviceDetector

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

Репозиторий
241272 лет назадПроверено Kitploit

Популярное

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

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

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

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

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

serviceDetector

Определяет, установлена ли служба (вслепую) и/или запущена (если она предоставляет именованные каналы) на удалённой машине без использования прав локального администратора.

Описание

Если подробнее, при запуске этот скрипт подключается к целевому SMB-сервису (445/tcp) удалённо и выполняет следующее:

  1. Проверяет, установлена ли служба, через [MS-LSAT] RPC-вызов LsarLookupNames(). Для этого не нужна привилегированная учётная запись, но возможен только «слепой» запрос (нельзя получить список служб, можно лишь узнать состояние конкретной службы).

  2. Проверяет, существует ли на цели заданный именованный канал. Службы (процессы) могут предоставлять характерный для службы именованный канал, который может увидеть непривилегированный пользователь. Поэтому проверка именованных каналов, характерных для служб, позволяет сделать вывод о том, запущена ли конкретная служба.

Установка

Это автономный скрипт на Python с использованием Impacket, ничего устанавливать не нужно. Протестировано на актуальных Kali и Arch Linux с использованием последних официальных Impacket (0.10.0 и 0.9.24) и Python (3.9 и 3.10).

Конфигурация

Службы, имена служб для проверки и характерные для службы именованные каналы указываются в JSON-конфигурациях (или CSV-файлах, если так удобнее, что я понял позже :), поэтому также доступен собственный конвертер csv2json) в папке conf. Чтобы понять формат, смотрите прилагаемые примеры.

Включённые файлы конфигурации:

  • edr.json (и edr.csv): распространённые AV/EDR-службы и именованные каналы
  • webclient.json (и webclient.csv): для обнаружения WebClient и Print Spooler на цели (полезно для моей любимой атаки с ретрансляцией NTLM HTTP → LDAP для захвата компьютера).
  • psexec.json (и psexec.csv: для обнаружения незачищенных служб Impacket PsExec, запущенных для RCE от имени SYSTEM с использованием непривилегированного доменного пользователя.

Варианты использования могут быть расширены дополнительными службами / именованными каналами; конфигурация EDR довольно неполная, не стесняйтесь добавлять больше.

Скрипт использует JSON-формат конфигурации, но позже я понял, что писать CSV гораздо удобнее, поэтому включил скрипт csv2json.py для преобразования CSV в JSON.

Запуск инструмента

Запуск против одной цели для перечисления AV/EDR-служб (или чего-либо ещё) прост:

root@kitploit:~
./serviceDetector.py -conf conf/edr.json evil.corp/johndoe:[email protected]

Также поддерживается аутентификация Kerberos (переменная окружения KRB5CCNAME указывает на файл ccache):

root@kitploit:~
./serviceDetector.py -conf conf/edr.json -k -no-pass server.ecorp.local

Для эффективного запуска против нескольких целей чрезвычайно полезен GNU parallel:

root@kitploit:~
cat targets.txt | parallel -j 50 ./serviceDetector.py evil.corp/johndoe:Passw0rd1@{}

Обратите внимание: перед запуском против множества целей протестируйте на одной, чтобы предотвратить блокировку учётной записи (например, в случае опечатки в пароле).

Примечание по OpSec: имейте в виду, что одновременный массовый вход на разные цели может вызвать срабатывание оповещений SOC.

Благодарности

Обе использованные здесь техники не новы.

  1. RPC-вызов LsarLookupNames() протокола [MS-LSAT] ранее использовался Vincent Le Toux (@mysmartlogon) в модуле Antivirusscanner замечательного инструмента PingCastle.

  2. Идея использования именованных каналов для обнаружения запущенных служб была вдохновлена этим твитом от Lee Christensen (@tifkin_) когда он использовал её для обнаружения службы WebClient. Эта техника для обнаружения AV/EDR также использовалась инструментом NamedPipeTouch из NSA (утечка от группы The Shadow Brokers).

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