Когда сервер рутирован (например ситуация как это), первое, что вы можете решить сделать, это сдерживание. Некоторые специалисты по безопасности советуют не вводить исправление сразу и поддерживать сервер в сети до завершения криминалистической экспертизы. Эти советы обычно предназначены для APT. Другое дело, если у вас есть случайные Скрипт kiddie нарушения, поэтому вы можете решить исправить (исправить) как можно раньше. Один из этапов восстановления: сдерживание сервера. Цитата из Ответ Роберта Мойра - «отключить жертву от грабителей».
Сервер можно ограничить, потянув сетевой кабель или силовой кабель.
Какой способ лучше?
Принимая во внимание необходимость:
Изменить: 5 предположений
Предполагая:
Экспертиза RAM (например, / dev / shm) может быть полезна.
Но я предпочитаю отключать кабель питания (но попробуйте войти в систему и выполнить rsync / proc прямо перед этим).
Причины использования кабеля питания:
Кайл Рэнкин дал хороший Введение в судебную экспертизу поговорим - там он рекомендует тянуть шнур питания.
Отключите сеть. Злоумышленник не может получить дополнительную информацию, если нет сетевого подключения. Очень сложно (читай: невозможно) проводить судебную экспертизу без питания.
В наши дни это может быть виртуальная машина, поэтому любой метод прост и даже может выполняться удаленно. (Виртуальные машины, конечно же, дают возможность использовать снимки)
Я предлагаю отключиться от сети в качестве первого автоматического шага, потому что это дает вам время подумать, каким должен быть следующий шаг, будет ли этот следующий шаг выдергивать шнур питания или что-то еще. Если вы знаете, что ваши корпоративные «процедуры реагирования на вопросы безопасности» не позволяют вам тратить время на копание в машине в деталях, тогда сохранение содержимого ОЗУ может быть не так важно.
Я бы предположил, что выполнение «отделения жертвы от грабителей» более важно, чем способ, поэтому оба подхода действительны. У меня не возникнет проблем с самим выдергиванием шнура питания, скажем так.
Если вы столкнулись с APT, лучший вариант - настроить приманку и тщательно исследовать весь входящий и исходящий трафик в дополнение к мониторингу сервера.
Проверка памяти настолько дорогостоящая с точки зрения времени и усилий, что обычно не имеет смысла, если вы не испробовали любой другой метод, и если вы решите, что это стоит того, обычно лучше всего настроить приманку, которая позволит вам легко выгружать память и состояние системы на другой машине на лету, поэтому вы можете проводить анализ с меньшей угрозой обнаружения, пока машина включена и работает.
У меня была одна ситуация, когда злоумышленник сохранил все в памяти до такой степени, что, за исключением журналов, машина выглядела точно так же, как ее образ после выключения и повторного включения. Затем они взламывали и снова начинали использовать его, потому что уязвимость все еще существовала - им не нужно было оставлять для себя какие-либо бэкдоры. Здесь могла бы помочь оценка памяти, но в этом случае достаточно было наблюдать за трафиком, чтобы быстро определить уязвимость.
Следовательно:
Единственная причина, по которой не следует отключать питание и выполнять оценку диска в автономном режиме, - это если вы собираетесь пройти через боль, выполняя тщательный анализ памяти об угрозе, пока она находится на месте и работает. Если вы дошли до того, что это необходимо, то нет причин отключать любую вилку.
Если вы не проводите анализ памяти, то лучше всего выдернуть вилку из розетки - отключение Ethernet (или использование команды выключения) только приведет к предварительному уведомлению злоумышленника, что иногда имеет значение.
Так:
Потяните их за оба, если вы не проводите анализ памяти, и в этом случае не тяните ни то, ни другое.
Это не ситуация «или-или». Обычно вы хотите сделать и то, и другое - вы хотите выполнить определенную криминалистику (дамп запущенных процессов, прослушивающие сокеты, файлы в / tmp и т. Д.) В системе, которая была удалена из сети, а затем выполнить оставшуюся диагностику из безопасного среда (например, live CD). Однако бывают ситуации, когда ни один из подходов не является правильным, и вам нужно подумать и понять, какие они могут быть в вашей организации.
Прежде чем что-либо делать, выясните, нужно ли вам сохранить доказательства для возможного судебного преследования. Работа с доказательствами - очень сложный предмет и не для слабо обученных. Как только вы ответите на этот вопрос, квалифицированный специалист по компьютерной криминалистике сможет взять это оттуда.
Не нужно выключать сервер. Вы можете просто отключить подключение от пограничного шлюза / маршрутизатора. Одного правила брандмауэра будет достаточно, чтобы отбросить любой отправленный / полученный пакет.
Ответ во многом зависит от того, что вы имеете в виду под словом «укорененный». Вытягивание сетевого лидера обычно является хорошей идеей, особенно если вы считаете, что это был активный злоумышленник, ищущий конфиденциальную информацию.
Гораздо труднее ответить. Если вы чувствуете, что запущен вредоносный код, который может замести следы, сделайте это. Однако, если вы чувствуете, что в памяти все еще есть доказательства взлома, оставьте его включенным.
В целом, это зависит от того, имеете ли вы дело с вредоносным кодом, недовольным персоналом или кем-то, у кого есть конкретная цель.
Если вы ошибаетесь из соображений осторожности, отключите питание. Вы потеряете небольшое количество потенциальных доказательств, но можете предотвратить массовое удаление других доказательств автоматическим кодом.
- Опять же, если вы чувствуете, что машина была взломана, и вы знаете, что на ней нет конфиденциальных данных, вы очень будучи уверенным в безопасности вашей сети в другом месте и понимая последствия этого, возможно, как можно скорее получите судебно-медицинский эксперт и посмотрите, сможете ли вы отследить или понять атаку и действовать оттуда. Хотя обычно это не очень хорошая идея
Мой ответ был до редактирования, с 5 предположениями.
Мое предположение заключалось в том, что если ваш сервер получил root-доступ, вы имеете дело со сложным целевым злоумышленником, и у вас нет возможности узнать, когда и откуда произошла атака. (Поскольку машина была рутирована, очевидно, что вы не можете доверять тому, что она вам сообщает. Однако у вас может быть некоторая нестандартная информация, например IDS ...)
Я также предположил, что вам интересно иметь дело с нападающим, а не просто отмахиваться от него, как надоедливой мухи. Если предполагаемый злоумышленник - скрипач, все будет по-другому. Я также предположил, что, поскольку злоумышленник является целевым и изощренным, вполне вероятно, что у него есть специальное программное обеспечение, работающее на вашем компьютере, которое может реагировать на ваши действия на нем ...
Ни то, ни другое.
Проверять, выписываться https://security.stackexchange.com/q/181/33в любом случае это плохая идея.
Это все равно что дать пару повязок на черный рыцарь... слишком мало, слишком поздно, это не сильно поможет.
Для всех тех, кто считает, что этот ответ слишком далек от истины или просто недостаточно "заботится о безопасности" - вам необходимо осознать, что Это уже слишком поздно.
Это больше не ваш сервер, даже если вы его полностью отключите. Даже если вы выключитесь, запустите все свои AV и все такое - вам это больше не принадлежит, Oни делать.
Это своего рода определение «укорененного».
Теперь, предполагая, что они владеют им и могут скрыть свое владение от вас, вы должны подумать - что приведет к его отключению?
В только то, чего он добьется, - поскольку он будет продолжать укореняться, независимо от того, - это дать вашему противнику знать, что вы его поймали. Который просто поднимает охрану и заставляет их убирать за собой (если они еще этого не сделали), что просто убьет любую надежду на криминалистику.
Вы по-прежнему не защищаете этот сервер или какие-либо его данные. Как давно это был укоренился? Как бы вы узнали?
Что тебе лучше делать:
Рассмотрев свои предположения, сделайте и то, и другое. Используйте носитель на основе CD / DVD, чтобы вывести текущее состояние. Прежде всего, вы захотите определить, как вы были скомпрометированы. Вы также можете попытаться восстановить данные пользователя, которых нет в ваших резервных образах. Эй
Затем перестройте систему с последнего незагрязненного носителя резервных копий. Если возможно, проверьте это с помощью контрольных сумм. Или переустановите программное обеспечение с установочного носителя и измените конфигурацию. Если вы использовали Puppet или cfEngine для настройки своего сервера, изменение конфигурации должно быть автоматическим.
Перезагрузите данные пользователя и выполните поиск компонентов корневого комплекта. Убедитесь, что в каталогах данных нет программ setuid или setgid.
Определите и заблокируйте метод доступа, используемый для заражения системы. Поэтапная реактивация сервера, дающая время для проверки правильности работы приложений. Внимательно следите за новыми попытками заражения.
Все это предполагает, что заражение находится на корневом уровне. Веб-инфекции могут быть выполнены путем изменения кода, выполняемого веб-сервером. Предоставление веб-серверу доступа на запись к его коду может упростить задачу. Вы все равно можете рассматривать этот случай, как если бы учетная запись root была взломана.
Если root в одной системе был скомпрометирован в одной системе, возможно, у вас скомпрометированы несколько систем. Тщательно продумайте, к каким системам можно получить доступ без пароля из зараженной системы.