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

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

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

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

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

Категории

Все категории
Loading categories
php-malware-finder — Обнаружение потенциально вредоносных PHP-файлов | Kitploit
Инструменты/GitHubGitHub/jvoisin/php-malware-finder
Статический анализСканеры уязвимостейАнализ КодаВеб-безопасностьАнализ вредоносных программArchived
GitHubjvoisin/php-malware-finder

php-malware-finder

Обнаружение потенциально вредоносных PHP-файлов

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

Популярное

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

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

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

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

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

Test Suite

PHP Malware Finder

 _______  __   __  _______
|  ___  ||  |_|  ||       |
| |   | ||       ||    ___|
| |___| ||       ||   |___   Webshell finder,
|    ___||       ||    ___|   kiddies hunter,
|   |    || ||_|| ||   |		website cleaner.
|___|    |_|   |_||___|

Обнаружение потенциально вредоносных PHP-файлов.

Что он обнаруживает?

PHP-malware-finder делает всё возможное, чтобы обнаружить обфусцированный/подозрительный код, а также файлы, использующие PHP-функции, часто применяемые в вредоносном ПО/веб-шеллах.

Также обнаруживаются следующие кодировщики/обфускаторы/веб-шеллы:

  • Bantam
  • Best PHP Obfuscator
  • Carbylamine
  • Cipher Design
  • Cyklodev
  • Joes Web Tools Obfuscator
  • P.A.S
  • PHP Jiami
  • Php Obfuscator Encode
  • SpinObf
  • Weevely3
  • atomiku
  • cobra obfuscator
  • nano
  • novahot
  • phpencode
  • tennc
  • web-malware-collection
  • webtoolsvn
  • Kraken-ng

Конечно, тривиально обойти PMF, но его цель — ловить детишек и идиотов, а не людей с работающим мозгом. Если вы сообщите о глупом специальном обходе PMF, вы, скорее всего, относитесь к одной (или обеим) категориям и должны перечитать предыдущее утверждение.

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

Обнаружение выполняется путём обхода файловой системы и проверки файлов на соответствие набору правил YARA. Да, это так просто!

Вместо использования подхода на основе хэшей, PMF старается максимально использовать семантические шаблоны для обнаружения таких вещей, как «переменная $_GET декодируется дважды, разархивируется, а затем передаётся в какую-нибудь опасную функцию, например system».

Установка

Из исходников

  • Установите Go >= 1.17 (с помощью пакетного менеджера или вручную)
  • Установите libyara >= 4.2 (с помощью пакетного менеджера или из исходников)
  • Скачайте php-malware-finder: git clone https://github.com/jvoisin/php-malware-finder.git
  • Соберите php-malware-finder: cd php-malware-finder && make

или замените последние 2 шага на go install github.com/jvoisin/php-malware-finder, что напрямую скомпилирует и установит PMF в вашу папку ${GOROOT}/bin.

Как использовать?

$ ./php-malware-finder -h
Usage:
  php-malware-finder [OPTIONS] [Target]

Application Options:
  -r, --rules-dir=      Alternative rules location (default: embedded rules)
  -a, --show-all        Display all matched rules
  -f, --fast            Enable YARA's fast mode
  -R, --rate-limit=     Max. filesystem ops per second, 0 for no limit (default: 0)
  -v, --verbose         Verbose mode
  -w, --workers=        Number of workers to spawn for scanning (default: 32)
  -L, --long-lines      Check long lines
  -c, --exclude-common  Do not scan files with common extensions
  -i, --exclude-imgs    Do not scan image files
  -x, --exclude-ext=    Additional file extensions to exclude
  -u, --update          Update rules
  -V, --version         Show version number and exit

Help Options:
  -h, --help            Show this help message

Или, если вы предпочитаете использовать yara:

$ yara -r ./data/php.yar /var/www

Пожалуйста, имейте в виду, что вы должны использовать как минимум YARA 3.4, так как мы используем хэши для системы белого списка, а также жадные регулярные выражения. Обратите внимание, что если вы планируете собрать yara из исходников, на вашей системе должен быть установлен libssl-dev для поддержки хэшей.

Ах да, кстати, вы можете запустить всеобъемлющий набор тестов с помощью make tests.

Docker

Если вы хотите избежать установки Go и libyara, вы также можете использовать наш docker-образ и просто смонтировать папку, которую хотите сканировать, в каталог /data контейнера:

$ docker run --rm -v /folder/to/scan:/data ghcr.io/jvoisin/php-malware-finder

Белый список

Проверьте файл whitelist.yar. Если вы ленивы, вы можете сгенерировать белые списки для целых папок с помощью скрипта generate_whitelist.py.

Почему я должен использовать это вместо чего-то другого?

Потому что:

  • Он не использует одно правило на образец, так как ему важно находить вредоносные шаблоны, а не конкретные веб-шеллы
  • У него есть полный набор тестов, чтобы избежать регрессий
  • Его система белого списка не полагается на имена файлов
  • Он не полагается на (медленное) вычисление энтропии
  • Он использует статический анализ в стиле гетто, а не полагается на хэши файлов
  • Благодаря вышеупомянутому псевдостатическому анализу он особенно хорошо работает с обфусцированными файлами

Лицензирование

PHP-malware-finder лицензирован под GNU Lesser General Public License v3.

Потрясающий проект YARA лицензирован под Apache v2.0.

Патчи, белые списки или образцы, конечно, более чем приветствуются.

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