У нас есть сервер CentOS [выпуск 6.8 (Final)] с Drupal 7.51 и php 5.3.3 и apache.
Когда мы заходим на определенные страницы сервера, сервер совершает звонки на случайные IP-адреса. Мы отследили проблему с помощью команды tcpdump. Вот вывод:
На рисунке IP 45.250.47.93 взят из нашей сети, а cpe-24-194-158-202.nycap.res.rr.com & 52.128.135.13 не принадлежит нам. Эти IP-адреса постоянно меняются с каждым запросом.
Как мы должны защитить наш сервер от отправки этих запросов на случайные IP-адреса?
Еще немного предыстории:
Вчера вечером некоторые страницы нашего веб-сайта стали автоматически перенаправляться на рекламные серверы. В ходе исследования мы поняли, что некоторые файлы php были созданы на нашем сервере, и был добавлен crontab. Мы удалили все php-файлы, которые не были созданы нами, а также отключили cron. С тех пор перенаправление на рекламные серверы прекратилось, но некоторые страницы отправляют запросы на случайные IP-адреса.
Вы должны определенно изолировать этот сервер как можно скорее, прежде чем он нанесет больше ущерба. Попытка исправить это онлайн не вариант ИМХО, так как вы никогда не будете уверены, что очистили его полностью, если вы не полностью понимаете, как они попали (сложность зависит) и что было сделано (самая сложная часть, даже для экспертов).
Надлежащим курсом было бы остановить / изолировать этот сервер, определить источник взлома (например, как они пришли), исправить его и переустановить чистый и исправленный (или, по крайней мере, смягченный) экземпляр на новом сервере (взломанном должен быть по крайней мере отформатирован перед повторным использованием, или даже биос вспыхнул на случай, если взломать было сложно).
Расследование может быть длительным и действительно должно проводиться в автономном режиме. Если это виртуальная машина, и вы можете создать снимок, сделайте это и используйте его в автономном режиме для криминалистического анализа. В противном случае вы сможете получить доступ к ФС в режиме восстановления и скопировать все.
Может показаться, что нет возможности остановить службу, но, поверьте мне, вы предпочитаете простои, а не источник более широкого распространения вредоносных программ.
Поскольку Drupal и php участвуют, вероятно, это была точка входа. Сделайте полный diff с доверенными источниками, вы можете найти новые / измененные файлы и понять утечку.
Я согласен со всем, что сказал fab2s.
Случайные страницы, которые отправляют запросы мне, как будто есть фрагмент кода, который был изменен на этой странице, чтобы отправить этот запрос. Может быть что угодно, от своего рода оболочки до какого-то вызова извлечения пользовательских данных.
Различия или ваше приложение против вашей производственной копии на вашем контроле версий может показать некоторые потенциальные возможности.
Проверка журналирования, которое может иметь ваше приложение, может что-то включить.
Но создание crontab подразумевает, что злоумышленник имел некоторый доступ к системе. Скорее всего, вы столкнулись с уязвимостью в вашем веб-приложении.
Проверка этих журналов CentOS может помочь определить время, когда злоумышленник вошел в систему.
Все пользователи имеют доступ к журналу: / var / log / wtmp
Журнал корневого доступа: / var / log / secure