Ізоляція загроз з Internet в Windows Server 2008 і Vista, Безпека ПЗ, Security & Hack, статті

Не дивно, що компанія Microsoft продовжила боротьбу зі шкідливими програмами в Windows Server 2008 і Windows Vista . Windows Server 2008 і Vista розташовують декількома новими компонентами безпеки для більш надійного захисту операційної системи, даних і користувачів від шкідливих програм.

Два компонента нових механізмів захисту від небезпечних програм стали результатом фундаментальних змін в архітектурі безпеки Windows: User Account Control (UAC), рішення для роботи з найменш важливими привілеями, і Integrity Control, механізм ізоляції (пісочниця) для шкідників, ненавмисно завантажених користувачами з Internet. Integrity Control також представляє собою розширення існуючої моделі управління доступом Windows – логіки операційної системи, що визначає, хто може звертатися до ресурсів. Детально UAC розглянуто в статті «Використання мінімальних привілеїв Windows Vista», опублікованій в Windows IT Pro / RE № 8 за 2006 р. У цій статті мова піде про архітектуру, функціонуванні та налаштування Integrity Control. В UAC і Integrity Control використовуються різні механізми захисту, але вони надають схожі служби, які доповнюють один одного і забезпечують ешелоновану оборону. Як UAC, так і Integrity Control можуть ізолювати шкідливі програми і запобігти їх поширення по операційній системі Windows.


Що може Integrity Control


Компонент Integrity Control операційної системи Windows Vista також відомий як Windows Integrity Control (WIC) і Mandatory Integrity Control (MIC). За допомогою Integrity Control адміністратори можуть призначити захищених об’єктів Windows, таким як системні теки і файли або розділи і папки реєстру, рівень довіри, або цілісності, по термінології Microsoft. Цілісність об’єкта не замінює, але доповнює звичні дозволу доступу до об’єктів. Рівні цілісності можуть бути зіставлені не тільки об’єктам Windows, але і облікових записів користувачів або процесам. Вони не замінюють, а розширюють типові права і членство в групах для користувачів і процесів.


Рівні цілісності Integrity Control гарантують, що об’єкти, користувачі або процеси з низьким рівнем цілісності не можуть впливати на ресурси з більш високим рівнем цілісності. Наприклад, програмного коду, ненавмисно завантаженому з Internet і збереженого браузером Microsoft Internet Explorer (IE) у папці Temporary Internet Files, за замовчуванням призначається низький рівень цілісності. Якщо така програма спробує виконати запис в розділ реєстру, то Integrity Control блокує її, так як за замовчуванням Windows призначає розділах реєстру більш високий рівень цілісності. Integrity Control може не тільки заборонити об’єктам, користувачам і процесам з низьким рівнем цілісності вести запис в ресурси з більш високим рівнем, а й обмежує їх право задіяти ресурси більш високого рівня.


Рівні цілісності розширюють і заміщають типові дозволу для ресурсів; навіть якщо завантажений з Internet програмний код через обліковий запис користувача отримує повні права в розділі реєстру, вести запис в цьому розділі заборонено через низький рівень цілісності.


Integrity Control, DAC і MAC


Ідея Integrity Control запозичена з механізму маркування, використовуваного для документів у військових і урядових установах: «для службового користування», «цілком таємно» і т. д. Співробітникам, які потребують доступу до інформації, призначається відповідний допуск.


Тільки що описана модель управління доступом відома як обов’язкове керування доступом (Mandatory Access Control, MAC). Основний принцип MAC полягає в тому, що організація (або система) та її ІТ-адміністратори визначають політику управління доступом як для користувачів, так і для ресурсів. Іншими словами, користувачі, власники ресурсів, не керують дозволами доступу до своїх ресурсів. В результаті такого обмеження для користувача керування модель MAC сильно відрізняється від моделі виборчого керування доступом (Discretionary Access Control, DAC). У Windows завжди використовувалося поєднання моделей MAC і DAC для управління до ресурсів.


Модель MAC займає переважне положення в Windows 2008 і Vista в порівнянні з попередніми версіями Windows. Через Integrity Control операційна система автоматично призначає ресурсів рівні цілісності на основі моделі MAC. Адміністратори можуть змінювати рівні цілісності тільки після того, як вони будуть призначені операційною системою, тобто операційна система може призначити такий високий рівень цілісності, що він буде недоступний навіть адміністраторам.


Рівні цілісності Integrity Control


В Integrity Control існує п’ять заздалегідь визначених рівнів цілісності (або рівнів довіри), які наведені в таблиці і детально описані нижче. Наступні п’ять рівнів цілісності перераховані в порядку від нижчого до вищого.




На екрані 1 показано, які наслідки мають рівні цілісності для користувачів Windows. Якщо користувач із середнім рівнем цілісності намагається виконати за допомогою Notepad запис в файл wic.txt, яким призначено високий рівень цілісності, то Windows блокує цю спробу і видає повідомлення про помилку.


Збільшити малюнок

Екран 1. Повідомлення про помилку, що відображається, коли користувачі намагаються виконати запис в файл з рівнем цілісності, що перевищує їх власний.


У наведеному вище списку показано, як Integrity Control використовує низький рівень цілісності, щоб ефективно ізолювати шкідливі програми, ненавмисно завантажені користувачами з Internet та збережені браузером в папці Temporary Internet Files. Низький рівень цілісності розташовується нижче обраного за замовчуванням середнього рівня в ієрархії рівнів цілісності. Це означає, що Integrity Control автоматично блокує спроби доступу до локальних ресурсів з боку шкідливих програм з Internet. За замовчуванням середній рівень цілісності призначається всім немаркованих об’єктах, користувачам і процесів, тобто більшості об’єктів, користувачів і процесів в системах Windows 2008 і Vista.


Integrity Control не блокує програми, завантажені в комп’ютер з джерел, відмінних від Internet, наприклад з дискет, USB-накопичувачів, CD-ROM або DVD-дисків. Таким програмам буде призначений середній або високий рівень, в залежності від облікового запису, з якої був зареєстрований користувач при появі програми. Тому важливо уважно ставитися до найменших привілеїв, навіть в Windows 2008 і Vista. Ніколи не можна відключати UAC і слід надзвичайно обережно поводитися з дискетами, USB-пристроями, CD-ROM і DVD-дисками з процесів адміністративного рівня.


Перегляд і зміна рівнів цілісності


З’ясувавши принципи роботи Integrity Control і організації рівнів цілісності, можна розглянути способи застосування рівнів цілісності об’єктів, користувачів і процесів.


На додаток до списку DACL, в якому Windows зберігає дозволу доступу об’єкта, у кожного об’єкта Windows є системний список управління доступом (System ACL, SACL), в якому зберігається рівень цілісності об’єкта. У попередніх версіях Windows список SACL використовувався тільки для зберігання параметрів аудиту об’єкта. При відкритті SACL об’єкта з розширеного режиму в програмі перегляду ACL рівень цілісності не відображається. Фахівці Microsoft вирішили не показувати рівні цілісності об’єкта в програмі перегляду ACL в Windows 2008 і Vista.


Щоб побачити рівень цілісності об’єкта, необхідно використовувати нову утиліту командного рядка icacls.exe зі складу Windows 2008 і Vista. Icacls також є в Windows Server 2003 SP2. Не дивуйтеся, якщо при запуску Icacls побачите тільки параметри аудиту об’єкта, але не рівень цілісності. Більшості об’єктів Windows за замовчуванням присвоюється середній рівень цілісності, який не зберігається в SACL. Тільки після того, як адміністратор явно призначить рівень, відмінний від середнього, він буде відображений командою Icacls.


На екрані 2 показано, як встановити рівень цілісності об’єкта з використанням команди Icacls і ключа / setintegritylevel, а потім витягти рівень цілісності того ж об’єкта за допомогою команди Icacls. Зверніть увагу на те, що рівень цілісності відображається з доменним ім’ям Mandatory Label. Завдяки цьому імені простіше розпізнати рівень цілісності серед різних дозволів об’єкта в списку SACL.


Збільшити малюнок

Екран 2. Зміна і перегляд рівня цілісності об’єкта з використанням команди lcacls.


Integrity Control також призначає рівні цілісності користувачам і процесам. Рівень цілісності користувача зберігається як об’єкт спеціальної групи в маркері доступу користувача. Маркер доступу – цифровий маркер, який отримує кожен користувач після успішної перевірки автентичності в Windows. Він містить відомості про права користувача і членство в групах. Процес перевірки автентичності в Windows використовує маркер доступу, щоб визначити, чи може користувач звернутися до ресурсу.


Для перегляду вмісту персонального маркера доступу використовуйте команду Whoami з ключем / groups. На екрані 3 показані групи в маркері доступу вбудованої облікового запису Administrator: першими в списку розташовані ідентифікатори безпеки (SID) груп, членом яких є вбудована адміністративна обліковий запис, а останнім – груповий SID рівня цілісності Administrator. За замовчуванням у Windows 2008 і Vista вбудованої облікового запису Administrator призначають високий рівень цілісності. Також зверніть увагу на SID, пов’язаний з високим рівнем цілісності; компанія Microsoft визначила набір нових відомих учасників безпеки і ідентифікатори SID, які представляють рівні цілісності в маркерах доступу користувачів і процесів. Список ідентифікаторів SID кожного рівня наведено в таблиці.


Збільшити малюнок

Екран 3. Рівень цілісності, що відображається в маркері доступу облікового запису (перегляд з використанням Whoami).


Рівень цілісності процесу Windows також зберігається в цьому маркері доступу. Процес успадковує рівень цілісності від рівня облікового запису користувача, який виконав програму, або від рівня цілісності самої програми. Якщо обліковий запис користувача і програма мають різні рівні цілісності, то процесу призначається менший з двох рівнів.


Windows 2008 і Vista не мають коштів для перевірки рівня цілісності (використовувати для цієї мети Whoami або Task Manager поки не можна). Для перегляду рівня цілісності процесу в Process Explorer необхідно спочатку додати стовпець Integrity Level. Зробити це можна в діалоговому вікні Select Columns, що викликається з меню View у Process Explorer. На екрані 4 показаний стовпець Integrity Level в інтерфейсі Process Explorer.


Збільшити малюнок

Екран 4. Process Explorer зі стовпцем Integrity Level.


За замовчуванням тільки операційна система або адміністратор можуть змінити рівень цілісності об’єкта. Однак, володіючи правами адміністратора і розуміючи логіку зміни рівнів цілісності, можна змінити її, щоб надати права зміни рівня цілісності, наприклад, простому користувачеві.


Дозвіл змінити рівень цілісності об’єкта забезпечується новим правом користувача, що з’явилися в Windows 2008 і Vista: Modify an object label (або SeRelabelPrivilege). Вбудованої облікового запису адміністратора це право надається за замовчуванням, хоча даний дозвіл не відображається при перевірці маркера доступу адміністратора з використанням Whoami або з контейнера User Rights Assignments в параметрах об’єкта Group Policy Object (GPO).


Користувачі та адміністратори, яким призначено право SeRelabelPrivilege, повинні також мати дозволи Change permissions і Take ownership для об’єкта, перш ніж вони зможуть змінити рівень цілісності об’єкта. Важливе обмеження для адміністраторів і користувачів, яким призначено право SeRelabelPrivilege, полягає в тому, що вони ніколи не зможуть підняти рівень цілісності об’єкта вище рівня цілісності облікового запису користувача. Будь-який користувач з дозволом Read для об’єкта може тільки дізнатися рівень цілісності об’єкта.


Ізолюйте шкідливі програми з Internet


Integrity Control гарантує, що ненадійні програми, які можуть виявитися небезпечними, не впливають на іншого користувача або системні дані. Захист Integrity Control в Windows 2008 і Vista в основному прозора для користувачів: операційна система автоматично призначає рівні цілісності для Web-контенту і гарантує, що цей контент не взаємодіє з ресурсами, що мають більш високий рівень цілісності. Integrity Control своєму розпорядженні потужної моделлю управління доступом, яка в майбутньому може застосовуватися до всіх ресурсів Windows, а не тільки до ресурсів з Internet

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*