Hartowanie systemu operacyjnego: poprawki, konfiguracja bazowa i wzorce CIS
Zastosują Państwo techniki hartowania systemu operacyjnego — wyłączanie zbędnych usług, wymuszanie konfiguracji bazowych i korzystanie ze wzorców CIS — aby zmniejszyć powierzchnię ataku.
Hartowanie systemu operacyjnego: poprawki, konfiguracja bazowa i wzorce CIS to bezpłatna lekcja Security+ Academy na CoddyKit. To lekcja 2 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 Security+ Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Security+ Academy zawiera 4 lekcji w sumie.
Na czym polega wzmacnianie bezpieczeństwa systemu operacyjnego
Wzmacnianie bezpieczeństwa systemu operacyjnego to proces zmniejszania powierzchni ataku systemu operacyjnego poprzez usuwanie niepotrzebnych funkcji, stosowanie konfiguracji bezpieczeństwa i bieżące instalowanie poprawek. Świeżo zainstalowany system operacyjny nie jest domyślnie bezpieczny — priorytetem jest użyteczność, dlatego włączone są usługi i funkcje, których wielu użytkowników może potrzebować, ale które w większości serwerów przedsiębiorstwa są zbędne. Każda włączona usługa, otwarty port i domyślne poświadczenie może stanowić punkt wejścia dla atakujących. Wzmacnianie bezpieczeństwa systematycznie zamyka te punkty wejścia, zanim system trafi do środowiska produkcyjnego.
Zarządzanie poprawkami
Zarządzanie poprawkami to proces identyfikowania, testowania i stosowania aktualizacji oprogramowania usuwających luki w zabezpieczeniach. System bez zainstalowanych poprawek jest jednym z najłatwiejszych celów ataku — wiele poważnych naruszeń bezpieczeństwa (Equifax 2017, WannaCry 2017) wykorzystywało znane, już załatane luki, których organizacje po prostu nie wdrożyły. Dojrzały proces zarządzania poprawkami obejmuje: identyfikowanie poprawek (subskrypcję komunikatów dostawców, kanałów CVE), klasyfikację ważności (Awaryjna/Krytyczna/Wysoka/Średnia), harmonogramy testów (w wielu ramach krytyczne poprawki należy wdrożyć w ciągu 48–72 godzin) oraz weryfikację wdrożenia.
# Patch criticality SLA example
CVSS Score SLA Notes
---------- ---------- ----------------------
9.0 - 10.0 48 hours Emergency patch cycle
7.0 - 8.9 7 days Critical patch cycle
4.0 - 6.9 30 days Standard patch cycle
0.1 - 3.9 90 days Routine patch cycle
# Verify patch application:
# Windows: Get-HotFix | Where-Object {$_.HotFixID -eq 'KB5023706'}
# Linux: dpkg -l | grep package_nameWyłączanie niepotrzebnych usług
Każda uruchomiona usługa może stanowić wektor ataku. Wzmacnianie bezpieczeństwa systemu operacyjnego należy rozpocząć od audytu usług: wyświetlić wszystkie uruchomione usługi, określić ich przeznaczenie i wyłączyć te, które nie są wymagane przez rolę systemu. W Windows Server na serwerach, które ich nie potrzebują, często wyłącza się role takie jak Print Spooler, Remote Registry i LLMNR. W systemie Linux typowymi kandydatami są usługi takie jak rpcbind, cups (drukowanie) i avahi (mDNS). Zasada jest prosta: jeśli tego nie potrzebujesz, wyłącz to.
# Windows: disable unnecessary service
SC config 'Spooler' start= disabled
SC stop 'Spooler'
# Linux: disable unused services
systemctl disable cups
systemctl stop cups
systemctl disable avahi-daemon
systemctl stop avahi-daemon
# Verify no unnecessary ports are listening:
ss -tulnp # Linux
netstat -an | findstr LISTENING # WindowsUsuwanie niepotrzebnego oprogramowania
Zainstalowane, ale nieużywane oprogramowanie stanowi niepotrzebne ryzyko. Każdy pakiet może wprowadzać luki — nawet dobrze utrzymywane oprogramowanie ma luki CVE. Wzmacnianie bezpieczeństwa systemu operacyjnego obejmuje: usuwanie środowisk uruchomieniowych języków, których nie wymagają aplikacje (Python, Perl, Ruby na serwerach WWW), usuwanie narzędzi programistycznych (kompilatorów i debugerów z systemów produkcyjnych) oraz usuwanie domyślnych pakietów aplikacji dostarczanych z obrazami systemu operacyjnego (serwerów FTP, klientów telnet, agentów SNMP). Z tego samego powodu obrazy kontenerów powinny używać minimalnych obrazów bazowych (Alpine, scratch, distroless).
# Remove unused packages (Debian/Ubuntu)
apt purge telnet ftp netcat python2 perl
apt autoremove
# Remove unused packages (RHEL/CentOS)
yum remove telnet ftp nmap-ncat
# Check what is installed:
dpkg -l | grep -i 'telnet\|ftp\|netcat'Zabezpieczanie kont domyślnych
Domyślne konta ze znanymi nazwami użytkowników i hasłami należą do pierwszych celów atakujących. Działania wzmacniające zabezpieczenia: wyłącz wbudowane konto Administrator (Windows), a jeśli wyłączenie nie jest możliwe, zmień jego nazwę; zmień nazwę konta root lub ogranicz logowanie root przez SSH (Linux); zmień wszystkie domyślne hasła w urządzeniach, bazach danych i aplikacjach, zanim trafią do środowiska produkcyjnego; usuń konta gościa; oraz wyłącz konta usług, które nie wymagają logowania interaktywnego. Narzędzie skanujące, takie jak Nessus, oznaczy domyślne dane uwierzytelniające jako krytyczne ustalenia.
# Linux: disable root SSH login
# Edit /etc/ssh/sshd_config:
PermitRootLogin no
PasswordAuthentication no
AllowUsers admin_user service_user
# Restart SSH:
systemctl restart sshd
# Windows: disable built-in Administrator
net user Administrator /active:no
# Rename (via Group Policy):
# Computer Config > Windows Settings > Security Settings
# > Local Policies > Security Options
# > 'Accounts: Rename administrator account'Uprawnienia systemu plików i zasada najmniejszych uprawnień
Bezpieczne uprawnienia systemu plików egzekwują zasadę najmniejszych uprawnień w systemie operacyjnym. Procesy serwera WWW nie powinny mieć dostępu do zapisu w katalogach, które obsługują. Konta aplikacji nie powinny mieć dostępu do odczytu plików konfiguracyjnych zawierających dane uwierzytelniające. W systemie Linux należy przeprowadzać audyt plików binarnych setuid i setgid, ponieważ są uruchamiane z podwyższonymi uprawnieniami niezależnie od tego, kto je wykonuje. W systemie Windows uprawnienia NTFS i audytowanie DACL zapewniają, że dostęp do wrażliwych katalogów (gałąź SAM, kopie w tle, magazyny danych uwierzytelniających) mają wyłącznie autoryzowane procesy.
# Find setuid/setgid binaries (Linux)
find / -perm /4000 -o -perm /2000 2>/dev/null
# Secure web root permissions
chown -R root:www-data /var/www/html
chmod -R 755 /var/www/html
chmod 640 /var/www/html/config.php
# Check overly permissive files
find /etc -perm -o+w 2>/dev/null # world-writable in /etcCIS Benchmarks
CIS Benchmarks to bezpłatne, opracowane przez społeczność przewodniki dotyczące wzmacniania zabezpieczeń określonych systemów operacyjnych, aplikacji i platform chmurowych. Każdy benchmark zawiera setki szczegółowych zaleceń konfiguracyjnych wraz z uzasadnieniem, instrukcjami usuwania problemów i poleceniami audytowymi. CIS Benchmarks wykorzystują dwa poziomy profili: Level 1 — podstawowe, szeroko stosowalne konfiguracje, które nie ograniczają funkcjonalności; Level 2 — zaawansowane konfiguracje dla środowisk o wysokim poziomie bezpieczeństwa, które mogą wpływać na użyteczność. Benchmarki istnieją dla Windows Server, Ubuntu/RHEL, macOS, Docker, Kubernetes, AWS, Azure, GCP, przeglądarek i baz danych.
# CIS Benchmark check example (Linux L1)
# CIS Ubuntu 22.04 - 1.1.1.1 Disable cramfs
modprobe -n -v cramfs 2>&1 | grep -q 'Module cramfs not found'
# Expected: Module cramfs not found OR 'install /bin/false'
# Remediate:
echo 'install cramfs /bin/false' >> /etc/modprobe.d/CIS.conf
# CIS Windows - Account Lockout threshold
# secedit /export /cfg secpol.txt
# Check: LockoutBadCount = 5 (not 0)Zarządzanie konfiguracją bazową
Bazowa konfiguracja zabezpieczeń to udokumentowany zestaw ustawień konfiguracyjnych, który musi spełniać każdy system należący do danej kategorii ról. Konfiguracje bazowe są stosowane za pomocą obiektów zasad grupy (GPO) w systemie Windows, a także playbooków Ansible, cookbooków Chef lub manifestów Puppet w systemie Linux. Narzędzia do zarządzania konfiguracją umożliwiają wykrywanie odchyleń: jeśli system odbiega od zatwierdzonej konfiguracji bazowej (np. usługa zostanie ponownie włączona), automatyczne alerty i automatyczne przywracanie zgodności mogą przywrócić jego zgodność. Dokument NIST SP 800-128 zawiera wytyczne dotyczące zarządzania konfiguracją ukierunkowanego na bezpieczeństwo systemów federalnych.
# Ansible hardening playbook snippet
- name: Disable ICMP redirects
sysctl:
name: net.ipv4.conf.all.accept_redirects
value: '0'
state: present
reload: yes
- name: Enable address space layout randomization
sysctl:
name: kernel.randomize_va_space
value: '2'
state: present
reload: yesRejestrowanie audytowe i monitorowanie
Wzmacnianie zabezpieczeń nie polega wyłącznie na zapobieganiu — równie ważne są rejestrowanie i monitorowanie. Skonfiguruj zasady audytu tak, aby rejestrowały: zdarzenia uwierzytelniania (udane i nieudane), eskalację uprawnień, dostęp do obiektów (odczyty wrażliwych plików), tworzenie procesów (wraz z argumentami wiersza poleceń) oraz zdarzenia połączeń sieciowych. Dzienniki muszą być przekazywane do centralnego systemu SIEM niemal w czasie rzeczywistym, aby lokalni atakujący z uprawnieniami administratora nie mogli zatrzeć śladów przez wyczyszczenie dzienników zdarzeń. Zgodnie z większością standardów zgodności dzienniki należy przechowywać przez co najmniej 12 miesięcy.
# Enable Windows audit policy (Group Policy)
auditpol /set /category:'Logon/Logoff' /success:enable /failure:enable
auditpol /set /category:'Process Creation' /success:enable
auditpol /set /subcategory:'Privilege Use' /success:enable /failure:enable
# Linux: configure auditd for privilege use
echo '-a always,exit -F arch=b64 -S execve -k exec_track' >> /etc/audit/rules.d/audit.rules
echo '-w /etc/sudoers -p wa -k priv_change' >> /etc/audit/rules.d/audit.rules
augenrules --loadAutomatyczne skanowanie zgodności
Ręczna weryfikacja benchmarków wzmacniania zabezpieczeń na każdym systemie jest niepraktyczna w dużej skali. Narzędzia do skanowania zgodności automatyzują tę kontrolę. OpenSCAP (oprogramowanie open source) stosuje treści SCAP do systemów Linux i generuje raporty HTML pokazujące kontrole zakończone powodzeniem, niepowodzeniem oraz kontrole, których nie można zastosować. Nessus zawiera zasady benchmarków CIS. Microsoft Security Compliance Toolkit ocenia systemy Windows względem bazowych konfiguracji firmy Microsoft. Narzędzia te są uruchamiane regularnie (co tydzień lub co miesiąc), a odchylenia powodują utworzenie zgłoszeń naprawczych w systemie zarządzania zmianami.
# OpenSCAP compliance scan (RHEL/CentOS)
oscap xccdf eval \
--profile xccdf_org.ssgproject.content_profile_cis \
--results results.xml \
--report report.html \
/usr/share/xml/scap/ssg/content/ssg-rhel9-ds.xml
# Generate remediation script
oscap xccdf generate fix \
--fix-type bash \
--result-id '' \
results.xml > remediation.shZasady grupy i szablony zabezpieczeń
W domenach Windows obiekty zasad grupy (GPO) są podstawowym mechanizmem stosowania i egzekwowania bazowych konfiguracji zabezpieczeń na dużą skalę. Szablony zabezpieczeń (gotowe lub niestandardowe pliki .inf) można importować do obiektów GPO, aby jednocześnie skonfigurować setki ustawień: zasady kont, zasady audytu, przypisywanie praw użytkowników, opcje zabezpieczeń i wartości rejestru. Przystawka Security Configuration and Analysis oraz narzędzie wiersza poleceń secedit porównują bieżące ustawienia ze zdefiniowanym szablonem i generują raporty zgodności. Obiekty GPO są stosowane podczas uruchamiania systemu oraz w regularnych odstępach, dzięki czemu odchylenia od konfiguracji bazowej są automatycznie korygowane.
# Apply security template via secedit
secedit /configure /db %windir%\security\local.sdb \
/cfg C:\Templates\CIS_Level1_Server2022.inf \
/log secedit_apply.log
# Analyze current config vs template
secedit /analyze /db %windir%\security\local.sdb \
/cfg C:\Templates\CIS_Level1_Server2022.inf \
/log secedit_analysis.log
# View result: settings marked as compliant or non-compliantSzybki sprawdzian
Sprawdź swoją znajomość zagadnień CompTIA Security+ (SY0-701) omówionych w tej lekcji.
Podsumowanie lekcji
W tej lekcji poznali Państwo następujące zagadnienia: wzmacnianie zabezpieczeń systemu operacyjnego zmniejsza powierzchnię ataku przez wyłączanie usług, usuwanie oprogramowania, zabezpieczanie kont i stosowanie uprawnień zgodnych z zasadą najmniejszych uprawnień; zarządzanie poprawkami usuwa znane luki za pomocą umów SLA zależnych od krytyczności; a CIS Benchmarks zapewniają wytyczne dotyczące konfiguracji na poziomie 1 (podstawowym) i 2 (zaawansowanym), egzekwowane za pomocą narzędzi do automatycznego skanowania zgodności. W następnej części omówimy zarządzanie urządzeniami mobilnymi i zasady BYOD.
Często zadawane pytania
Czy lekcja „Hartowanie systemu operacyjnego: poprawki, konfiguracja bazowa i wzorce CIS” jest bezpłatna?
Tak — pełny tekst „Hartowanie systemu operacyjnego: poprawki, konfiguracja bazowa i wzorce CIS” 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 Security+ Academy, przejdź na CoddyKit PRO. Kurs Security+ Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Hartowanie systemu operacyjnego: poprawki, konfiguracja bazowa i wzorce CIS”?
Zastosują Państwo techniki hartowania systemu operacyjnego — wyłączanie zbędnych usług, wymuszanie konfiguracji bazowych i korzystanie ze wzorców CIS — aby zmniejszyć powierzchnię ataku. Ćwiczysz Security+ Academy 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ąć Security+ Academy?
Nie wymagamy żadnego doświadczenia. Security+ Academy 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 2 z 4.
Ile czasu zajmuje lekcja „Hartowanie systemu operacyjnego: poprawki, konfiguracja bazowa i wzorce CIS”?
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 Security+ Academy?
Tak. Każda lekcja Security+ Academy 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