Аудит безопасности сайта на MODX

Наша компания занимается разработкой, поддержкой и обслуживанием сайтов любой сложности. От простых одностраничных сайтов до масштабных кластерных систем построенных на микро сервисах. Опыт разработчиков подтвержден сертификатами от вендоров.
Разработка и обслуживание любых видов сайтов:
Информационные сайты или веб-приложения
Сайты визитки, landing page, корпоративные сайты, онлайн каталоги, квиз, промо-сайты, блоги, новостные ресурсы, информационные порталы, форумы, агрегаторы
Сайты или веб-приложения электронной коммерции
Интернет-магазины, B2B-порталы, маркетплейсы, онлайн-обменники, кэшбэк-сайты, биржи, дропшиппинг-платформы, парсеры товаров
Веб-приложения для управления бизнес-процессами
CRM-системы, ERP-системы, корпоративные порталы, системы управления производством, парсеры информации
Сайты или веб-приложения электронных услуг
Доски объявлений, онлайн-школы, онлайн-кинотеатры, конструкторы сайтов, порталы предоставления электронных услуг, видеохостинги, тематические порталы

Это лишь некоторые из технических типов сайтов, с которыми мы работаем, и каждый из них может иметь свои специфические особенности и функциональность, а также быть адаптированным под конкретные потребности и цели клиента

Предлагаемые услуги
Показано 1 из 1 услугВсе 2065 услуг
Аудит безопасности сайта на MODX
Средняя
~2-3 рабочих дня
Часто задаваемые вопросы
Наши компетенции:
Этапы разработки
Последние работы
  • image_website-b2b-advance_0.png
    Разработка сайта компании B2B ADVANCE
    1214
  • image_web-applications_feedme_466_0.webp
    Разработка веб-приложения для компании FEEDME
    1161
  • image_websites_belfingroup_462_0.webp
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    852
  • image_ecommerce_furnoro_435_0.webp
    Разработка интернет магазина для компании FURNORO
    1041
  • image_crm_enviok_479_0.webp
    Разработка веб-приложения для компании Enviok
    823
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Разработка веб-сайта для компании ФИКСПЕР
    815

Аудит безопасности сайта на MODX

MODX Revolution имеет хорошую базовую безопасность — коннекторы защищены токенами, панель управления (/manager/) закрыта от ботов. Тем не менее устаревшие Extra, неправильные права файлов и кастомный код создают уязвимости.

Сканирование

# CMS-специфичный сканер
python3 -m drupwn --mode detect https://yourdomain.com  # нет MODX-специфичного, используем общие

# Nikto
nikto -h https://yourdomain.com

# Dirbusting (поиск скрытых файлов)
ffuf -w /usr/share/wordlists/dirb/common.txt -u https://yourdomain.com/FUZZ

Контрольный список

Файловая структура:

# Core выше web-root?
ls /var/www/yourdomain.com/core/  # НЕ должно быть (если перемещён)

# Права на config.core.php
stat /var/www/yourdomain.com/config.core.php
# 644 или менее

# Права на папку uploads
find /var/www/yourdomain.com/assets/ -name "*.php" -type f
# PHP-файлы в assets — признак взлома

# Временные файлы установщика
ls /var/www/yourdomain.com/setup/  # не должно существовать после установки

Nginx защита для MODX:

# Закрыть системные директории
location ~ /(core|manager/includes)/ { deny all; }
location ~ /config\.core\.php$ { deny all; }

# Запретить PHP в assets (загруженные файлы)
location ~* /assets/.*\.(php|phtml|php3)$ { deny all; }

# Ограничить доступ к менеджеру
location /manager/ {
    allow 1.2.3.4;  # ваш IP
    deny all;
}

Версия MODX:

# Скрыть версию MODX из HTML
# Система → Настройки → manager_login_startup_update = 0
# Проверить meta generator в HTML:
curl -s https://yourdomain.com/ | grep -i "modx\|meta.*generator"

Системные настройки безопасности:

session_cookie_secure: Да   (только HTTPS)
session_cookie_httponly: Да
session_cookie_samesite: Strict
failed_login_attempts: 5    (лимит попыток входа)
blocked_minutes: 60         (блокировка после превышения)

Проверка Extra на уязвимости: Реестр уязвимостей MODX: нет централизованного, но проверяем версии в Package Manager. Устаревшие Extra с известными уязвимостями: FormLister (устарел, лучше FormIt), некоторые версии Ajaxform.

Кастомный код — SQL Injection:

grep -r "\\\$_GET\|\\\$_POST" core/components/myextra/
grep -r "->query\|->exec" core/components/myextra/ | grep -v "prepare\|quote"
// Небезопасно:
$db->query("SELECT * FROM table WHERE id = " . $_GET['id']);

// Правильно:
$c = $modx->newQuery('MyObject');
$c->where(['id' => (int)$_GET['id']]);

CSRF-защита: MODX использует connector-токены для защиты от CSRF в Connector-запросах. Убедиться, что кастомные коннекторы не обходят эту проверку.

Заголовки безопасности

add_header X-Content-Type-Options "nosniff" always;
add_header X-Frame-Options "SAMEORIGIN" always;
add_header Content-Security-Policy "default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval'; style-src 'self' 'unsafe-inline'" always;
add_header Strict-Transport-Security "max-age=31536000" always;

Сроки

Аудит безопасности MODX-сайта с отчётом — 1 день. Устранение выявленных проблем — 4–8 часов.