Все мы знаем, что такое бывает. Старый злой айтишник оставляет черный ход в систему и сеть, чтобы повеселиться с новыми ребятами и показать компании, как плохо без него.
Я никогда не испытывал этого лично. Больше всего я сталкивался с тем, кто ломал и крал вещи прямо перед отъездом. Но я уверен, что такое бывает.
Итак, при захвате сети, которой нельзя полностью доверять, какие шаги следует предпринять, чтобы все было безопасно и надежно?
Это действительно, очень, очень сложно. Это требует очень полного аудита. Если вы уверены, что старый человек оставил после себя что-то, что взорвется или потребует его повторного найма, потому что он единственный, кто может потушить пожар, то пора предположить, что вас укоренили враждебная сторона. Относитесь к этому так, как будто к вам пришла группа хакеров и украла вещи, и вам нужно навести порядок после их беспорядка. Потому что это то, что есть.
Решение о начале аудита такого невероятного объема должно быть принято на очень высоком уровне. Решение рассматривать это как потенциальное уголовное дело будет принято вашим юридическим отделом. Если они решат сначала провести предварительное расследование, дерзайте. Начни искать.
Если найдешь доказательства, немедленно прекратить.
Но на самом деле, как далеко тебе нужно зайти? Это где управление рисками вступает в игру. Проще говоря, это метод уравновешивания ожидаемого риска и убытка. Сисадмины делают это, когда мы решаем который вне сайта мы хотим поставить бэкапы; банковский сейф или центр обработки данных за пределами региона. Выяснение того, какой части этого списка необходимо следовать, - это упражнение в управлении рисками.
В этом случае оценка начнется с нескольких вещей:
Решение о том, как далеко нырнуть в кроличью нору, будет зависеть от ответов на эти вопросы. Для обычных отъездов администраторов, где ожидание зла очень невелико, полный цирк не требуется; изменение паролей на уровне администратора и изменение ключей для любых внешних SSH-хостов, вероятно, будет достаточно. Опять же, это определяет позиция безопасности корпоративного управления рисками.
Для админов, которые были уволены по какой-либо причине или зло возникло после их нормального ухода, цирк становится более необходимым. Наихудший сценарий - параноидальный тип BOFH, которого уведомили, что их должность будет сокращена через 2 недели, поскольку это дает им достаточно времени, чтобы подготовиться; в подобных обстоятельствах Идея Кайла о щедром выходном пособии может смягчить все виды проблем. Даже параноики могут простить много грехов после получения чека с оплатой за 4 месяца. Эта проверка, вероятно, будет стоить меньше, чем стоимость консультантов по безопасности, необходимых для выявления их зла.
Но в конечном итоге все сводится к стоимости определения того, было ли совершено зло, по сравнению с потенциальной ценой любого зла на самом деле.
Я бы сказал, что это баланс между вашей заботой и деньгами, которые вы готовы заплатить.
Очень обеспокоен:
Если вы очень обеспокоены, вы можете нанять внешнего консультанта по безопасности, чтобы он полностью просканировал все как с внешней, так и с внутренней точки зрения. Если бы этот человек был особенно умным, у вас могли бы возникнуть проблемы, у него может быть что-то, что будет бездействовать на какое-то время. Другой вариант - просто все перестроить. Это может показаться чрезмерным, но вы хорошо изучите среду и также создадите проект аварийного восстановления.
Обеспокоен умеренно:
Если вас это немного беспокоит, вы можете просто сделать:
Для будущего:
Идем вперед, когда администратор уйдет, устроьте ему приятную вечеринку, а затем, когда он будет пьян, просто предложите ему подвезти его домой, а затем выбросьте его в ближайшую реку, болото или озеро. А если серьезно, это одна из веских причин для щедрого выходного пособия администраторам. Вы хотите, чтобы они чувствовали себя нормально, уходя как можно больше. Даже если они не должны чувствовать себя хорошо, кого это волнует? Смиритесь и сделайте их счастливыми. Представьте, что это ваша вина, а не их. Стоимость увеличения расходов на страхование по безработице и выходное пособие не сравнить с ущербом, который они могут нанести. Это все о пути наименьшего сопротивления и создании как можно меньше драмы.
Не забывайте о Teamviewer, LogmeIn и т. Д. Я знаю, что это уже упоминалось, но аудит программного обеспечения (многих приложений) каждого сервера / рабочей станции не повредит, включая сканирование подсетей с помощью nmap. Скрипты NSE.
Хорошо управляемая инфраструктура должна иметь инструменты, мониторинг и средства контроля, чтобы в значительной степени предотвратить это. Это включает:
Если эти инструменты установлены правильно, у вас будет контрольный журнал. В противном случае вам придется выполнить полный тест на проникновение.
Первым шагом будет проверка всего доступа и изменение всех паролей. Сосредоточьтесь на внешнем доступе и потенциальных точках входа - именно здесь лучше всего проводить время. Если внешний след не оправдан, устраните его или уменьшите. Это даст вам время сосредоточиться на внутренних деталях. Также помните обо всем исходящем трафике, так как программные решения могут передавать данные с ограниченным доступом извне.
В конечном итоге, будучи системным и сетевым администратором, вы получите полный доступ к большинству, если не ко всем вещам. С этим связана высокая степень ответственности. К найму с таким уровнем ответственности не следует относиться легкомысленно, и необходимо с самого начала предпринять шаги для минимизации риска. Если нанять профессионала, даже если он уйдет в плохих условиях, он не будет предпринимать действий, которые были бы непрофессиональными или незаконными.
Есть много подробных сообщений о сбоях сервера, которые охватывают надлежащий системный аудит для безопасности, а также что делать в случае чьего-либо увольнения. Эта ситуация не уникальна.
Перво-наперво - сделайте резервную копию всего на внешнем хранилище (например, на ленте или жестком диске, которые вы отключили и поместили в хранилище). Таким образом, если произойдет что-то вредоносное, вы сможете немного поправиться.
Затем проверьте правила вашего брандмауэра. Все подозрительные открытые порты следует закрыть. Если есть черный ход, то предотвращение доступа к нему было бы хорошо.
Учетные записи пользователей - найдите своего недовольного пользователя и как можно скорее отключите его доступ. Если есть ключи SSH, или файлы / etc / passwd, или записи LDAP, даже файлы .htaccess, все должны быть просканированы.
На важных серверах ищите приложения и активные порты прослушивания. Убедитесь, что связанные с ними запущенные процессы кажутся разумными.
В конце концов, решительный и недовольный сотрудник может сделать что угодно - в конце концов, он знает все внутренние системы. Можно надеяться, что у них хватит решимости не предпринимать негативных действий.
Умный BOFH может делать любое из следующего:
Периодическая программа, которая инициирует исходящее соединение netcat на хорошо известном порту для приема команд. Например. Порт 80. Если все сделано правильно, то прямой и обратный трафик будет выглядеть как трафик для этого порта. Таким образом, если на порту 80 он будет иметь заголовки HTTP, а полезная нагрузка будет фрагментами, встроенными в изображения.
Апериодическая команда, которая ищет файлы для выполнения в определенных местах. Места могут быть на компьютерах пользователей, сетевых компьютерах, дополнительных таблицах в базах данных, каталогах временных файлов спула.
Программы, которые проверяют, работает ли еще один или несколько других бэкдоров. Если это не так, то на нем устанавливается вариант, и подробности отправляются по электронной почте в BOFH.
Поскольку большая часть резервного копирования теперь выполняется с диска, измените резервные копии, чтобы они содержали хотя бы некоторые из ваших руткитов.
Способы уберечься от таких вещей:
Когда сотрудник класса BOFH уходит, установите новый ящик в DMZ. Он получает копию всего трафика, проходящего через межсетевой экран. Ищите аномалии в этом трафике. Последнее нетривиально, особенно если BOFH хорошо имитирует обычные шаблоны трафика.
Переделайте свои серверы так, чтобы критически важные двоичные файлы хранились на носителе только для чтения. То есть, если вы хотите изменить / bin / ps, вам нужно перейти к машине, физически переместить переключатель с RO на RW, перезагрузить одного пользователя, перемонтировать этот раздел rw, установить новую копию ps, синхронизировать, перезагрузить, Переключить переключатель. Система, созданная таким образом, имеет по крайней мере несколько доверенных программ и надежное ядро для выполнения дальнейшей работы.
Конечно, если вы пользуетесь окнами, вас обливают.
Способы предотвращения подобных вещей.
Тщательно проверяйте кандидатов.
Выясните, недовольны ли эти люди, и заранее устраните кадровые проблемы.
Когда вы увольняете администратора с такими полномочиями, пирог становится еще лучше:
а. Его зарплата или часть его заработной платы сохраняется в течение определенного периода времени или до тех пор, пока не произойдет серьезное изменение в поведении системы, необъяснимое ИТ-персоналом. Это могло быть экспоненциальным спадом. Например. он получает полную зарплату за 6 месяцев, 80% от этой суммы за 6 месяцев, 80% от который на ближайшие 6 месяцев.
б. Часть его зарплаты - это опционы на акции, которые не вступают в силу в течение одного-пяти лет после его ухода. Эти варианты не удаляются, когда он уходит. У него есть стимул убедиться, что компания будет хорошо работать через 5 лет.
Есть одна большая проблема, которую все упустили.
Помните, что существуют не только системы.
Мне кажется, что проблема существует еще до ухода админа. Просто тогда проблема больше замечается.
-> Нужен процесс для аудита каждого изменения, и часть процесса заключается в том, что изменения применяются только через него.
Обязательно сообщите об этом всем в компании, когда они уйдут. Это устранит вектор атаки социальной инженерии. Если компания большая, то убедитесь, что люди, которым нужно знать, знают.
Если администратор также отвечал за написанный код (корпоративный веб-сайт и т. Д.), Вам также необходимо будет провести аудит кода.
Проверьте журналы на своих серверах (и компьютерах, на которых они работают напрямую). Ищите не только их учетную запись, но и учетные записи, которые не известны администраторам. Ищите дыры в своих журналах. Если журнал событий был недавно очищен на сервере, это подозрительно.
Проверьте дату изменения файлов на своих веб-серверах. Запустите быстрый сценарий, чтобы вывести список всех недавно измененных файлов и просмотреть их.
Проверьте дату последнего обновления для всех ваших групповых политик и пользовательских объектов в AD.
Убедитесь, что все ваши резервные копии работают и существующие резервные копии все еще существуют.
Проверьте серверы, на которых вы выполняете службы теневого копирования томов, на предмет отсутствия предыдущей истории.
Я уже вижу в списке много хороших вещей и просто хотел добавить эти другие вещи, которые вы можете быстро проверить. Стоит сделать полный обзор всего. Но начнем с мест с самыми последними изменениями. Некоторые из этих вещей можно быстро проверить, и они могут вызвать тревогу на раннем этапе, чтобы помочь вам.
Если вы действительно не параноик, то я предлагаю просто запустить несколько инструментов сканирования TCP / IP (tcpview, wirehark и т. Д.), Чтобы проверить, нет ли каких-либо подозрительных попыток связаться с внешним миром.
Измените пароли администраторов и убедитесь, что нет «дополнительных» учетных записей администраторов, которые не нужны.
Кроме того, не забудьте изменить пароли беспроводного доступа и проверить настройки программного обеспечения безопасности (в частности, AV и Firewall).
Предлагаю начать с периметра. Проверьте настройки брандмауэра и убедитесь, что у вас нет неожиданных точек входа в сеть. Убедитесь, что сеть физически защищена от повторного входа и получения доступа к любым компьютерам.
Убедитесь, что у вас есть полностью рабочие и восстанавливаемые резервные копии. Хорошие резервные копии убережут вас от потери данных, если он сделает что-то деструктивное.
Проверка любых сервисов, которые разрешены по периметру, и убедитесь, что ему отказано в доступе. Убедитесь, что в этих системах есть хорошо работающие механизмы ведения журналов.
Удачи, если он действительно что-то знает и заранее что-то настраивает. Даже болван может позвонить / отправить по электронной почте / факсу в телефонную компанию с разъединением или даже попросить их запустить полные тестовые шаблоны на цепях в течение дня.
Серьезно, проявление немного любви и несколько тысяч при отъезде действительно снижает риск.
Ах да, на случай, если они позвонят, чтобы «получить пароль или что-то в этом роде», напомните им о вашей ставке 1099 и 1 час мин и 100 путевых расходах на звонок, независимо от того, нужно ли вам где-то быть ...
Эй, это как мой багаж! 1,2,3,4!
По сути, я бы сказал, что если у вас есть грамотный BOFH, вы обречены ... есть множество способов установить бомбы, которые останутся незамеченными. И если ваша компания привыкла катапультировать "военных" тех, кого уволили, будьте уверены, что бомба будет заложена задолго до увольнения !!!
Лучший способ - свести к минимуму риски, связанные с сердитым админом ... Избегайте «увольнений для сокращения расходов» (если он компетентный и злобный BOFH, убытки, которые вы можете понести, вероятно, будут намного больше, чем те, которые вы получите от увольнение) ... Если он допустил неприемлемую ошибку, лучше попросить его исправить ее (бесплатно) в качестве альтернативы увольнению ... В следующий раз он будет более осмотрительным, чтобы не повторить ошибку (что приведет к увеличению в его ценности) ... Но обязательно попадайте в хорошую цель (часто некомпетентные люди с хорошей харизмой отвергают собственную вину в пользу компетентной, но менее социальной).
И если вы столкнулись с настоящим BOFH в худшем смысле (и это поведение является причиной увольнения), вам лучше быть готовым переустановить с нуля всю систему, с которой он контактировал (что, вероятно, будет означать каждый компьютер).
Не забывайте, что изменение одного бита может привести к разрушению всей системы ... (бит setuid, Перейти, если переносить, чтобы перейти, если нет, ...) и что даже инструменты компиляции могли быть скомпрометированы.
Сжечь .... сжечь все.
Это единственный способ убедиться.
Затем сожгите все свои внешние интересы, регистраторов доменов, провайдеров платежей по кредитным картам.
Если подумать, возможно, проще попросить кого-нибудь из байкеров убедить человека, что для него лучше не беспокоить вас.
Удалите все, начните заново;)
Предположительно, компетентный администратор где-то в процессе сделал так называемое РЕЗЕРВНОЕ КОПИРОВАНИЕ базовой конфигурации системы. Также было бы безопасно предположить, что резервные копии выполняются с некоторой разумной частотой, позволяющей восстановить известную безопасную резервную копию.
Учитывая, что некоторые вещи делать изменения, рекомендуется по возможности запускать из резервной копии, виртуализированной, пока вы не убедитесь, что основная установка не скомпрометирована.
Предполагая, что худшее становится очевидным, вы объединяете то, что можете, а оставшееся вводите вручную.
Я шокирован, что до меня никто не упомянул о безопасном резервном копировании. Означает ли это, что я должен отправить свое резюме в ваши отделы кадров?
Вы знаете свою систему и то, что она делает. Итак, вы можете попытаться представить, что может быть изобрел для подключения извне, даже если вы больше не системный администратор ...
В зависимости от того, как устроена сетевая инфраструктура и как все это работает, вы лучший человек, который может знать, что делать и где это может быть расположено.
Но, как вы, кажется, говорите из эксперимента бофх, вам нужно искать везде ...
Поскольку основная цель - взять удаленный контроль над вашей системой через ваше интернет-соединение, вы можете посмотреть (даже заменить, потому что он тоже может быть поврежден !!) брандмауэр и попытаться идентифицировать каждый активное соединение.
Замена межсетевого экрана не гарантирует полной защиты, но гарантирует, что ничего не останется скрытым. Поэтому, если вы следите за пакетом, пересылаемым брандмауэром, вы должен видеть все, включая нежелательный трафик.
Вы можете использовать tcpdump
для отслеживания всего (как это делают американские параноики;) и просматривать файл дампа с помощью расширенного инструмента, такого как wireshark
. Потратьте немного времени, чтобы увидеть, что это за команда (требуется 100 ГБ свободного места на диске):
tcpdump -i eth0 -s 0 -C 100 -w tcpdump- -W 1000 >tcpdump.log 2>tcpdump.err </dev/null &
Даже если вы что-то найдете, вы не будете уверены, что нашли совсем нехорошее!
Наконец, вы не будете тихо, пока вас не переустановят все (из проверенных источников!)
Если вы не можете переделать сервер, то, вероятно, лучше всего заблокировать ваши брандмауэры, насколько это возможно. Следите за каждым возможным входящим подключением и убедитесь, что оно сведено к абсолютному минимуму.
Смените все пароли.
Заменить все ключи ssh.
Вообще довольно сложно ...
но если это веб-сайт, взгляните на код сразу за кнопкой «Войти».
Мы однажды нашли что-то типа «if username = 'admin'» ...
По сути, обесценить знания предыдущих ИТ-специалистов.
Измените все, что вы можете изменить, не затрагивая ИТ-инфраструктуру.
Еще одна хорошая практика - смена или диверсификация поставщиков.