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

Наша компанія займається розробкою, підтримкою та обслуговуванням сайтів будь-якої складності. Від простих односторінкових сайтів до масштабних кластерних систем, побудованих на мікро сервісах. Досвід розробників підтверджено сертифікатами від вендорів.

Розробка та обслуговування будь-яких видів сайтів:

Інформаційні сайти або веб-програми
Сайти візитки, landing page, корпоративні сайти, онлайн каталоги, квіз, промо-сайти, блоги, ресурси новин, інформаційні портали, форуми, агрегатори
Сайти або веб-програми електронної комерції
Інтернет-магазини, B2B-портали, маркетплейси, онлайн-обмінники, кешбек-сайти, біржі, дропшиппінг-платформи, парсери товарів
Веб-програми для управління бізнес-процесами
CRM-системи, ERP-системи, корпоративні портали, системи управління виробництвом, парсери інформації
Сайти або веб-програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, конструктори сайтів, портали надання електронних послуг, відеохостинги, тематичні портали

Це лише деякі з технічних типів сайтів, з якими ми працюємо, і кожен із них може мати свої специфічні особливості та функціональність, а також бути адаптованим під конкретні потреби та цілі клієнта.

Пропоновані послуги
Показано 1 з 1 послугУсі 2065 послуг
Аудит безпеки сайту на MODX
Середня
~2-3 робочих дні
Часті питання

Наші компетенції:

Етапи розробки

Останні роботи

  • image_website-b2b-advance_0.png
    Розробка сайту компанії B2B ADVANCE
    1262
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1171
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    874
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1094
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    831
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Розробка веб-сайту для компанії ФІКСПЕР
    851

Аудит безпеки сайту на 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 або менше

# Права на папку assets
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
# System → Settings → manager_login_startup_update = 0
# Перевірити мета-генератор в 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 годин.