Межсетевой экран на узле и разрешение приложений по белому списку
Настройте межсетевые экраны на узлах (Windows Defender Firewall, iptables) и белые списки приложений, блокирующие выполнение неавторизованного программного обеспечения.
«Межсетевой экран на узле и разрешение приложений по белому списку» — бесплатный урок Security+ Academy на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Security+ Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Security+ Academy содержит 4 уроков всего.
Межсетевые экраны на узлах и в сети
Сетевой межсетевой экран находится на границе сети и фильтрует трафик между сетевыми сегментами. Межсетевой экран на узле работает на отдельной конечной точке и фильтрует трафик, поступающий на конкретную машину и исходящий от неё. Межсетевые экраны на узлах обеспечивают эшелонированную защиту: даже если злоумышленник обойдёт сетевой межсетевой экран (через VPN, с помощью скомпрометированного инсайдера или за счёт бокового перемещения с другого заражённого узла), межсетевой экран узла применит локальные правила трафика. Они особенно важны для ноутбуков, которые используются за пределами корпоративного периметра и подключаются к ненадёжным сетям.
Межсетевой экран Windows Defender
Windows Defender Firewall (WDF) — встроенный межсетевой экран узла во всех современных версиях Windows. Он поддерживает три профиля: Domain (подключение к корпоративному домену — обычно более разрешающий), Private (надёжная домашняя сеть) и Public (ненадёжные сети — самые строгие ограничения). Правила WDF могут фильтровать трафик по порту, протоколу, пути к приложению, удалённому IP-адресу и идентификатору пользователя. Оснастка MMC Windows Defender Firewall with Advanced Security (WFAS) и Group Policy обеспечивают централизованное управление правилами межсетевого экрана в организации на всех машинах, присоединённых к домену.
# Windows: create inbound firewall rule
netsh advfirewall firewall add rule \
name='Block Telnet' \
dir=in \
action=block \
protocol=TCP \
localport=23
# PowerShell equivalent
New-NetFirewallRule \
-DisplayName 'Block Telnet Inbound' \
-Direction Inbound \
-Protocol TCP \
-LocalPort 23 \
-Action Blockiptables и nftables в Linux
Межсетевые экраны узлов Linux используют ядерную платформу Netfilter, которую можно настраивать через iptables (устаревший вариант, всё ещё широко используемый) или современный nftables. Правила организованы в цепочки (INPUT, OUTPUT, FORWARD) внутри таблиц (filter, nat, mangle). Политикой по умолчанию должен быть DROP с явными правилами ACCEPT для необходимого трафика — это принцип запрета по умолчанию. Инструменты более высокого уровня, такие как ufw (Ubuntu) и firewalld (RHEL/CentOS), предоставляют более удобный интерфейс, продолжая использовать Netfilter в основе.
# iptables: deny-by-default with selective allow
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
# Allow established connections
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# Allow SSH from specific subnet only
iptables -A INPUT -s 10.10.0.0/24 -p tcp --dport 22 -j ACCEPT
# Allow HTTPS
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
# Save rules
iptables-save > /etc/iptables/rules.v4Правила межсетевого экрана на уровне приложений
Межсетевые экраны на узлах могут применять правила на уровне приложений — фильтровать трафик по приложению, которое его создало, а не только по порту. Windows Defender Firewall поддерживает правила на основе приложений: разрешить C:\Program Files\MyApp\app.exe исходящие соединения и заблокировать всё остальное на том же порту. Это не позволяет вредоносным программам перехватывать разрешённые порты, выдавая себя за доверенное приложение. Правила уровня приложений значительно эффективнее правил, основанных только на портах, поскольку последние можно обойти, привязав вредоносную программу к распространённым портам, например 443.
# Windows: firewall rule scoped to a specific app
New-NetFirewallRule \
-DisplayName 'Allow Chrome HTTPS' \
-Direction Outbound \
-Program 'C:\Program Files\Google\Chrome\Application\chrome.exe' \
-Protocol TCP \
-RemotePort 443 \
-Action Allow
# Blocks any OTHER process trying to use port 443
# unless that process also has an explicit ALLOW ruleЧто такое разрешение приложений?
Разрешение приложений (ранее называвшееся белым списком) — это средство защиты, которое позволяет выполнять на конечной точке только явно одобренные приложения. Любой исполняемый файл, отсутствующий в списке разрешений, блокируется независимо от того, является ли он вредоносным или просто неодобренным программным обеспечением. Это мощная защита от вредоносных программ: даже новые вредоносные программы нулевого дня блокируются, если их нет в списке одобренных. Сложность заключается в эксплуатации: управление списком разрешений в больших динамичных средах требует зрелого процесса управления изменениями и приводит к появлению большого числа обращений в службу поддержки при неправильной настройке.
Windows AppLocker
AppLocker — встроенная функция Windows для управления приложениями, доступная в редакциях Enterprise и Education. Она фильтрует выполнение по следующим признакам: путь (блокировка исполняемых файлов из %TEMP% или каталогов, доступных для записи пользователям), хэш файла (разрешение только известных безопасных хэшей) или издатель (разрешение программного обеспечения, подписанного Microsoft или Adobe). Политики AppLocker развёртываются через Group Policy и записываются в журнал Windows Event Log (идентификатор события 8003 = заблокировано). Сначала запуск AppLocker в режиме аудита — с записью блокировок без их применения — позволяет командам настроить список разрешений до начала принудительного применения.
# AppLocker rule examples (Group Policy)
# Block executables in user-writable locations
Path Rule: C:\Users\*\AppData\*.exe -> DENY
Path Rule: C:\Windows\Temp\*.exe -> DENY
# Allow by publisher (certificate)
Publisher Rule: O=Microsoft, CN=* -> ALLOW
Publisher Rule: O=Adobe, CN=Adobe Acrobat -> ALLOW
# Hash rule for specific approved version
Hash Rule: SHA256:a1b2c3d4... -> ALLOW
# Check AppLocker events:
Get-WinEvent -LogName 'Microsoft-Windows-AppLocker/EXE and DLL'Windows Defender Application Control (WDAC)
WDAC — более мощный преемник AppLocker, применяемый на уровне ядра, а не в пространстве пользователя. В отличие от AppLocker, WDAC нельзя обойти с помощью прав локального администратора, поэтому это предпочтительное средство защиты для сред с высокими требованиями к безопасности. Политики WDAC записываются в XML и преобразуются в двоичные файлы политик, развёртываемые через MDM (Intune) или Group Policy. WDAC также поддерживает интеграцию с Intelligent Security Graph (ISG), которая использует облачную службу репутации Microsoft для автоматического разрешения программного обеспечения с доверенной репутацией, снижая операционную нагрузку от ручного формирования списка разрешений.
Проблемы разрешения приложений
Разрешение приложений эффективно, но требует значительных операционных усилий. Распространённые проблемы: LOLBins (двоичные файлы, использующие легитимные средства системы) — злоумышленники применяют системные инструменты Windows, такие как PowerShell, wscript.exe и mshta.exe, которые обычно присутствуют во всех списках разрешений; поэтому разрешение приложений должно ограничивать способы их вызова, а не только сам факт их запуска. Языки сценариев (PowerShell, Python) часто разрешены, но могут выполнять вредоносный код. Ложные срабатывания — блокировка легитимного программного обеспечения списком разрешений — приводят к обращениям в службу поддержки и давлению с целью ослабить средства контроля. Зрелые программы разрешения приложений устраняют риски LOLBins с помощью дополнительных политик ограниченного языкового режима.
# Restricting PowerShell with Constrained Language Mode
# Applied via WDAC when non-WDAC code runs
$ExecutionContext.SessionState.LanguageMode
# Full Language mode -> normal PowerShell
# Constrained Language -> no .NET, no COM objects
# Blocks many attack techniques
# Via Group Policy: force PowerShell logging
# Computer Config > Admin Templates > Windows Components
# > Windows PowerShell
# Enable: Module Logging, Script Block Logging, TranscriptionРазрешение и запрещение приложений
Разрешение приложений допускает только явно одобренные элементы и блокирует всё остальное, обеспечивая более высокий уровень безопасности. Запрещение приложений (чёрный список) блокирует явно известные опасные элементы и разрешает всё остальное — это традиционная модель антивируса. Запрещение не защищает от неизвестных угроз, а разрешение не защищает от LOLBins и чрезмерно широких записей разрешений. Большинство зрелых программ безопасности используют разрешение приложений как основной механизм для критически важных систем, а обнаружение по поведению (EDR) — для выявления злоупотреблений разрешёнными приложениями. Для менее критичных систем может быть приемлем хорошо настроенный список запрещённых элементов с мониторингом поведения.
Объединение межсетевого экрана и разрешения приложений
Межсетевые экраны на узлах и разрешение приложений — это дополняющие друг друга эшелонированные средства контроля. Список разрешений не позволяет выполнять несанкционированный код, а межсетевой экран блокирует несанкционированные сетевые соединения, инициированные разрешённым, но скомпрометированным кодом. Вместе они реализуют принцип минимальных привилегий на уровне приложений и сети конечной точки. Добавление EDR в качестве третьего уровня создаёт эшелонированную защиту, в которой каждое средство выявляет то, что могли пропустить остальные, существенно повышая стоимость и сложность успешных атак на конечные точки.
# Endpoint defense-in-depth stack
Layer 1: Application Allowlisting (WDAC)
-> Blocks unauthorized executables from running
Layer 2: Host-Based Firewall (WDF)
-> Blocks unauthorized network connections
-> Even from allowlisted apps on non-standard ports
Layer 3: EDR (CrowdStrike/Defender for Endpoint)
-> Detects behavioral anomalies in allowed processes
-> Catches LOLBin misuse, process injection
-> Provides forensic telemetry for investigationВедение журналов и мониторинг межсетевого экрана
Ценность межсетевых экранов на узлах определяется качеством создаваемых ими журналов. Включите ведение журналов заблокированных соединений, чтобы фиксировать попытки атак и нарушения политик. Включите ведение журналов разрешённых соединений для важных правил (например, разрешающих административные инструменты), чтобы сохранять аудиторский след. Пересылайте журналы межсетевого экрана в SIEM для корреляции: последовательность заблокированных исходящих соединений с одного узла может указывать на попытки вредоносной программы установить обратную связь с C2. В Windows журналы межсетевого экрана по умолчанию записываются в %systemroot%\System32\LogFiles\Firewall\pfirewall.log; их следует пересылать через Windows Event Forwarding (WEF) или агент журналирования.
# Enable Windows Firewall logging via PowerShell
Set-NetFirewallProfile -All \
-LogBlocked True \
-LogAllowed True \
-LogMaxSizeKilobytes 16384 \
-LogFileName '%systemroot%\System32\LogFiles\Firewall\pfirewall.log'
# Linux: log dropped packets with iptables
iptables -N LOGGING
iptables -A INPUT -j LOGGING
iptables -A LOGGING -m limit --limit 5/min -j LOG \
--log-prefix 'IPtables-Dropped: ' --log-level 4
iptables -A LOGGING -j DROPБыстрая проверка
Проверьте, насколько хорошо Вы поняли концепции CompTIA Security+ (SY0-701) из этого урока.
Итоги урока
В этом уроке Вы узнали, что межсетевые экраны на узлах (Windows Defender Firewall, iptables) фильтруют трафик для каждой конечной точки, применяя запрет по умолчанию и правила с областью действия приложения; разрешение приложений (AppLocker, WDAC) блокирует запуск несанкционированных исполняемых файлов, включая вредоносные программы; а эшелонирование межсетевого экрана, разрешения приложений и EDR создаёт защиту в глубину и значительно повышает стоимость атаки. Далее мы рассмотрим аутентификацию электронной почты: SPF, DKIM и DMARC.
Часто задаваемые вопросы
Урок «Межсетевой экран на узле и разрешение приложений по белому списку» бесплатный?
Да — полный текст урока «Межсетевой экран на узле и разрешение приложений по белому списку» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Security+ Academy, подпишись на CoddyKit PRO. Курс Security+ Academy содержит 4 уроков всего.
Чему я научусь в уроке «Межсетевой экран на узле и разрешение приложений по белому списку»?
Настройте межсетевые экраны на узлах (Windows Defender Firewall, iptables) и белые списки приложений, блокирующие выполнение неавторизованного программного обеспечения. Ты практикуешь Security+ Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Security+ Academy?
Предыдущий опыт не требуется. Security+ Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.
Сколько времени занимает урок «Межсетевой экран на узле и разрешение приложений по белому списку»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Security+ Academy?
Да. Каждый урок Security+ Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Антивирусы, платформы EDR и XDR
- Укрепление OS: исправления, базовая конфигурация и эталоны CIS
- Управление мобильными устройствами (MDM) и политики BYOD
- Межсетевой экран на узле и разрешение приложений по белому списку