Управління латками в ОС Windows h2>
Марсін Поліч (Marcin Policht) p>
Управління
латками (patch management, без сумніву, є однією з найбільш
критично важливих і складних проблем наших днів, пов'язаних з безпекою
операційних систем Windows. Ця проблема загострилася в останні кілька
місяців через збільшення частоти випуску Microsoft латок, розцінюємо як
«Критичні», що було реакцією компанії на зловмисні програми, що використовують
можливості основних вразливостей (для того, щоб отримати повний список
латок, зверніться до розділу Web-сайту Microsoft, присвяченому проблемам
безпеки). p>
Це
стає особливо важливим, оскільки Microsoft змінила власну
класифікацію ступеня безпеки систем на початку 2003 року, ввівши категорію
«Важлива» (important) (на додаток до «критичної», «помірної» і «низькою»
категорій), щоб більш точно відображати рівень терміновості, який повинен
братися до уваги при розгортанні латок. Завдяки цьому,
«Критична» оцінка резервується тільки для вразливостей, які можуть бути
використані зловмисними Інтернет-хробаками, що розповсюджуються без
втручання користувачів. p>
Тиск
з боку замовників, що змушує надавати аварійне програмне
забезпечення, що розгортається на сотні або навіть тисячі комп'ютерів, змушує
Microsoft шукати кошти для полегшення подібних зусиль. Це призвело до нового
циклу випуску латок, поява якого відноситься до листопада 2003 року. На відміну
від попереднього щотижневого розкладу (кожна середа), нові латки тепер
стають доступними для завантаження у другий вівторок кожного місяця (за
очевидним винятком для критично важливих випусків). І хоча це зміна
спрощує для корпоративних ІТ-підрозділів координацію графіків розгортання,
їм необхідно також вибрати методологію, що дозволяє враховувати і встановлювати
латки на всіх керованих системах Windows з максимальною точністю і
швидкістю (це особливо важливо, оскільки тепер вже очевидно, що навіть
кілька заражених черв'яком комп'ютерів можуть серйозно знизити функціональність
всій комп'ютерній мережі). p>
В
статтях цієї серії робиться спроба оцінити можливості, доступні в
даний час, оскільки ми намагаємося спростити процес вибору. Ми обговоримо як
безкоштовні методи розгортання (засновані на вдосконалення у
операційних системах Microsoft, інструментах сторонніх виробників і
рішеннях, заснованих на використанні сценаріїв), так і продукти, що поставляються
на платній основі. Ця перша стаття дає огляд розробок в технологіях,
пов'язаних з установкою латок, зроблених за останні кілька років і обговорює
головні концепції управління латками. p>
Найбільш
простим і популярним рішенням Microsoft з управління латками є
інструмент Windows Update, представлений в Windows 2000 (і той, що
подальший розвиток в Windows XP і 2003). Цей інструмент простий в установці і
конфігуруванні (особливо після удосконалень групових політик (Group
Policy, доданих в Windows XP, заснований на агентів (agent, які працюють на
цільових системах і що просять нові латки із заздалегідь визначеного
розташування (за замовчуванням, це група керованих серверів Microsoft Windows
Update. Windows Update здатний обслуговувати як окремих користувачів, так і
невеликі підприємства. На жаль, він не дуже добре підходить до жорстко
структурованим корпоративним середах, у яких зміни мають
контролюватися більш надійно і централізовано. Крім того, Windows Update
був призначений тільки для новітніх операційних систем, тоді як переважна
частина настільних систем і серверів продовжувала працювати під Windows NT 4.0. p>
Щоб
забезпечити більшу вибірковість в розгортанні латок і беручи до
увагу проблему традиційних операційних систем, Microsoft звернула свою
увагу на продукти, що постачаються сторонніми розробниками. Схоже, що
епідемії Code Red і Nimda, що спалахнули у вересні 2001 року, прискорили це
рішення. Спочатку Microsoft звернулася до нагальних потреб, випустивши утиліту IIS
Lockdown для автоматичного конфігурування безпеки Internet Information
Server; проте було ясно, що існує потреба для більш загальних рішень з
усунення інших вразливостей операційних систем Windows. p>
Спочатку,
відсутність готових рішень у цій області заповнювали такі сторонні
виробники, як Patchlink (Update Patch Management, GravityStorm (Service
Pack Manager 2000), St. Bernard Software (UpdateEXPERT і Shavlik Technologies
(HFNetChkPro. Microsoft уклала контракт з Shavlik Technologies на розробку
утиліти HFNetChk, що працює з командного рядка, функціонально обмеженою
версії інструменту компанії, що забезпечує тільки функціональні можливості
зі складання звітів. І хоча утиліта HFNetChk не може повною мірою
змагатися з більш досконалими (що включають можливості розгортання
латок), заснованими на використанні графічного інтерфейсу інструментами,
вона була безплатною і дозволяла провести облік латок не тільки для ОС Windows
NT 4.0 або більш пізніх версій, але також для ряду додатків Microsoft, таких
як SQL Server, Exchange Server, Windows Media Player і Internet Explorer. Її
скануючий ядро згодом було використано в інструменті Microsoft
Baseline Security Analyzer (MBSA, також розроблений для Microsoft компанією
Shavlik Technologies (його версія 1.0 була випущена в березні 2002 року). Як і її
попередниця, MBSA був обмежений підготовкою звітів, але пропонував
поліпшені можливості сканування, а також роботу як з командного рядка,
так і з графічного інтерфейсу користувача. p>
Для
поставки користувачам рентабельного рішення щодо розгортання латок, яке
також дозволило б їм централізований контроль над тим, які латки вже
встановлені, в червні 2002 року Microsoft випустила службу Software Update
Services (SUS) 1.0 (в даний час на стадії SP1 - вихід v2.0 очікується в
першому кварталі 2004 року). Доступна для вільного завантаження, SUS реалізує
переваги компонента Windows Update (що обмежує його використання
Windows 2000 і більш пізніми ОС) і використовує засновані на інтранет,
корпоративні сервери Windows Update, з яких внутрішні клієнтські
комп'ютери отримують перевірені оновлення. Параметри оновлення клієнтів можуть
бути задані за допомогою групових політик, у той час як настройки сервера
конфігуруються за допомогою інтуїтивно зрозумілого, заснованого на IE, інтерфейсу.
Оскільки SUS не надає будь-якої функціональності по складанню
звітів з інвентаризації, необхідно поєднувати її з MBSA або іншим порівнянним
за можливостями інструментом. p>
Також
Microsoft розробила комплексне рішення по розгортанню латок, як частина
Feature Pack - доповнення (add-on) до Systems Management Server (SMS 2.0 (без
додаткової плати за the Feature Pack; щоб використовувати його, потрібно просто
придбати та розгорнути SMS 2.0). Feature Pack комбінує інвентаризацію (його
скануючий процес використовує Microsoft Baseline Security Analyzer) і
розгортання. У нещодавно випущену SMS 2003 були вбудовані додаткові
покращення в галузі управління латками. Наступні статті цієї серії будуть
розповідати про ці інструментах, а також про набір подібних продуктів
сторонніх виробників. p>
Подібні
покращення в управлінні латками спростили завдання підтримки безпеки середовищ
Windows. Хоча випуск ОС Longhorn з її революційними змінами в цій області
відкладено на деякий час, останні ініціативи Microsoft принесли значимі
поліпшення. Наприклад, число латок, що не потребують перезавантажувати систему,
постійно збільшується. p>
Безкоштовна
утиліта QCHAIN.EXE дозволяє поєднувати кілька виправлень (hot fixe в
єдиний пакет (для подробиць і роз'яснень, подивіться статтю 296861 з Бази
Знань (КВ) Microsoft). Стратегія Microsoft на обмеження оновлень тільки
окремими латками скасовано, що призвело до випуску Update Rollup 1 for
Windows XP в жовтні 2003 року. Це спрощує застосування латок, випущених
після Windows-XP-SP1 для знову встановлюваних систем. Очікується, що скоро
латки будуть доступні в форматі. MSI, усуває необхідність створення
індивідуальних пакетів у тих середовищах, де використовується розгортання на основі
групових політик. Можливо, одного разу Windows Update буде пропонуватися навіть у
вигляді Web-служби, яка допомагає розробникам створювати внутрішні рішення з
розгортання оновлень, засновані на технології. NET. p>
В
основному, рішення з управління латками використовують підхід, дуже схожий на
інвентаризацію та розгортання, хоча зрозуміло, що деталі реалізації можуть
відрізнятися. Інвентаризація спирається на внутрішню БД у визначенні того, що
розглядається як рекомендований рівень зарплат і надає критерій для
обгрунтування того, яка саме латка повинна встановлюватися. Продукти від
Microsoft і Shavlik Technologies (на яких засновані HFNetChk, MBSA та SMS 2.0
Feature Pack, відстежують опубліковані на Web-сайті Microsoft латки з
допомогою такого ж механізму, заснованого на файлі, форматувати в XML,
званому mssecure.xml. Цей файл, доступний централізовано у попередньо
встановлених розташуваннях, служить як шаблон, з яким порівнюється
стан оновлень на цільових системах. mssecure.xml може бути отриманий
безпосередньо або в його стислій, з цифровим підписом версії, mssecure.cab. Обидва файли
можуть бути завантажені з: p>
Web-сайту
Microsoft за посиланнями https:// www.microsoft.com/technet/security/search/mssecure.xml і http://download.microsoft.com/download/xml/security/1.0/nt5/en-us/mssecure.cab p>
Web-сайту Shavlik.com за посиланнями https:// xml.shavlik.com/mssecure.xml і http://xml.shavlik.com/mssecure.cab
p>
Ви
можете відкрити файл mssecure.xml в Internet Explorer і переглянути його
зміст. Починаючи з версії 5, цей браузер має вбудований аналізатор (parser XML. Для більш старих версій,
встановіть XML Parser v4,
який можна завантажити за посиланням http://msdn.microsoft.com/library/default.asp?url=/downloads/list/xmlgeneral.asp. В якості альтернативи ви можете
використовувати будь-який інший інструмент, що містить аналізатор XML (наприклад, безкоштовно завантаження XML Notepad). mssecure.xml містить досить деталізовану
інформацію про кожному оновленні, таку як: цільової версію операційної системи
і рівень пакета оновлення, відповідну статтю в Базі Знань (КВ) Microsoft і номер документу
бюлетеня безпеки, які поставлені продукти і ідентифікатори (ID) пакетів оновлення,
створювані ключі реєстру, версія файлу, контрольну сума і розташування, а
також вимоги щодо перезавантаження. p>
Крім
того, переважна більшість сторонніх виробників підтримує свої
власні механізми перевірки того, які оновлення повинні бути встановлені
(через їхні власні процедури тестування), а також розподілу
перевірених латок. Вони можуть також застосовувати індивідуальні алгоритми перевірки
для визначення того, чи була латка успішно встановлена (інструменти компаній
Microsoft і Shavlik Technologies підтримують
однаковий алгоритм). p>
Список літератури h2>
Для
підготовки даної роботи були використані матеріали з сайту http://mdforum.dynu.com
p>