Простой ответ: вы не можете сделать это программно. Просто не может быть сделано. Конечно, Wordpress имеет своего рода валидатор, чтобы определить, является ли плагин непристойным, но нет уверенности, что он безопасен.
Этим летом я стажер в Mozilla и работаю над валидатором, который сканирует надстройки, когда они отправляются на addons.mozilla.org. Я могу только представить, что Wordpress имеет очень похожий инструмент на их конце. Идея состоит в том, что приложение полностью отвергает явно вредоносный код (eval("evil nasty code");
), а остальная его часть анализируется с помощью простой эвристики. Алгоритмы на месте отмечают некоторые потенциальные красные флажки на основе того, что он видит в пакете надстроек, и представляют эти заметки редакторам, которые затем просматривают код. Фактически, он превращается в процесс, управляемый человеком, но программное обеспечение помогает справиться с тяжелой работой.
Некоторые методы, которые использует валидатор Mozilla:
- Проверка синтаксиса
- Разбор кода и разметки (HTML / CSS) для поиска уязвимостей удаленного кода
- Синтаксический анализ и анализ Javascript (проанализируйте JS в дереве AST и проанализируйте каждое утверждение, оценивая статические выражения максимально глубоко)
- Тестирование на совместимость / устаревание
Вы можете проверить код здесь:
http://github.com/mattbasta/amo-validator
Надеюсь, это поможет!