Політика обмеження програмного забезпечення Software Restriction Policy (SRP) - все про IT та

Written on 01 Грудня 2008 . Posted in Адміністрація Windows

ЗМІСТ

Додаткові правила

При налаштуванні додаткових правил (Additional Rules), необхідно визначитися з методом або парою методів щодо того, як ідентифікувати програмне забезпечення. У нас є 4 різні методи ідентифікації програмного забезпечення:

1. HASH правила HASH – це зашифрований відбиток, який залишається незалежно від зміни назви файлу та його розташування. Це особливо добре при використанні WL, але не так ефективно при використанні BL (причина цього частково описана прикладом з використанням інструмента під назвою ProduKey в моїй першій статті про SRP): MD5 або SHA-1 HASH дозволяє чітко ідентифікувати двійковий файл програмного додатку ProduKey. exe", тому, якщо дозволити запускати лише програми з певним значенням HASH, дозволить гарантувати, що можна запускати лише певну версію файлу, що виконується. Однак, якщо заборонити файл з певним значенням HASH запускатися, ми лише введемо таке обмеження для однієї версії цієї програми і хитрі користувачі можуть просто змінити файл, і він вже не буде підходити під обмеження. Слово "unknown" (невідомий) дуже важливе у цьому випадку – воно є ключовим при виборі між білими списками BL та чорними списками WL – чи хочемо ми дозволити користувачам запускати невідоме програмне забезпечення?

Якщо користувач не зможе запустити стару версію певної програми, припустимо, вона неробоча і призводить до порушення роботи системи, то використання правила "deny this HASH value" (заборонити це значення HASH) буде хорошимрішенням. Будь ласка, пам'ятайте, що в новій версії тієї ж програми буде нове значення HASH, яке необхідно буде дозволити або заборонити.

2. Правила для сертифікатівПравила для сертифікатів використовують підписані хеші та забезпечують дуже потужну ідентифікацію, але якщо ми довіряємо певному сертифікату, то ми довіряємо всім програмним продуктам, які підписані з використанням цього сертифіката. Це може бути добре і погано. Це може бути добре, якщо ми, наприклад, отримуємо додаток від стороннього виробника, які підписав всі необхідні файли програми (можливо, включаючи DLL), тому замість того, щоб робити нові правила для HASH, ми просто створюємо одне правило, яке довіряє сертифікату , і продовжуємо працювати. Але якщо я довіряю цифровому сертифікату, який використовується для підпису деяких інструментів від Microsoft (або будь-якого іншого постачальника) – тепер мої користувачі можуть запускати всі програми, які підписані цим сертифікатом… Hmm, проблема в тому, щоб дізнатися, що саме підписано цим сертифікатом ? Без таких знань ми не знаємо, що дозволено. Замість того, щоб дозволити одну програму, необхідну для наших користувачів, ми повинні дозволити сотні програм цього виробника запускатися на наших системах.

Тестування правил сертифікатів можна здійснити за допомогою цих інструментів: File Signing Tool (Signcode.exe) & Certificate Creation Tool (Makecert.exe).

3. Правила для шляхів Правила для шляхів – це найпоширеніші та найпростіші у використанні правила. Правила для шляхів дозволяють дозволити або заборонити запускати файл із певного місця (наприклад, "C:\Scripts\Script.VBS"), ім'я файлу (тобто "Script.VBS"), папки (тобто "C: \Scripts"), шлях UNC(тобто "\\SERVER\SHARE\File.VBS") або шлях у реєстрі (тобто "%[Registry Hive]\[Registry Key Name]\[Value Name]%"). Шляхи можуть використовувати змінні оточення (тобто "%WINDIR%") та шаблони "?" = один символ (тобто "\\SERVER??\Share\Script.VBS") і "*" = будь-яка кількість символів (тобто "*.VBS").

Якщо ви використовуєте правила для шляхів, необхідно враховувати наступне:

  • Якщо заданий шлях до будь-якої папки, правило буде зачіпати також всі виконувані файли в дочірніх папках
  • Якщо користувач має доступ до запису для папки, для якої встановлено Unrestricted (без обмежень), то користувач може копіювати будь-який файл у цю директорію і виконати його звідти. При проектуванні необхідно врахувати це, можливо, завдяки використанню ACL (Access Control List або списків контролю доступу) при використанні політики груп Group Policies
  • Якщо користувач має доступ до запису до папки, для якої встановлено Unrestricted, користувач може переписати цей виконуваний іншим, щоб обдурити SRP
  • Якщо шлях до папки включає змінні оточення, наприклад, %TEMP%, то навіть користувач з обмеженими правами може змінити змінну оточення, використовуючи команду SET, на інший шлях (SET TEMP=C:\MyFolder) - і після цього користувач може контролювати ця програма.

Як писалося вище, користувачі можуть спробувати перейменувати або перемістити заборонені файли - або переписати дозволені файли для того, щоб обдурити SRP - саме тому правила для HASH або сертифікатів зазвичай розглядаються як найкращий вибір.

4. Інтернет зониЗони безпеки Internet Explorer security zone можна використовувати для контролю встановлення програмного забезпечення, але це стосується лише інсталяційних програм.пакетів Windows Installer packages (.MSI), які запущені з однієї з Інтернет-зон за замовчуванням. Ці правила рідко використовуються.

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