Введение
Похоже, сегодня всё зло мира решило направить усилия на выпуск “червей”. Нет, мы не имеем в виду тех червей, которые выползают в дождь на асфальт и на которых хорошо клюёт рыба. Мы подразумеваем крошечные куски кода, которые доставляют сегодня столь много неприятностей, заражая компьютеры. Во многих организациях администраторы до сих пор ещё не вычистили компьютеры от “червя” Zotob, причем, чем больше компьютеров в компании, тем сложнее становится эта задача. Именно поэтому мы бы хотели на страницах THG.ru обсудить важную тему для любого сетевого администратора: управление установкой “заплаток”, патчей и исправлений. Процесс, который на английском называется “patch management”.
Но для многих организаций управление установкой исправлений до сих пор почему-то воспринимается как что-то необычное. Как говорится, пока гром не грянет, мужик не перекрестится. Давайте вспомним новейшую историю. В августе 2003 грянул гром: эпидемия “червя” MS Blaster врасплох застала многие организации. “Червь” стремительно пронёсся по компьютерам, заражая их подряд. Напомним, что Blaster использует “дырку” в протоколе RPC (remote procedure call) в операционных системах Windows, которая и позволила ему стремительно размножаться. Всего в мире было заражено более восьми миллионов компьютеров. Вирус на несколько недель нарушил нормальную работу многих организаций. Администраторам пришлось справляться с трудной задачей – бегать по компьютерам, лечить их от “червя” и устанавливать “заплатки”. Чаще всего – вручную.
Скольких бы проблем можно было избежать, если делать всё вовремя. Дело в том, что “черви”, использующие ту или иную “дыру”, появлялись позднее, чем выпускались бюллетень и исправление Microsoft. Впрочем, этот интервал в последнее время сокращается. Посмотрите на тенденцию:
- “червь” MS Blaster (2003): появился в “диком” виде примерно через месяц после публикации исправления Microsoft;
- “червь” Sasser (2004): появился в “диком” виде примерно через две недели после публикации исправления Microsoft;
- “червь” Zotob (2005): появился в “диком” виде примерно через неделю после публикации исправления Microsoft.
Старые добрые вирусы даже не попали в три топовые категории.
Подобное снижение временного промежутка увеличивает нагрузку на ИТ-персонал, которому сегодня требуются средства и инструменты для быстрого распространения исправлений по рабочим станциям и серверам. Целью нашей первой статьи является анализ и решение проблем, с которыми сталкивается персонал при распространении “заплаток” безопасности и обновлений в корпоративном окружении. Во второй части статьи мы проанализируем существующие на рынке решения по управлению установкой исправлений.
Проблемы, которые нужно решить
В корпоративном окружении существует несколько проблем, которые следует решить в отношении установки “заплаток” безопасности. Проблемы решаются как автоматизированными средствами, так и вручную. Давайте их рассмотрим.
Установка исправлений на удалённые клиенты
Если ваша организация использует большое число удалённых клиентов, которые обращаются к вашей сети через коммутируемый доступ или VPN, установить на них исправления будет не так то легко. В зависимости от того, сколько исправлений Microsoft (или другой производитель ПО) выпустила в любой данный месяц, вам придётся закачать на клиента несколько мегабайт “заплаток” через медленный канал.
Если рассмотреть техническую сторону проблемы, то некоторые инструменты для установки исправлений способны использовать возможности Background Intelligent Transfer Service (BITS) для “заливания” патчей на удалённые клиенты, не оккупируя целиком доступную пропускную способность канала. Если пользователь прервёт соединение – никаких проблем. Скачивание патча продолжится в следующий раз, как только пользователь подключится.
Если указанный сценарий не представляется возможным, то всегда можно установить патч вручную. В некоторых организациях каждый месяц создаются специальные CD, которые по почте рассылаются удалённым клиентам. Причём эти исправления можно инкапсулировать в установочный пакет вида “Run as” (от лица администратора), так что применять CD может даже пользователь без административных привилегий.
Установка исправлений на выключенные компьютеры
Если есть аппаратная поддержка, функция пробуждения по сети (Wake-on-LAN) способна включить рабочую станцию для установки исправления.
Если работник находится в отпуске, а его компьютер выключен, то как администратор сможет установить “заплатку” при помощи автоматических инструментов? Многие посчитают, что это не имеет значения. Как только пользователь вернётся и включит рабочую станцию, то после входа в систему она автоматически скачает исправления с помощью соответствующей установленной утилиты. Однако исправления могут устанавливаться недостаточно быстро. Если в вашей сети активен “червь”, то машина может заразиться сразу же после того, как будет инициализирована сетевая карта.
Самым лучшим способом будет установка исправлений на рабочие станции с помощью функции пробуждения по сети (Wake-on LAN). Утилиты по автоматической установке исправлений позволяют включать удалённые рабочие станции для установки “заплаток”. Лучше придерживаться именно такого подхода.
Недавно заменённые или восстановленные с образа рабочие станции
Вряд ли эффективным решением будет установка на новую машину операционной системы “с нуля” или перестановка ОС при перестройке существующей рабочей станции. Именно поэтому в большинстве организаций ИТ-отдел создаёт образы настольных и серверных операционных систем с помощью инструментов вроде Norton Ghost. Очень важно, чтобы эти образы обновлялись хотя бы раз в три месяца, включая весь набор выпущенных “заплаток”.
Почему? Когда на рабочую станцию устанавливается “девственная” операционная система, то автоматизированные решения по распространению “заплаток” начнут устанавливать исправления. А если с момента выпуска “девственной” операционной системы прошло 12 месяцев, то придётся устанавливать на машину большое число исправлений, и как можно быстрее (за ограниченное время). При этом машина будет многократно перегружаться. В худшем случае, подобное поведение может смутить пользователя, и он начнёт обращаться всё в тот же ИТ-отдел. Или же подобный процесс может замедлить работу ИТ-персонала по настройке новой машины. Как только в образ будут внесены все необходимые “заплатки”, их можно убрать из списка обязательного распространения в вашей организации.
С помощью агента или без него
При выборе того или иного решения по автоматической установке исправлений в вашей организации приходится отвечать на вопрос: будет ли решение использовать агента, или нет. Решения на основе агента требуют установки небольшого клиента на каждую рабочую станцию и сервер. Клиент регулярно связывается с центральным сервером, сообщает информацию о состоянии системы и смотрит наличие новых задач на сервере – скажем, по установке нового обновления. Решения без агентов не требуют установки клиента. Они работают с серверами и рабочими станциями путём сканирования сети и использования стандартных протоколов Windows.
У каждого решения есть положительные и отрицательные стороны. Классическим аргументом в пользу решений без агентов будет то, что на машинах не требуется запускать в фоне клиента, который будет потреблять ресурсы (память и время процессора). Но по мере того, как цены на “железо” падают, а компьютеры стали оснащаться большим количеством памяти, эта проблема постепенно сходит на нет. Ещё один аргумент связан с тем, что решения на основе агентов сложно реализовывать, если у вас сеть из тысячи рабочих станций в большом географическом регионе. А ещё острее эта проблема встаёт при большом процентном соотношении удалённых клиентов, использующих для связи коммутируемый доступ или VPN. В данном случае можно рассмотреть вариант регулярной рассылки дисков с исправлениями.
Решения без агентов тоже имеют свои сложности. Учитывая то, что таким программам требуется регулярно сканировать сеть с помощью стандартных протоколов Windows, скажем, NetBIOS, есть шанс, что они не смогут обнаружить абсолютно все серверы и рабочие станции. Кроме того, могут возникать проблемы с правами доступа, поскольку в некоторых организациях предпочитают не запускать консоль сканирования от имени учётной записи с большими правами, боясь утечки важной информации. Кроме того, подобные решения дают больший сетевой трафик, чем системы, построенные на агентах.
При выборе решения следует учитывать вашу инфраструктуру. Если ваше предприятие имеет распределённую сетевую инфраструктуру с большим количеством удалённых клиентов, то лучше подойдёт решение на основе агентов. Если же ваша сеть находится в одном физическом участке, то вполне подойдёт и решение без агентов.
Заключение
Простои, связанные с атакой “червя”, могут обходиться организациям в миллионы долларов. Именно поэтому сегодня очень критично разворачивать гибкую и эффективную систему своевременной установки исправлений. Учитывая рост активности “червей” и других вредоносных программ за последние несколько лет, становится очевидно, что “заплатки” нужно устанавливать как можно быстрее. И здесь неважно, насколько ваша сеть защищена от проникновения извне: вредоносная программа может всегда найти лазейку.
Во второй части статьи мы рассмотрим отдельные решения, которые позволяют проводить анализ уязвимостей и устанавливать исправления.