• Не создавайте несколько учетных записей, вы будете заблокированы! Для получения дополнительной информации о правилах, ограничениях и многом другом посетите страницу «Помощь».
    Нашли неработающую ссылку? Используйте кнопку «Жалоба»!

Инструкция Активные атаки SQL-инъекций в WHMCS — как защитить свой сервер

Регистрация
02.06.21
Донат
50.00 ₽
Сообщения
18,312
Решения
2
Реакции
23,584
Веб-сайт
itnull.info
Множество IP-адресов активно сканируют и используют уязвимости SQL-инъекций в WHMCS. Вот как заблокировать их с помощью Fail2ban.
Схема атаки:
Злоумышленники используют различные методы SQL-инъекций для атаки на файл /cart.php:


text
/cart.php?domain=transfer&a=addand/**/9503::9537=...
/cart.php?a=add&domain=transferAND/**/JSON_KEYS(...)
/cart.php?domain=transfer&a=add%27%2B%28SELECT...
/cart.php?a=add&domain=transfer/*!50000AND*/JSON_KEYS...

Наиболее часто используемые ключевые слова SQL:
  • JSON_KEYS, CONVERT, CONCAT, ELT
  • ВЕРХНИЙ ЭТАЖ, ИНФОРМАЦИОННАЯ СХЕМА
  • RAND, Benchmark, CHR
  • Подсказки оптимизатора MySQL: /*!50000SELECT*/
  • Закодированные символы: %28, %29, %2B, %2F%2A%2A%2F
Полная защита от Fail2ban:

Создать фильтр

Файл:
/etc/fail2ban/filter.d/whmcs-sqli.conf

Код:
Расширить Свернуть Скопировать
[Definition]
failregex = ^ .* "GET /cart\.php\?.*domain=transfer.*(?:/\*\*/|/\*!\d+|\bAND\b|\bSELECT\b|\bJSON_KEYS\b|\bCONVERT\b|\bCONCAT\b|\bELT\b|\bUPPER\b|\bFLOOR\b|\bINFORMATION_SCHEMA\b|\bRAND\b|\bBENCHMARK\b|\bCHR\b|\bUPDATEXML\b|\bEXTRACTVALUE\b|\bSLEEP\b).* HTTP/\d\.\d" 302
            ^ .* "GET /cart\.php\?.*domain=transfer.*%%28.*%%29.* HTTP/\d\.\d" 302
            ^ .* "GET /cart\.php\?.*domain=transfer.*%%2B.* HTTP/\d\.\d" 302
            ^ .* "GET /cart\.php\?.*domain=transfer.*%%2F%%2A%%2A%%2F.* HTTP/\d\.\d" 302

ignoreregex =

Создать тюрьму

Файл: /etc/fail2ban/jail.d/whmcs-sqli.conf


Код:
Расширить Свернуть Скопировать
[whmcs-sqli]
enabled = true
port = http,https
filter = whmcs-sqli
logpath = /var/log/apache2/access.log
          /var/log/nginx/access.log
          /var/www/*/logs/*/access.log
maxretry = 1
findtime = 1
bantime = 2592000   # 30 days
action = iptables-allports[name=whmcs-sqli]

Примените конфигурацию к серверу.

Bash:
Расширить Свернуть Скопировать
# Test the filter
sudo fail2ban-regex /path/to/access.log /etc/fail2ban/filter.d/whmcs-sqli.conf

# Restart Fail2ban
sudo systemctl restart fail2ban

# Check status
sudo fail2ban-client status whmcs-sqli

Что делает эта защита?
  • Мгновенная блокировка при первой атаке (maxretry=1)
  • 30-дневная блокировка для всех злоумышленников
  • Обнаруживает все известные варианты атак (комментарии, закодированные символы, подсказки MySQL)
  • Отслеживает все журналы пользователей (в средах общего хостинга)
  • Уже обнаружено более 9 злоумышленников за первый час
Дополнительные рекомендации:
  1. Обновляйте WHMCS до последней версии.
  2. Регулярно отслеживайте свои журналы
Bash:
Расширить Свернуть Скопировать
sudo tail -f /var/log/fail2ban.log | grep whmcs-sqli

Если ваша система уже скомпрометирована:
  1. Проверьте наличие несанкционированных учетных записей администратора.
  2. Проверьте базу данных на наличие подозрительных записей.
  3. Поменяйте все пароли
  4. При необходимости восстановите данные из чистой резервной копии.
 
Реакции:
5.37.110.224, 31.166.128.118, 38.137.21.176, 38.224.223.196, 41.188.114.27, 45.130.162.16, 45.166.92.51, 45.170.179.215, 45.195.224.182, 50.60.103.245, 51.211.11.17, 51.235.213.181, 51.253.251.66, 69.84.72.248, 77.137.68.47, 78.174.68.154, 79.116.139.141, 80.83.30.63, 82.167.205.241, 88.254.47.117, 91.186.253.23, 91.215.144.196, 94.98.40.161, 102.185.205.121, 103.76.57.136, 103.121.43.102, 103.156.164.41, 103.158.144.173, 103.181.174.125, 103.190.41.131, 105.97.181.255, 105.106.227.184, 105.110.234.62, 105.165.65.227, 105.172.190.233, 106.77.140.10, 109.93.203.15, 110.93.86.129, 112.209.177.137, 136.158.43.188, 136.158.63.110, 137.59.218.190, 141.164.141.239, 143.44.144.124, 147.78.161.234, 148.244.101.186, 164.163.158.14, 168.90.195.18, 169.150.218.17, 171.76.85.42, 176.24.50.108, 177.37.179.105, 177.126.196.34, 177.131.159.51, 177.226.156.115, 177.227.61.132, 179.109.136.242, 179.109.154.228, 180.75.245.113, 181.236.99.239, 182.62.167.61, 186.2.128.208, 186.53.125.155, 186.64.212.34, 186.225.179.65, 187.190.178.197, 188.48.220.141, 190.103.30.57, 190.153.67.253, 190.211.117.53, 195.62.50.56, 196.74.110.108, 197.3.85.31, 213.139.52.106
 
Реакции:
    Сейчас эту тему никто не читает.
Назад
Сверху Снизу