Контроль облікових записів користувачів у Windows 7

На модерации Отложенный

У даній статті ми розповімо про «Контроль облікових записів користувачів», в основі якого був закладений принцип найменш привілейованого користувача. Порівняно з Windows Vista і Server 2008 в системах Windows 7 і Server 2008 R 2 з'явилися кілька поліпшень в його функціонал. Також детально розповімо про маркерах доступу і процес входу в систему.
Більшість проблем, пов'язаних з безпекою в останніх версіях Windows були викликані однією головною причиною: більшість користувачів запускали Windows, володіючи правами адміністратора. Адміністратори можуть робити все що завгодно з комп'ютером, що працює під управлінням Windows: инсталлироватьпрограммы , додавати пристрою, оновлювати драйвера, інсталювати оновлення, змінювати параметри реєстру, запускати службові програми, а також створювати та змінювати облікові записи користувачів. Незважаючи на те, що це дуже зручно, наявність цих прав призводить до виникнення величезної проблеми: будь-яка шпигунська програма, внедрившаяся в систему, теж зможе працювати, маючи права адміністратора, і, таким чином, може завдати величезної шкоди, як самого комп'ютера, так і всьому, що до нього підключено.
Windows XP цю проблему намагалися вирішити шляхом створення другого рівня облікових записів, званих обмеженими користувачами, які володіли тільки самими необхідними дозволами, але мали ряд недоліків. У Windows Vista знову спробували усунути цю проблему. Це рішення називається «Контроль облікових записів користувачів», в основі якого був закладений принцип найменш привілейованого користувача.
Ідея полягає в тому, щоб створити рівень облікової запису, який би мав прав не більше, ніж йому хотілося. Під такими обліковими записами неможливо вносити зміни у реєстр та виконувати інші адміністративні завдання. Контроль облікових записів використовується для сповіщення користувача перед внесенням змін, які потребують дозволу адміністратора.
З появою UAC модель управління доступом змінилася таким чином, щоб можна було допомогти пом'якшити наслідки вносяться шкідливими програмами. Коли користувач намагається запустити певні компоненти системи або служби, з'являється діалог контролю обліковими записами, який дає користувачу право вибору: чи продовжувати дію для одержання адміністративних привілеїв чи ні. Якщо користувач володіє правами адміністратора, то він повинен у відповідному вікні надати дані облікового запису адміністратора для запуску необхідної йому програми.
Для застосування установок UAC вимагає тільки схвалення адміністратора, у зв'язку з цим несанкціоновані програми не зможуть бути встановлені без офіційного дозволу адміністратора. У цій статті докладно розписано принципі роботи «Контролю облікових записів користувачів» в операційній системі Windows 7
порівняно з Windows Vista і Windows Server 2008 в операційних системах Windows 7 і Windows Server 2008 R2 з'явилися наступні поліпшення у функціоналі контролю облікових записів користувачів:
Збільшилася кількість завдань, які може виконувати звичайний користувач без запиту підтвердження адміністратором;
Користувача з правами адміністратора дозволяється встановлювати рівень UAC з «Панелі Управління»;
Існують додаткові налаштування локальної політики безпеки, які дозволяють локальним адміністраторам змінювати поведінку повідомлень UAC для локальних адміністраторів у режимі схвалення адміністратором;
Існують додаткові настройки локальної політики безпеки, які дозволяють локальним адміністраторам змінювати поведінку повідомлень UAC для звичайних користувачів.
Більшості користувачів не потрібен настільки високий рівень доступу до комп'ютера і операційній системі. Найчастіше користувачі не підозрюють, що вони увійшли в систему як адміністратор, коли вони перевіряють електронну пошту, займаються веб-серфінгом або запускають програмне забезпечення. Шкідлива програма, встановлена адміністратором, може пошкодити систему і впливати на всіх користувачів. У зв'язку з тим, що UAC вимагає схвалення адміністратором застосування установки, несанкціоновані програми не зможуть бути встановлені автоматично без явної згоди адміністратором системи.
У зв'язку з тим, що UAC дозволяє користувачам запускати додатки як звичайні користувачі:
ІТ-відділи можуть бути впевнені в їх цілісності навколишнього середовища, включаючи системні файли, журнали аудиту, а також налаштування системи;
Адміністраторам більше не доводиться витрачати багато часу на визначення дозволів для завдань на окремих комп'ютерах;
Адміністраторам надається більш ефективний контроль над ліцензуванням програмного забезпечення, оскільки вони можуть забезпечити установку авторизованих додатків. Їм більше не доведеться турбуватися про можливі загрози їх мереж з-за неліцензійного або шкідливого програмного забезпечення.
Специфікації UAC
Маркер доступу. Маркери доступу містять інформацію безпеки сеансу входу, визначальну користувача, групи користувачів і привілеї. Операційна система використовує маркер дляконтроля доступу до захисних об'єктів і контролює можливість виконання користувачем різних пов'язаних з системою операцій на локальному комп'ютері. Маркери доступу UAC - це особливий вид маркерів доступу, що визначають мінімальні привілеї, необхідні для роботи - привілеї інтерактивного доступу за умовчанням для користувача Windows в системі з включеною функцією UAC. Другий маркер, маркер повного доступу адміністратора, має максимальні привілеї, дозволені для облікового запису адміністратора. Коли користувач входить в систему, то для цього користувача створюється маркер. Маркер містить інформацію про рівні доступу, який видається користувачеві, у тому числі ідентифікатори безпеки (SID).
Режим схвалення адміністратором. Режим схвалення адміністратором - це конфігурація управління обліковими записами користувачів, в якій для адміністратора користувача створюється маркер комбінованого доступу. Коли адміністратор входить в комп'ютер з ОС Windows, йому призначаються два окремих маркера доступу. Якщо режим схвалення адміністратором не використовується, адміністратор отримує тільки один маркер, що надає йому доступ до всіх ресурсів Windows.
Запит згоди. Запит згоди відображається в тому випадку, коли користувач намагається виконати завдання, яке потребує прав адміністратора. Користувач дає згоду або відмовляється, натискаючи на кнопку «Так» або «Немає».
Запит облікових даних. Запит облікових даних відображається для звичайних користувачів в тому випадку, коли вони намагаються виконати завдання, для якої необхідний доступ адміністратора. Користувач повинен вказати ім'я та пароль облікового запису, яка входить у групу локальних адміністраторів.
Принцип роботи UAC
Контроль облікових записів користувачів (UAC) допомагає запобігти зараження комп'ютера від шкідливих програм, допомагаючи організаціям більш ефективно розгортати настільні додатки.
З використанням UAC, додатки і завдання завжди запускаються в безпечної області від неадминистраторской облікового запису, якщо адміністратор дає права для адміністративного доступу в систему.
Панель управління UAC дозволяє вибрати один з чотирьох варіантів:
Сповіщати при кожній зміні, вносимом в систему: така поведінка присутній у Vista - діалог UAC з'являється кожен раз, коли користувач намагається внести будь-які зміни в систему (настройка Windows, установка додатків і т.д.);
Повідомляти тільки тоді, коли програми намагаються внести зміни в систему: у цьому випадку повідомлення не з'явиться при внесенні змін у Windows, наприклад, через панель управління і оснащення;
Повідомляти тільки тоді, коли програми намагаються внести зміни в систему, без використання безпечного робочого столу: те ж саме, що і пункт 2, за винятком того, що діалог UAC з'являється у вигляді традиційного діалогу, а не в режимі безпечного робочого столу. Незважаючи на те, що це може виявитися зручним у разі використання певних графічних драйверів, які перемикання між робочими столами, цей режим є бар'єром на шляху додатків, що імітують поведінку UAC;
Ніколи не повідомляти: дана настройка повністю відключає UAC.
Процес входу в систему в Windows 7
На наступному малюнку показано як відрізняється процес входу в систему адміністратора від стандартного користувача.



Для забезпечення безпеки, за замовчуванням, доступ до системних ресурсів і додатків, звичайним користувачам і адміністраторам надається в режимі звичайного користувача. Коли користувач входить в систему, то для нього створюється маркер. Маркер містить інформацію про рівні доступу, який задається користувачеві, у тому числі і ідентифікатори безпеки (SID).
Коли адміністратор входить в систему, створюється два окремих користувача маркера: маркер стандартного користувача і маркер повного доступу адміністратора. У стандартному користувача доступі міститься та ж користувацька інформація, що і в маркері повного доступу адміністратора, але без адміністративних привілеїв та SID. Маркер стандартного користувача використовується для запуску додатків, які не виконують адміністративні завдання. Доступ стандартного користувача використовується тільки для відображення робочого столу (explorer.exe). Explorer.exe є батьківським процесом, під якого користувач може запускати інші процеси, успадковані своїм маркером доступу. В результаті всі додатки запускаються від імені звичайного користувача, крім тих випадків, коли програми вимагає використання адміністративного доступу.
Користувач, який є членом групи «Адміністратори» може увійти в систему для перегляду веб сторінок і читання повідомлень електронної пошти при використанні стандартного маркера користувальницького доступу. Коли адміністраторові необхідно виконати завдання, що вимагає від нього маркер адміністративного користувача, Windows 7 автоматично покаже повідомлення для використання адміністративних прав. Це повідомлення називається запитом облікових даних, а його поведінка може бути налаштований за допомогою оснащення локальної політики безпеки (Secpol.msc) або групових політик.
Кожен додаток, яке вимагає маркер адміністратора має запускатися з згодою адміністратора. Винятком є взаємозв'язок між батьківським і дочірнім процесами. Дочірні процеси успадковують маркер доступу користувачів з батьківського процесу. Обидва процесу батька та дитини повинні мати однаковий рівень інтеграції.
Windows 7 захищає процеси за допомогою маркування рівнів інтеграції. Рівні інтеграції вимірюються довірою. Додатки з «високої» інтеграцією - це програми, які виконують завдання, які можуть змінювати системні дані. А програми з «низькою» інтеграцією - це виконувані завдання, які потенційно можуть завдати шкоди операційній системі. Програми з більш низьким рівнем інтеграції не можуть змінювати дані в додатках з високим рівнем інтеграції.
Коли звичайний користувач намагається запустити додаток, яке вимагає маркер адміністратора, UAC вимагає користувача надати дані адміністратора.
можливості UAC
При включеному UAC, користувальницькі можливості відрізняються від можливостей адміністратора в режимі схвалення адміністратором. Існує ще більше безпечний метод входу в систему Windows 7 - створення обліковий запис з правами користувача. Робота в якості звичайного користувача дозволяє максимально підвищити ступінь безпеки. Завдяки вбудованому в UAC компоненту повноважень звичайні користувачі можуть легко виконувати адміністративні завдання шляхом введення даних локального облікового запису адміністратора.
Альтернативний варіант запуску додатків звичайним користувачем є запуск додатків з підвищеними правами адміністратора. За допомогою вбудованого в UAC компонента облікових даних, члени локальної групи Адміністратори можуть легко виконувати адміністративні завдання шляхом надання стверджують даних. За замовчуванням, вбудований компонент облікових даних для облікового запису адміністратора в режимі схвалення називається запитом згоди. Запит облікових даних UAC може бути налаштований за допомогою оснащення локальної політики безпеки (Secpol.msc) або групових політик.
З включеним UAC, Windows 7 запитує згоду або облікові дані запису локального адміністратора, перед запуском програми або завдання, яке вимагає маркер повного доступу адміністратора. Цей запит не гарантує того, що шпигунські програми можуть бути встановлені в тихому режимі.
Запит згоди відображається в тому випадку, коли користувач намагається виконати завдання, що вимагає маркер адміністратора. Нижче наведено скріншот із запитом згоди UAC.

Запит облікових даних відображається в тому випадку, коли звичайний користувач намагається запустити завдання, що вимагає маркер адміністратора. Цей запит для звичайного користувача може бути налаштований при допомоги оснащення локальної политикибезопасности (Secpol.msc) або групових політик. Запит облікових даних також може бути налаштований для адміністраторів за допомогою зміни політики Контроль облікових записів: поведінку запиту на підвищення прав для адміністраторів у режимі схвалення адміністратором зі значенням Запит облікових даних.
На наступному скріншоті відображений приклад запиту повноваження UAC.

Запити на підвищення прав UAC
Запити на підвищення прав UAC мають колірну маркіровку для конкретних програм, дозволяючи негайно ідентифікувати потенційний ризик безпеки. Коли програма намагається запуститися з маркером повного доступу адміністратора, Windows 7 спочатку аналізує виконуваний файл для визначення видавця. Перш за все, програми поділяються на 3 категорії видавців виконуваного файлу: Windows 7, перевірений издатель (підписаний), не перевірений издатель (не підписаний). На наступному зображенні відображається те, як Windows 7 визначає який колір запиту підвищення відображати користувачеві.
Кольорове маркування запитів на підвищення прав наступна:
На червоному тлі відображений значок щита: додаток блокується за допомогою групової політики або блокується з-за невідомого видавця.
На синьому тлі відображений золотистий значок щита: додаток є адміністративним додатком Windows 7, таким як «Панель управління».
На блакитному тлі відображається синій значок щита: додаток підписано і є довіреною на локальному комп'ютері.
На жовтому тлі відображається жовтий значок щита: програма не підписано або підписано, але не є довіреною на локальному комп'ютері.

Запити на підвищення прав використовують ту ж кольорове маркування, що і діалогові вікна в Windows Internet Explorer 8.
Значок щита
Деякі елементи «Панелі управління», такі як «Дата і час» містять комбінацію операцій адміністратора і звичайних користувачів. Звичайні користувачі можуть переглядати та змінювати часовий пояс, маркер повного доступу адміністратора потрібно для зміни дати і часу системи. Нижче наведено скріншот діалогу «Дата і час» панелі управління.

Значок щита на кнопці «Змінити дату й час» вказує на те, що цей процес вимагає маркер повного доступу адміністратора і відобразиться запит на підвищення прав UAC .
Забезпечення запиту на підвищення прав
Процес підвищення прав забезпечує прямі запити для захисту робочого столу. Запити згоди та облікових даних відображаються за умовчанням в Windows 7 для забезпечення безпеки системи. Тільки системні процеси можуть отримати повний доступ до безпечної робочої середовищі. Для досягнення більш високого рівня безпеки рекомендується включити групову політику Контроль облікових записів: переключення до безпечного робочого столу при виконанні запиту на підвищення прав.
Коли виконувані файли просять підвищення прав, інтерактивний робочий стіл, званий також робочим столом, перемикається на безпечний робочий стіл. Безпечний робочий стіл затемнює користувальницький і відображає запит на підвищення прав, в якому користувач повинен прийняти рішення для продовження виконання завдання. Коли користувач натискає на кнопку «Так» або «Немає», робочий стіл знову перемикається на користувача.
Шкідливе програмне забезпечення може імітувати безпечний робочий стіл, але при включеній політиці Контроль облікових записів: поведінку запиту на підвищення прав для адміністраторів у режимі схвалення адміністратором зі значенням «Запит згоди» шкідлива програма не зможе отримати підвищені права, навіть якщо користувач натисне на кнопку «Так». Якщо параметр політики має значення «Запит облікових даних», то шкідливе програмне забезпечення зможе збирати облікові дані користувачів.