Zapora hosta i lista dozwolonych aplikacji
Konfiguruj zapory hosta (Windows Defender Firewall, iptables) oraz listy dozwolonych aplikacji, które blokują wykonywanie nieautoryzowanego oprogramowania.
Zapora hosta i lista dozwolonych aplikacji to bezpłatna lekcja Cloud & IT Cert Prep na CoddyKit. To lekcja 4 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Cloud & IT Cert Prep, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Cloud & IT Cert Prep zawiera 4 lekcji w sumie.
Zapory hostowe a zapory sieciowe
Zapora sieciowa znajduje się na granicy sieci i filtruje ruch między segmentami sieci. Zapora hostowa działa na pojedynczym punkcie końcowym i filtruje ruch do konkretnego komputera oraz z niego. Zapory hostowe zapewniają obronę warstwową: nawet jeśli atakujący ominie zaporę sieciową (przez VPN, z wykorzystaniem zainfekowanego konta wewnętrznego lub w wyniku ruchu bocznego z innego zainfekowanego hosta), zapora hostowa nadal egzekwuje lokalne reguły ruchu. Są szczególnie ważne w przypadku laptopów używanych poza firmową granicą sieci i łączących się z niezaufanymi sieciami.
Windows Defender Firewall
Windows Defender Firewall (WDF) to wbudowana zapora hostowa dostępna we wszystkich nowoczesnych wersjach systemu Windows. Obsługuje trzy profile: Domain (połączenie z domeną firmową — zwykle bardziej liberalne zasady), Private (zaufana sieć domowa) oraz Public (niezaufane sieci — najbardziej restrykcyjne zasady). Reguły WDF mogą filtrować ruch według portu, protokołu, ścieżki aplikacji, zdalnego adresu IP i tożsamości użytkownika. Przystawka MMC Windows Defender Firewall with Advanced Security (WFAS) oraz zasady grupy umożliwiają centralne zarządzanie regułami zapory w całym przedsiębiorstwie, na wszystkich komputerach przyłączonych do domeny.
# 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 i nftables w systemie Linux
Zapory hostowe systemu Linux korzystają z jądrowego mechanizmu Netfilter, który można konfigurować za pomocą iptables (starszego rozwiązania, nadal szeroko stosowanego) lub nowoczesnego narzędzia nftables. Reguły są uporządkowane w łańcuchach (INPUT, OUTPUT, FORWARD) znajdujących się w tabelach (filter, nat, mangle). Domyślną polityką powinno być DROP, z jawnymi regułami ACCEPT dla wymaganego ruchu — jest to podejście „domyślnie odmawiaj”. Narzędzia wyższego poziomu, takie jak ufw (Ubuntu) i firewalld (RHEL/CentOS), oferują wygodniejsze interfejsy, nadal korzystając w tle z mechanizmu 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.v4Reguły zapory na poziomie aplikacji
Zapory hostowe mogą egzekwować reguły na poziomie aplikacji — filtrować ruch według aplikacji, która go wygenerowała, a nie tylko według portu. Windows Defender Firewall obsługuje reguły oparte na aplikacjach: można zezwolić aplikacji C:\Program Files\MyApp\app.exe na nawiązywanie połączeń wychodzących, blokując jednocześnie wszystko inne na tym samym porcie. Zapobiega to przejmowaniu dozwolonych portów przez złośliwe oprogramowanie, które podszywa się pod zaufaną aplikację. Reguły na poziomie aplikacji są znacznie skuteczniejsze niż reguły oparte wyłącznie na portach, które można ominąć, przypisując złośliwe oprogramowanie do popularnych portów, takich jak 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 ruleCzym jest tworzenie listy dozwolonych aplikacji?
Tworzenie listy dozwolonych aplikacji (wcześniej określane jako whitelisting) to mechanizm bezpieczeństwa, który zezwala na uruchamianie na punkcie końcowym wyłącznie jawnie zatwierdzonych aplikacji. Każdy plik wykonywalny, którego nie ma na liście dozwolonych, zostaje zablokowany — niezależnie od tego, czy jest złośliwym oprogramowaniem, czy tylko niezatwierdzonym programem. Jest to skuteczna ochrona przed malware, ponieważ blokuje również nowe, nieznane wcześniej malware typu zero-day, jeśli nie znajduje się ono na zatwierdzonej liście. Wyzwaniem jest strona operacyjna: zarządzanie listą w dużych, dynamicznych środowiskach wymaga dojrzałego procesu zarządzania zmianami, a niewłaściwe dostrojenie generuje wiele zgłoszeń do pomocy technicznej.
Windows AppLocker
AppLocker to wbudowana w system Windows funkcja kontroli aplikacji, dostępna w edycjach Enterprise i Education. Filtruje uruchamianie według: ścieżki (blokowanie plików wykonywalnych z katalogu %TEMP% lub katalogów, w których użytkownicy mogą zapisywać pliki), sumy kontrolnej pliku (zezwalanie wyłącznie na znane, zaufane sumy) albo wydawcy (zezwalanie na oprogramowanie podpisane przez Microsoft lub Adobe). Zasady AppLocker są wdrażane za pomocą zasad grupy, a ich zdarzenia są zapisywane w dzienniku zdarzeń systemu Windows (Event ID 8003 = zablokowano). Uruchomienie AppLocker w trybie audytu — rejestrowanie blokad bez ich egzekwowania — pozwala zespołom dostroić listę dozwolonych przed rozpoczęciem egzekwowania zasad.
# 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 to bardziej zaawansowany następca AppLocker, egzekwowany na poziomie jądra, a nie w przestrzeni użytkownika. W przeciwieństwie do AppLocker mechanizmu WDAC nie mogą ominąć atakujący posiadający lokalne uprawnienia administratora, dlatego jest to preferowane rozwiązanie w środowiskach o wysokich wymaganiach bezpieczeństwa. Zasady WDAC są zapisywane w formacie XML, a następnie konwertowane do binarnych plików zasad wdrażanych za pomocą MDM (Intune) lub zasad grupy. WDAC umożliwia także integrację z usługą Intelligent Security Graph (ISG), która wykorzystuje chmurową usługę reputacyjną firmy Microsoft do automatycznego zezwalania na oprogramowanie o zaufanej reputacji — ograniczając nakład pracy związany z ręcznym tworzeniem listy dozwolonych.
Wyzwania związane z tworzeniem listy dozwolonych
Tworzenie listy dozwolonych jest skuteczne, ale wymagające pod względem operacyjnym. Typowe wyzwania to: LOLBins (Living-Off-the-Land Binaries) — atakujący wykorzystują narzędzia systemowe Windows, takie jak PowerShell, wscript.exe i mshta.exe, które zwykle znajdują się na każdej liście dozwolonych; dlatego należy ograniczać sposób ich uruchamiania, a nie tylko decydować, czy mogą działać. Języki skryptowe (PowerShell, Python) często są dozwolone, ale mogą wykonywać złośliwy kod. Fałszywe alarmy — blokowanie legalnego oprogramowania przez listę dozwolonych — generują zgłoszenia do pomocy technicznej i presję na osłabienie zabezpieczeń. Dojrzałe programy tworzenia list dozwolonych rozwiązują problem LOLBins za pomocą dodatkowych zasad trybu ograniczonego języka.
# 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, TranscriptionTworzenie listy dozwolonych a listy blokowanych
Tworzenie listy dozwolonych zezwala wyłącznie na jawnie zatwierdzone elementy i blokuje całą resztę — zapewniając silniejszą ochronę. Tworzenie listy blokowanych (blacklisting) blokuje jawnie rozpoznane szkodliwe elementy, a cała reszta jest dozwolona — jest to tradycyjny model działania programów antywirusowych. Lista blokowanych nie chroni przed nieznanymi zagrożeniami, natomiast lista dozwolonych nie chroni przed LOLBins ani przed zbyt szeroko zdefiniowanymi wpisami zezwalającymi. Większość dojrzałych programów bezpieczeństwa stosuje listę dozwolonych jako podstawowy mechanizm ochrony systemów krytycznych, a jednocześnie wykorzystuje wykrywanie behawioralne (EDR) do wykrywania niewłaściwego użycia dozwolonych aplikacji. W przypadku mniej krytycznych systemów akceptowalna może być dobrze dostrojona lista blokowanych wraz z monitorowaniem behawioralnym.
Łączenie zapory z listą dozwolonych
Zapory hostowe i tworzenie listy dozwolonych aplikacji to uzupełniające się, warstwowe mechanizmy kontroli. Lista dozwolonych zapobiega uruchamianiu nieautoryzowanego kodu, a zapora blokuje nieautoryzowane połączenia sieciowe nawiązywane przez autoryzowany, lecz przejęty kod. Razem wdrażają zasadę najmniejszych uprawnień zarówno na poziomie aplikacji, jak i sieci na punkcie końcowym. Dodanie EDR jako trzeciej warstwy tworzy stos zabezpieczeń warstwowych, w którym każdy mechanizm wykrywa zagrożenia, które mogą umknąć pozostałym, znacznie zwiększając koszt i złożoność skutecznych ataków na punkty końcowe.
# 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 investigationRejestrowanie i monitorowanie zapory
Wartość zapór hostowych zależy od jakości generowanych przez nie dzienników. Należy włączyć rejestrowanie zablokowanych połączeń, aby przechwytywać próby ataków i naruszenia zasad. W przypadku wrażliwych reguł, takich jak reguły zezwalające na korzystanie z narzędzi administracyjnych, należy również włączyć rejestrowanie dozwolonych połączeń, aby zachować ścieżkę audytu. Dzienniki zapory należy przekazywać do systemu SIEM w celu korelacji — seria zablokowanych połączeń wychodzących z jednego hosta może wskazywać na malware próbujące nawiązać połączenia zwrotne z serwerem C2. W systemie Windows dzienniki zapory są domyślnie zapisywane w pliku %systemroot%\System32\LogFiles\Firewall\pfirewall.log i powinny być przekazywane za pomocą Windows Event Forwarding (WEF) lub agenta dzienników.
# 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 DROPSzybki test
Sprawdź swoją znajomość zagadnień CompTIA Security+ (SY0-701) omówionych w tej lekcji.
Podsumowanie lekcji
W tej lekcji nauczyli się Państwo, że: zapory hostowe (Windows Defender Firewall, iptables) filtrują ruch dla poszczególnych punktów końcowych, stosując podejście „domyślnie odmawiaj” i reguły przypisane do aplikacji; tworzenie listy dozwolonych aplikacji (AppLocker, WDAC) blokuje uruchamianie nieautoryzowanych plików wykonywalnych, w tym malware; natomiast połączenie zapory, listy dozwolonych i EDR zapewnia obronę warstwową, znacznie zwiększając koszt ataku. W następnej części omówimy uwierzytelnianie poczty e-mail: SPF, DKIM i DMARC.
Często zadawane pytania
Czy lekcja „Zapora hosta i lista dozwolonych aplikacji” jest bezpłatna?
Tak — pełny tekst „Zapora hosta i lista dozwolonych aplikacji” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Cloud & IT Cert Prep, przejdź na CoddyKit PRO. Kurs Cloud & IT Cert Prep zawiera 4 lekcji w sumie.
Co nauczysz się w „Zapora hosta i lista dozwolonych aplikacji”?
Konfiguruj zapory hosta (Windows Defender Firewall, iptables) oraz listy dozwolonych aplikacji, które blokują wykonywanie nieautoryzowanego oprogramowania. Ćwiczysz Cloud & IT Cert Prep z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Cloud & IT Cert Prep?
Nie wymagamy żadnego doświadczenia. Cloud & IT Cert Prep w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 4 z 4.
Ile czasu zajmuje lekcja „Zapora hosta i lista dozwolonych aplikacji”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Cloud & IT Cert Prep?
Tak. Każda lekcja Cloud & IT Cert Prep zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Platformy antywirusowe, EDR i XDR
- Hartowanie systemu operacyjnego: poprawki, konfiguracja bazowa i wzorce CIS
- Zarządzanie urządzeniami mobilnymi (MDM) i zasady BYOD
- Zapora hosta i lista dozwolonych aplikacji