The OpenNET Project / Index page

[ новости/++ | форум | wiki | теги ]

Блокировка атаки на Joomla силами nginx и apache
Продолжается массовая атака на сайты под управлением Joomla. К сожалению на
базе данной CMS в сети много сайтов, администраторы которых не спешат
устанавливать обновления. На системах хостинга можно попытаться блокировать
типовую автоматизированную атаку централизованно, на стороне сервера.

Для блокировки можно заблокировать обращение c User Agent
"JDatabaseDriverMysql" и "O:", а также запретить обращение c IP-адресов, с
которых зафиксировано проведение атаки.

Пример для nginx:

   http {
       map $http_user_agent $blocked_ua {
           ~(?i)JDatabaseDriverMysql 1;
           ~(?i)O: 1;
           default 0;
       }
       map $remote_addr $blocked_ip {
          74.3.170.33 1;
          146.0.72.83 1;
          194.28.174.106 1;
          default 0;
       }
       server {
           listen 80;
           if ($blocked_ua) { return 403; }
           if ($blocked_ip) { return 403; }
           # ...
       }
   }


Пример для apache httpd:

   RewriteCond %{REMOTE_ADDR} =74.3.170.33 [OR]
   RewriteCond %{REMOTE_ADDR} =146.0.72.83 [OR]
   RewriteCond %{REMOTE_ADDR} =194.28.174.106
   RewriteRule .* / [F]

   RewriteCond %{HTTP_USER_AGENT} JDatabaseDriverMysql [OR]
   RewriteCond %{HTTP_USER_AGENT} O\:
   RewriteRule .* / [F]
 
16.12.2015 , Источник: https://www.nginx.com/blog/new-joom...
Ключи: joomla, block, atack, nginx, apache / Лицензия: CC-BY
Раздел:    Корень / Администратору / Сетевые сервисы / WWW, Apache httpd / Ограничение доступа и ресурсов, безопасность

Обсуждение [ Линейный режим | Показать все | RSS ]
 
  • 1.1, ааааа, 10:46, 16/12/2015 [ответить] [смотреть все]
  • +/
    if ($http_user_agent ~* ".*\{.*")
    {
        return 403;
    }
     
  • 1.2, тигар, 13:26, 16/12/2015 [ответить] [смотреть все]
  • +/
    "отдавать" нужно 444, а не 403. ибо нефиг
     
  • 1.3, adsh, 22:31, 16/12/2015 [ответить] [смотреть все]
  • +/
    > Для блокировки можно заблокировать обращение c User Agent "JDatabaseDriverMysql" и "O:",
    > а также запретить обращение c IP-адресов, с которых зафиксировано проведение атаки.

    Какой-то наивный совет. Можно подумать, что User Agent фиксированный, а атаковать додумаются лишь с трёх адресов из всего интернет.

     
     
  • 2.4, Аноним, 23:26, 16/12/2015 [^] [ответить] [смотреть все]
  • +1 +/
    Боты пока зафиксированы только с этих адресов, а маска в User Agent это часть ко... весь текст скрыт [показать]
     
  • 1.5, ононимъ, 07:33, 17/12/2015 [ответить] [смотреть все]  
  • +/
    слушайте, а если в логах заход с таким UserAgent был - как проверить, установлен ли шелл или т.п. вредоносные мероприятия? патч сразу был поставлен, .htaccess поправлен, следующие попытки - 403, но 1-2-то пролезли...
     
     
  • 2.8, Slava, 13:37, 18/12/2015 [^] [ответить] [смотреть все]  
  • +/
    обновился вовремя, но присоеденюсь к вопросу
     
     
  • 3.9, Slava, 13:58, 18/12/2015 [^] [ответить] [смотреть все]  
  • +/
    строки в логе следующие x22JDatabaseDriverMysqli x22 3 s 2 x22fc x22 O 17 x... весь текст скрыт [показать]
     
  • 1.6, Евгений, 10:43, 17/12/2015 [ответить] [смотреть все]  
  • +/
    Фиксирую эпизоды атаки на сайты при помощи внедрения вышеописанного эксплоита в HTTP заголовок "x_forwarded_for".
     
  • 1.7, Slava, 13:33, 18/12/2015 [ответить] [смотреть все]  
  • +/
    ip адреса с которых идет атака разные
    46.45.183.142
    178.76.225.33
    112.184.95.6
    202.142.105.229
    91.214.84.166
    95.135.182.10
    93.168.108.29
    89.147.250.103
    105.227.191.131
    122.179.67.16
    весь интернет не заблокируешь
     
     
  • 2.10, pavlinux, 19:38, 21/12/2015 [^] [ответить] [смотреть все]  
  • +/
    > весь интернет не заблокируешь

    ifconfig eth0 down;

     
     
  • 3.14, Аноним, 22:10, 24/12/2015 [^] [ответить] [смотреть все]  
  • +/
    # halt
     
  • 1.11, kleemhead, 22:54, 21/12/2015 [ответить] [смотреть все]  
  • +/
    >ifconfig eth0 down;

    Для параноидального режима

    iptables -P INPUT DROP

    poweroff

     
  • 1.12, kleemhead, 22:58, 21/12/2015 [ответить] [смотреть все]  
  • +/
    >ifconfig eth0 down;

    ifdown eth0

     
     
  • 2.15, pavlinux, 02:08, 27/12/2015 [^] [ответить] [смотреть все]  
  • +/
    # ifdown eth0
    sh: ifdown: Command not found
     
  • 1.13, ононимъ, 08:49, 22/12/2015 [ответить] [смотреть все]  
  • +/
    а всё таки, гуру просветлённые с недюжинным ч.ю., есть ответ? в логах следы есть, файлов изменённых в папке сайта нет. куда ещё копать, где проверить?
     
     
  • 2.16, анонимь, 15:46, 29/12/2015 [^] [ответить] [смотреть все]  
  • +/
    Оналогично, дружище. Всё проверил, ничего не нашёл. Что делает эта строка, кто-нибудь может описать?
     
     
  • 3.17, ааааа, 20:02, 30/12/2015 [^] [ответить] [смотреть все]  
  • +/
    произвольный код исполняется... вебшеллы не залили, лишних пользователей в джумлу не добавили - уже хорошо...

    ====
    В коде обработчика сессий Joomla пристутствует уязвимость, которая позволяет осуществить внедрение строки в синтаксис сериализованной сессии через HTTP-заголовки User-Agent и X-Forwarded-For. Эксплоит использует особенность MySQL при обработке utf8-символов из диапазона U+010000 — U+10FFFF. При вставке строки, в конце которой присутствует такой символ, MySQL обрежет данные. Это позволяет сформировать и записать в таблицу сессий строку, в которой присутствуют пользовательские PHP-объекты, без нарушения синтаксиса. В ходе десериализации сессии атакующего вызываются деструкторы классов Joomla, что ведет к выполнению произвольного кода​
    ====

     

    Ваш комментарий
    Имя:         
    E-Mail:      
    Заголовок:
    Текст:



      Закладки на сайте
      Проследить за страницей
    Created 1996-2017 by Maxim Chirkov  
    ДобавитьРекламаВебмастеруГИД  
    Hosting by Ihor