Назад | Перейти на главную страницу

Взломан веб-сервер Ubuntu; узнать, какие процессы нереста

Веб-сервер Ubuntu, который я только что унаследовал, был взломан. Я администратор Windows и не очень хорошо знаком с Linux.

Как мне выяснить, что продолжает порождать процессы Perl? Я убил пару десятков экземпляров / usr / bin / perl, но они сразу же появляются снова. Я даже переименовал / usr / bin / perl, но процессы все равно возвращаются.

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

Если вы уверены, что он взломан, и это не является некорректным или нормальным поведением службы или задания cron на сервере, то первое, что вам нужно сделать, это убрать его из сети. Поместите страницу быстрого обслуживания или что-нибудь, уведомляющее клиентов / пользователей о том, что сайт не работает на обслуживание.

Вы не окажете себе никакой пользы, если ваш сайт будет помечен компаниями Google, Microsoft и AV как обслуживающий вредоносный контент. Или если он рассылает спам или используется как трамплин для атаки на другие серверы.

Создайте образ системы, а затем выполните ядерную зарядку и перестройте ее, чтобы как можно быстрее вернуть ее в рабочее состояние. Теперь, когда пожар погас, вы можете сосредоточиться на использовании этого образа и, возможно, даже на восстановлении образа на виртуальной машине для проведения криминалистической экспертизы.

проверьте / etc / inittab на наличие чего-либо подозрительного:

0:2345:once:/usr/sbin/ttyload

был бы одним из таких сценариев. Возможно, вы удалили / переименовали / usr / bin / perl, но в Debian / Ubuntu также будет /usr/bin/perl5.10.1 (или любая другая установленная вами версия). Perl4 тоже может быть у вас на компьютере.

Пытаться chkrootkit, работал у меня несколько десятилетий назад.
Другой вариант был rkhunter.

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

HTH

Какой идентификатор родительского процесса у этих новых процессов? Использовать ps -lp <PID>. В списке будет столбец PPID, который включает идентификатор процесса программы, запустившей его.

редактировать Как насчет получения дополнительной информации трудным путем. Перейдите в / proc // и проверьте там значения некоторых программных ссылок. Например, «cwd» будет указывать на рабочий каталог сценария, а «exe» будет указывать на задействованный исполняемый файл. Это может дать вам некоторую полезную информацию. Либо прикрепите strace к процессу через strace -p <pid>и посмотрите, какие звонки он делает.


- Кристофер Карел