Создание плагинов для WordPress

Безопасный плагин ломается не там, где вы ждёте: 7 мест для проверки

Безопасный плагин ломается не там, где вы ждёте: 7 мест для проверки

В WordPress-плагинах уязвимости чаще всего появляются в трёх слоях: входные данные, права доступа и вывод. Если пропустить хотя бы один, даже аккуратный код станет удобной точкой входа.

Проверьте базу:
— все данные из $_POST, $_GET, $_REQUEST проходят sanitize;
— перед изменением данных есть проверка capability;
— nonce используется там, где есть действие, а не просто форма;
— SQL строится через prepare, а не через склейку строк.

Дальше смотрите на вывод. Любой текст, который попадает в админку, шорткод или шаблон, должен экранироваться по месту: esc_html, esc_attr, wp_kses. Иначе безопасный ввод легко превращается в XSS на стороне интерфейса.

Ещё две частые ошибки: хранить секреты в открытом виде и оставлять debug-логи с чувствительными данными. Если код передаётся другому разработчику, ищите не только баги, но и лишние права, старые тестовые хуки и незакрытые точки входа. Такая ревизия экономит больше времени, чем последующий разбор инцидента.
Этот пост опубликован в Telegram-канале Создание плагинов для WordPress. Подписаться можно по ссылке: @plugin_development_pro_ww.
tech

Свежие посты в категории «Tech Infrastructure»

Все каналы категории →

start

Готовы запустить рекламу через сеть public.tg?

Новый оффер, продукт, GEO, кейс, событие или партнёрский запуск — соберём маршрут под задачу и отдадим медиаплан.

Telegram для медиаплана: @AFFtop_connect. Быстрый тест: $20 за канал, $1000 за пакет по сети.