Перейти к основному содержимому
Версия: Текущая

Справочник команд CLI

Выполните php scanner --help для просмотра всех параметров.

php scanner [path] [options]

Обнаружение

ОпцияНазначение
--lite, -lСнижает количество ложных срабатываний
--only-signatures, -sСканирование только по сигнатурам
--only-exploits, -eСканирование только по шаблонам эксплойтов
--only-functions, -fСканирование только по опасным функциям
--scan-all, --allПроверять все файлы независимо от расширения
--scan-archivesСканировать ZIP-архивы в безопасных пределах
--scan-wordpress-dbПроверить базу данных WordPress (только чтение)

Проверка находок с помощью ИИ

Проверка с помощью ИИ по умолчанию отключена. Если её включить, после завершения обнаружения AMWScan запрашивает у выбранного провайдера рекомендательный вердикт malware, false_positive или uncertain. Каждый запрос содержит сработавшее правило и ограниченный фрагмент кода вокруг обнаруженной строки. Эта функция никогда не меняет статус находки и не изменяет файлы автоматически.

ОпцияНазначениеПо умолчанию
--ai-provider=<provider>Использовать openai, anthropic, gemini, claude-code-cli, codex-cli, copilot-cli или opencode-clidisabled
--ai-model=<model>Переопределить модель провайдера или установленного CLIМодель провайдера по умолчанию
--ai-context-lines=<number>Включить от 0 до 20 строк до и после обнаружения5
--ai-max-findings=<number>Ограничить число попыток проверки за одно сканирование значением от 1 до 10020
--ai-timeout=<seconds>Ограничить каждый запрос к провайдеру временем от 5 до 300 секунд30
--ai-executable=<path>Переопределить исполняемый файл установленного CLI-провайдераКоманда провайдера

Ключи API считываются из OPENAI_API_KEY, ANTHROPIC_API_KEY или GEMINI_API_KEY. Переменная AMWSCAN_AI_API_KEY имеет приоритет над переменной конкретного провайдера. Ключи нельзя передавать как параметры команды, поскольку аргументы команд могут отображаться в истории оболочки и списках процессов.

GEMINI_API_KEY=your-key php scanner /var/www/example \
--report-only --report-format=json --ai-provider=gemini

php scanner /var/www/example --report-only \
--ai-provider=claude-code-cli --ai-model=claude-sonnet-4-5

Модели по умолчанию для прямых API: gpt-5.6-luna, claude-haiku-4-5 и gemini-3.8-flash. Интеграции с установленными CLI запускают claude, codex, copilot или opencode без оболочки в изолированном каталоге. Обычно они отправляют фрагменты исходного кода удалённым сервисам моделей; установленный CLI не означает локальный инференс. Используйте --ai-executable, если команда установлена под другим именем или по другому пути.

Отчеты и вывод

ОпцияНазначениеПо умолчанию
--report, -rОтключает интерактивные действия и сохраняет отчетВыключено
--report-format=<формат>Выбор: html, txt, json, sarifhtml
--path-report=<путь>Указать путь к файлу отчета./scanner-report.html
--silentОтключить вывод в терминалеВыключено

Действия с файлами

ОпцияНазначение
--backup, -bСоздавать резервную копию каждого измененного файла
--auto-cleanОчищать вредоносный код без подтверждения
--auto-deleteУдалять найденные файлы без подтверждения
--auto-quarantineПеремещать найденные файлы в карантин
--auto-whitelistДобавлять совпадения в белый список

Источники FTP

Укажите один URL вида ftp://host/path или ftps://host/path в качестве пути сканирования. Для PHP требуется расширение FTP, а для FTPS также должна быть доступна функция ftp_ssl_connect.

Не добавляйте учетные данные в URL. Задайте имя пользователя через --ftp-user или AMWSCAN_FTP_USER, а пароль через AMWSCAN_FTP_PASSWORD. По возможности используйте FTPS, поскольку FTP передает учетные данные и содержимое файлов без шифрования.

AMWSCAN_FTP_USER=scanner \
AMWSCAN_FTP_PASSWORD=secret \
php scanner ftps://files.example.com/public_html --report-only

При FTP-сканировании создается временная локальная копия только для чтения, принудительно включается режим отчета, а после завершения копия удаляется. Одно сканирование принимает один источник FTP с ограничениями: 10 000 файлов, 64 МиБ на файл и 512 МиБ всего. Источники FTP нельзя использовать вместе с --scan-wordpress-db.