"Допилил" 😂 свой скрипт. Все кроссбраузерно 😂 можно вообще обойтись без скриптов правда невалидно - добавить <noscript> перед </body>. Но чтобы наверняка - лучше скриптом:
<script type="text/javascript" id="IAndrew_tsmp_end"> $(function(){ $('body:first').prepend('<div id="IAndrew_tsmp_begin"></div>'); setTimeout(function() { $('[id*="zadv"], [class*="zadv"], a[omclick*="zadv"]').remove(); $('#IAndrew_tsmp_begin').prevAll().remove(); $('#IAndrew_tsmp_end').nextAll().remove(); }, 10); }) document.write('<noscript>'); </script>
Вставлять опять таки перед </body>.
Работает пока авторы гобонго не обновят свои плагины. Протестил в виртуалке - на данный момент работает.
Можно обойтись абсолютно рабочим мини вариантом (тоже перед </body> jquery не требуется):
<script type="text/javascript"> document.write('<noscript>'); </script>
Т.к. гобонго не выполнится теги искать и вырезать не надо, но первую версию на всякий случай оставляю.
Посмотрел выложенные в теме снимки вирусованных страниц. Вся реклама либо имеет идентификатор zAdv либо добавляется в начало или в конец документа. Поэтому временное решение на js как говорится в лоб:
Добавлять в конец страницы перед закрывающим тегом </body>. Для работы требует jQuery, соответственно если его на сайте нет перед этим скриптом надо подключить jquery.
Тестировал на выложенных в этой теме документах. Если завтра дойдут руки попробую на виртуалку этот тс магик плеер поставить (или в понедельник) у кого есть желание попробуйте на своих сайтах.
Принцип работы прост - при загрузке документа ставится таймаут на 50 миллисекунд (чтобы успел отработать вирус) после этого запускается скрипт - вылавливает все теги с упоминанием zadv и вырезает их. После этого режется всё что было добавлено в начало и в конец страницы после ее загрузки уже на стороне клиента (то есть скорее всего вирусом).
Тс магик плеер рекламные блоки не подменяет а накрывает, соотвественно при удалении видна исходная реклама. С другими вирями такое не прокатит.
Возможные проблемы (не учитывая обновления самого вируса) -
1) скрипт может запуститься раньше чем отработает вирус.
Решение увеличить таймаут (цифру 50 меняем на побольше. 1000 соотвествует одной секунде, но вообще 50 должно за глаза хватать).
2) возможно попадание под маску zadv невинных тегов
3) возможно удаление кода который добавляется вашими собственными скриптами (например на некоторых сайтах я динамически строю попап формы скриптами, правда я делаю это только по клику а не при загрузке страницы :), возможно у кого то самопис работает по тому же принципу, популярных скриптов не припомню так что не думаю что кого то затронет).
Судя по сообщению tparser где он пишет что требуется наличие пустых дивов в начале и в конце документа, его решение работает аналогичным образом - удаляет все что было добавлено на стороне клиента перед и после его пустых дивов. Я просто эти дивы создаю самим яваскриптом.
Если кто протестит пишите может чего улучшить или добавить надо будет по результатам тестов. Появлюсь завтра на пару часов и потом уже в понедельник смогу плотно заняться.
Кто желает можете дать на пиво 😂 - http://iandrew.ru/?page_id=29