Windows Firewall: підсилюємо захист

  1. Перше знайомство
  2. Почали!
  3. Виключення з правил
  4. Підключення - в порядку
  5. Для чого потрібен журнал
  6. підсилюємо захист
  7. Зміни в процесі підготовки Windows Firewall
  8. назви профілів
  9. On / off-режими
  10. Налаштування Group Policy
  11. Командний рядок

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

Очевидно, розробники Microsoft віддають собі в цьому звіт. Саме тому в рамках ініціативи Trustworthy Computing компанія зробила питання безпеки ключовим при розробці пакету оновлень Windows XP Service Pack 2 (SP2) - найбільшого орієнтованого на безпеку пакету оновлень з часу випуску Windows NT 4.0 SP3. У співтоваристві користувачів той пакет оновлень охрестили Security Pack 3 ( «Пакет безпеки 3»), і XP SP2 (випуск якого був запланований на кінець цього літа) заслуговує такого ж звання. SP2 до відмови набитий новими функціями безпеки для боротьби з «черв'яками» і шкідливими програмами, які можуть вражати мережі через незахищені робочі станції. Найважливішою частиною SP2 є Windows Firewall - помітно вдосконалена версія Internet Connection Firewall (ICF). Зміна назви функції відображає той факт, що Microsoft робить упор на використанні технології локального брандмауера для захисту робочих станцій, які підключені тільки до внутрішньої локальної мережі, в тій же мірі, що і для захисту робочих станцій, що мають підключення до Internet. Кращим способом скористатися перевагами нового захисного екрану SP2 була б установка SP2 на виділеному тестовому сервері; про те, як це зробити, буде розказано нижче. Після ознайомлення з брандмауером можна встановити SP2 і виконати централізовану конфігурацію Windows Firewall на всіх робочих станціях в мережі (я розповім про це в одній з наступних статей).

Перше знайомство

Для того щоб почати освоювати Windows Firewall, я пропоную вручну встановити SP2 на тестову систему XP. Після установки SP2 Windows Firewall активується автоматично. Брандмауер вміщує два конфігураційних профілю - доменний і стандартний - для систем, які є членами домену. Windows Firewall задіє доменний профіль, коли робоча станція підключена до внутрішньої локальної мережі; в іншому випадку застосовується стандартний профіль. Для конфігурації цієї подвійної можливості необхідно використовувати Group Policy. Однак в даному випадку ми будемо припускати, що тестова система не є членом домену. Тому ми задіємо тільки один профіль, який буде використовуватися як при підключенні комп'ютера до внутрішньої мережі, так і при підключенні до Internet. Ми розглянемо реальний механізм розгортання Windows Firewall на прикладі покрокової ручної настройки брандмауера через панель управління на виділеному тестовому сервері.

Почали!

Відкриваємо додаток Windows Firewall в Control Panel. Зараз, коли я пишу цю статтю, діалогове вікно в версії XP SP2 все ще носить оригінальна назва брандмауера - Internet Connection Firewall. В остаточній версії SP2 діалогові вікна, можливо, будуть виглядати інакше, ніж в наведених в статті екранах. Під врізки «Поки готувався Windows Firewall» обговорюються і інші, вже реалізовані зміни. На вкладці General показаний перемикач для двох режимів функціонування, On і Off. Встановлення режиму Off для Windows Firewall означає відключення функції, і робоча станція (і мережу) залишається повністю відкритою для атак. Вибір режиму On активує Windows Firewall. Windows Firewall є брандмауером, які аналізують трафік, т. Е. Він відстежує стан всіх TCP- і UDP-взаємодій і може виявляти вхідні пакети, які не є частиною регламентованого взаємодії, ініційованого робочою станцією. Проте в деяких ситуаціях може знадобитися дозволити запити вхідних підключень. Наприклад, якщо робоча станція підключена до LAN, можливо, адміністратор вважатиме за краще дозволити з'єднання через порт 3389, який використовується і службою Remote Assistance, і службою Remote Desktop. Якщо активується Windows Firewall, він відключає всі вхідні підключення, крім тих, що визначені на вкладці Exceptions.

Для встановлення тимчасового блокування - коли, наприклад, новий «хробак» набирає обертів в мережі, а постачальник антивірусів ще не випустив оновлення сигнатури або коли не вдається вчасно дістатися до необхідного виправлення, можна переключити робочу станцію в режим Shielded на той час, поки на всіх комп'ютерах що не будуть встановлені виправлення або поки не буде оновлено антивірусний продукт. Така широкомасштабна конфігурація виконується з використанням Group Policy. Слід мати на увазі, що під час блокування цього типу служби, які повинні приймати вхідні підключення (наприклад, Windows Messenger), працювати не будуть. Детальніше про режим Shielded можна дізнатися з врізки «Поки готувався Windows Firewall».

Виключення з правил

Винятки (Exceptions) визначають, як Windows Firewall обробляє небажані вхідні пакети. Для того щоб виконати конфігурацію глобальних винятків, які застосовуються до всіх мережних підключень, в тому числі до комутованих, LAN, VPN і WAN, потрібно перейти на вкладку Exceptions додатки Windows Firewall, показану на екрані 1. Пізніше я покажу, як налаштовувати виключення, які застосовуються до окремих мережевим підключенням.

Зауважимо, що Windows Firewall не накладаються ніяких обмежень на вихідні пакети. В ідеалі брандмауер робочої станції, такий як Windows Firewall, повинен також контролювати вихідні пакети. Без такого контролю неможливо буде захистити інші комп'ютери мережі від атак, що виходять від робочих станцій зловмисників і програмістів. Хоча насправді контроль вихідного трафіку здійснювати набагато складніше, ніж контроль вхідного трафіку, оскільки відрізнити виходить підключення зловмисника досить важко.

Windows Firewall випускається зі стандартною конфігурацією, в якій кілька компонентів Programs and Services визначені як виключення, при цьому можна додавати інші. Кожне виключення визначається на основі конкретного TCP- або UDP-порта або по імені файлу, що виконується. Класичний метод завдання регламенту поведінки захисного екрану полягає у використанні номерів портів, але утиліти несанкціонованого управління і троянські програми довели, що номери портів не є надійним способом оцінки вхідних пакетів. Успішно встановилася на комп'ютері утиліта несанкціонованого управління відкриває порт і чекає підключення хакера. Деякі з цих утиліт відкривають порти, використовувані легітимними програмами; інші несанкціоновані утиліти управління розташовуються між легітимною програмою і її портом, досліджують вхідний трафік і перехоплюють вхідні запити до утиліти (ці запити видаються за запити до легітимної програмі). Для відображення дій несанкціонованих утиліт управління обох типів Windows Firewall також дозволяє обмежувати коло програм, яким дозволено відкривати порти. Розглянемо два встановлених виключення Windows Firewall, які ілюструють підходи до обмеження на основі портів і на основі програм.

Підключення - в порядку

Якщо на комп'ютері є кілька мережевих з'єднань (включаючи комутовані з'єднання і VPN), можливо, буде потрібно включати, відключати або налаштовувати Windows Firewall для кожного з'єднання по-різному. Це завдання можна виконати на вкладці Network Connections додатки Windows Firewall, як показано на екрані 4. Щоб увімкнути або вимкнути Windows Firewall для будь-якого з'єднання, потрібно встановити або прибрати прапорець цього з'єднання на вкладці Network Connections. Щоб скористатися додатковими настройки деякого з'єднання, необхідно встановити прапорець, що відповідає цьому з'єднанню, і натиснути кнопку Settings, що відкриває діалогове вікно Advanced Settings. Вкладка Services, показана на екрані 5, дозволяє відкрити певні служби для Internet-трафіку в процесі використання функції Internet Connection Sharing (ICS). Подібним же чином вкладка ICMP діалогового вікна Advanced Settings, показана на екрані 6, дозволяє визначити, як Windows Firewall буде відповідати на повідомлення Internet Control Message Protocol (ICMP) (наприклад, на запити про доступність), які приймаються на певному мережевому з'єднанні. Вкладка ICMP-додатки, показана на екрані 7, призначена для загальних параметрів, що визначають, як Windows Firewall буде відповідати на одержувані системою повідомлення ICMP, такі як запит про доступність. Кожен тип запитів ICMP можна ввімкнути або вимкнути на свій розсуд.

Порти. Для того щоб побачити поточну конфігурацію на основі портів, слід встановити прапорець Remote Assistance and Remote Desktop в розділі Programs and Services на вкладці Exceptions і відкрити діалогове вікно Exceptions. На екрані 2 показано, що це встановлене виключення виділяє TCP порт 3389, який використовується протоколом Remote Desktop Protocol (RDP), через який здійснюється взаємодія служб Remote Assistance та Remote Desktop.

У нижній частині діалогового вікна Exceptions розташовані два варіанти для діапазону Scope: можна відкрити вказаний порт для всіх адрес (All IP addresses) (т. Е. Для всіх систем в локальній мережі і всього Internet) або відкрити порт тільки для локальної підмережі (Local Subnet Only). Варіант Local Subnet Only призначений для невеликих і середніх компаній, що мають тільки одну підмережу, і для організацій, в яких користувачі і програми, які мають доступ до даної робочої станції, свідомо знаходяться в тій же підмережі, що і робоча станція. Для компаній, в яких є більше однієї підмережі, варіанти вибору діапазону Scope майже не приносять користі. Якщо використовуються програми управління системами, такі як Microsoft Systems Management Server (SMS), або адміністраторам потрібний мережний доступ до робочих станцій в декількох подсетях, у вас немає іншого вибору, окрім як встановити значення All IP addresses. Альтернативою використанню Scope є застосування вбудованої в XP підтримки IP Security (IPSec). За допомогою політик IPSec можна задати правила Allow і Deny для декількох IP-підмереж, щоб комп'ютери за межами діапазонів адрес підмереж не мали можливості підключатися до портів, які доводиться залишати відкритими, налаштовуючи Windows Firewall. Для спрощення застосування політик IPSec можна задіяти той об'єкт групової політики (GPO), який використовувався при роботі з Windows Firewall.

Програми. Тепер подивимося на виключення на основі програм. Слід клацнути Cancel в діалоговому вікні Exceptions, щоб закрити вікно, потім встановити прапорець Windows Messenger, щоб відкрити нове діалогове вікно Exceptions. Як показано на екрані 3, це виняток прив'язується до певного програмного файлу (% ProgramFiles% Messengermsmsgs.exe), а не до номера порту. Деякі програми, наприклад Windows Messenger, не використовують заздалегідь заданих номерів портів.

Windows Firewall випускається з декількома попередньо винятками, але тільки три з них - Files and Settings Transfer Wizard (% windir% system32usmtmigwiz.exe), NetMeeting (% ProgramFiles% NetMeetingconf.exe) і Windows Messenger (% ProgramFiles% Messengermsmsgs.exe) - включені за замовчуванням. Щоб активувати інші встановлені винятки, слід встановити відповідні прапорці на вкладці Exceptions. Для завдання виключення за іншою програмою або порту потрібно клацнути Add, потім ввести відповідну інформацію про програму або порте.

Виникає питання: як виключення, зроблені для портів на основі здійснювати підключення до мережі, співвідносяться з винятками глобального типу, які були зроблені, коли створювалися виключення на основі портів? Найкраще показати це на прикладі. Припустимо, у нас є два мережевих адаптера, NIC1 і NIC2. Нам потрібно відкрити порт 3389 на обох адаптерах і порт 80 - на адаптері NIC1, але не на адаптері NIC2. В цьому випадку можна задати виключення, яке відкриває порт 3389, потім в діалоговому вікні Network Connections Advanced Settings додати настройку, що відкриває порт 80 на адаптері NIC1.

Для чого потрібен журнал

Вкладка Log Settings додатки Windows Firewall, показана на екрані 8, дозволяє визначити, як буде Windows Firewall відображати свої дії в журналі і чи буде взагалі. Потрібно мати на увазі, що журнал Windows Firewall за замовчуванням відключений. За допомогою журналів Windows Firewall можна контролювати блоковані пакети і успішні вхідні та вихідні з'єднання. Таким чином, за допомогою журналу можна дізнатися, що хтось намагається безуспішно підключитися до комп'ютера, а також отримати інформацію про всі успішні входять з'єднаннях і про всі випадки, коли комп'ютер відкриває вихідні повідомлення для іншої системи, такої як локальний файловий сервер або Web- сервер в Internet. В журнал записуються IP-адреси відправника і одержувача та номери портів. Крім того, журнал дозволяє дізнатися, було з'єднання блокованим або успішним. Наприклад, запис в журналі, наведена на екрані 9, показує, що Windows Firewall запобіг спробі системи з IP-адресою 10.42.42.2 підключитися до порту 80 на локальній робочій станції. Потім журнал показує, що система з IP-адресою 10.42.42.10 успішно підключилася до локальної робочої станції через Remote Desktop Protocol (порт 3389). Нарешті, остання частина запису показує, що локальна робоча станція підключилася до IP-адресою 10.42.42.100 для виконання процедури віддаленого виклику (RPC), використовуючи порт 135.

За замовчуванням Windows Firewall зберігає журнал у файлі C: windowspfirewall.log і виділяє 4 Мбайт дискової пам'яті як максимум обсягу журналу, але можна змінити і розташування, і ім'я журналу (файл повинен бути на локальній системі), а також його максимальний обсяг. Коли обсяг журналу досягає верхнього значення, Windows додає розширення .old до імені файлу, а потім починає новий журнал, який має повний шлях, вказаний на вкладці Log Settings. Наступного разу, коли файл журналу заповнюється повністю, Windows знову перейменовує файл журналу (який після цього займає місце оригінального, найстарішого файлу) і починає новий журнал.

підсилюємо захист

Вивчення принципів роботи Windows Firewall дозволить визначити, як домогтися найкращої конфігурації брандмауера в конкретному середовищі. У своїй наступній статті я покажу, як за допомогою Group Policy виконати автоматичне розгортання SP2 на всіх робочих станціях XP і централізовано конфігурувати і управляти Windows Firewall на цих комп'ютерах.

Ренді Франклін Сміт - редактор Windows & .NET Magazine і президент компанії Monterey Technology Group, яка займається навчанням і консалтингом в області захисту Windows NT. Зв'язатися з ним можна за адресою: [email protected]

Зміни в процесі підготовки Windows Firewall

Раніше я вже розглядав зміни, які вносить пакет Service Pack 2 (SP2) у вбудований брандмауер Windows XP. Ще раз підкреслю, що в процесі підготовки статей я був змушений грунтуватися на попередніх версіях SP2, тому не виключено, що остаточний продукт буде відрізнятися від моїх описів. Дійсно, зараз вже відомо, що у фінальній версії SP2 використовуються терміни і синтаксис, відмінні від тих, що використовував я. Ось невеликий огляд цих змін.

назви профілів

Можна налаштувати брандмауер так, щоб він поводився певним чином, коли знаходиться всередині приватної мережі, і по-іншому, коли знаходиться зовні, в Internet. Ці два способи поведінки називаються профілями і у фінальній версії SP2 вони називаються доменним (domain) і стандартним (standard). У попередніх версіях вони називалися domain і mobile або corporate і other. Командний рядок і Group Policy взаємодіють з цими профілями по тим же назв, на відміну від попередніх версій. Можна запросити брандмауер, який профіль він в даний момент використовує, набравши в командному рядку.

netsh firewall show state

On / off-режими

У ранніх версіях SP2 пропонувалося три основні режими функціонування брандмауера: On, Off і Shielded. On означав, що брандмауер включений, але дозволяє відкривати окремі порти, дозволяючи комп'ютеру з XP, наприклад, відповідати на запити готовності, запити головних файлових і принт-серверів і бути керованим дистанційно. Shielded означав, що брандмауер включений, а жоден порт для вхідних з'єднань не активізований. Режим призначався для ситуації, коли мережа атакована «хробаком» і адміністратору потрібно заборонити весь незатребуваної вхідний трафік. У фінальній версії графічного інтерфейсу SP2 збереглося тільки два режими функціонування, On і Off. У командному рядку і в Group Policy ці режими називаються Enabled і Disabled. Замість режиму Shielded брандмауер SP2 називає всі відкриті порти винятками (Exceptions) і містить настроювання для дозволу (Allow exceptions) і заборони (Disallow exceptions) винятків. Через графічний інтерфейс, з командного рядка або через Group Policy можна створити режим Shielded, включивши брандмауер і встановивши налаштування Disallow exceptions.

Налаштування Group Policy

Раніше я розповідав про дев'ять налаштуваннях Group Policy, що дозволяють контролювати Windows Firewall. Фінальна версія SP2 містить дещо більше - 14, але всі вони інтуїтивно зрозумілі.

Командний рядок

У фінальній Версії SP2 Оновлений синтаксис командного рядка и Пропонується більш високий рівень управління в порівнянні з Попередніми версіямі. Найзначніше зміна стосується управління діапазоном адресу. Тепер можна Відкрити Певний порт только для систем, внесених до списку IP-адреса. Раніше, відкриваючи порт, потрібно було вибирати між локальної підмережею і Internet цілком. Всі команди починаються з Netsh Firewall, а не з Netsh Firewall Ipv4. Основна частина команди для включення або відключення брандмауера виглядає так:

netsh firewall set opmode

У ній mode і exceptions мають значення або включено (enable), або відключено (disable), а profile або domain, або standard. Незазначення параметра profile встановлює, що поведінка брандмауера повинно відповідати обом профілів, а не зазначення exceptions зберігає дію наявних винятків. Наприклад, щоб включити брандмауер зі стандартним профілем і дозволити виключення, слід ввести

netsh firewall set opmode enable
enable standard

Інакше можна додати параметри mode =, exceptions = і profile =, як в наступній команді:

netsh firewall set opmode mode = enable
exceptions = enable profile = standard

Можна додати параметр interface =, щоб зроблені настройки застосовувалися тільки до одного мережевого адаптера, але я з досвіду знаю, що це працює, тільки якщо не встановлювати exceptions і profile. Наприклад, команда

netsh firewall set opmode mode = enable
interface = "Local Area Connection»

включить брандмауер для мережевого адаптера з ім'ям Local Area Connection.

Обсяг статті не дозволяє охопити всі команди, але я можу навести кілька прикладів. Наприклад, щоб дозволити роботу Ping (т. Е. Включити все луна-команди протоколу Internet Control Message Protocol, ICMP), слід ввести

netsh firewall set icmpsetting type 8

Щоб дозволити доступ до Microsoft SQL Server за допомогою відкриття порту +1433 тільки для локальної підмережі, потрібно ввести

netsh firewall add portopening tcp
1 433 sql enable subnet

А щоб відкрити порт 1433 тільки для мереж C-класу, що починаються з 4.0.0.0, підмереж B-класу, що починаються з 10.0.0.0, і локальної підмережі, потрібно ввести

netsh firewall add portopening tcp 1433 sql enable custom 4.0.0.0/24, 10.0.0.1/255.255.0.0,subnet

Як я вже говорив, SP2 дещо розширює список поточних справ. Але в кінцевому рахунку це цінне зміна.

Марк Мінас