MHITE MHITE s.r.o.
← Späť na zdroje Kontakt

Security Best Practices – Windows 11

Interný bezpečnostný štandard pre hardening pracovných staníc
Organizácia MHITE s.r.o.
Autor Ing. Martin Hasin, PhD.
Revízia v2.1 (13.01.2026)
Klasifikácia Public / Verejne dostupné

1. Úvod a rozsah platnosti

1.1 Účel dokumentu

Tento dokument definuje záväzné bezpečnostné nastavenia pre operačný systém Windows 11, ktoré musia byť implementované na všetkých pracovných staniciach a notebookoch v rámci organizácie MHITE s.r.o. Cieľom je vytvoriť jednotný, bezpečný a auditovateľný základ pre všetky koncové zariadenia.

1.2 Rozsah platnosti

Dokument sa vzťahuje na:

  • Všetky pracovné stanice s Windows 11
  • Firemné notebooky a laptopy
  • Virtuálne desktopy (VDI)
  • Zariadenia pripojené do firemnej domény
  • BYOD zariadenia s prístupom k firemným zdrojom

Dokument sa nevzťahuje na:

  • Servery (Windows Server)
  • Sieťové zariadenia
  • Mobilné zariadenia (iOS, Android)
  • Špeciálne priemyselné systémy

1.3 Cieľová skupina

Rola Zodpovednosť
IT Administrátor Implementácia a údržba nastavení, monitoring compliance
Security Officer Audit, schvaľovanie výnimiek, incident response
Helpdesk Základná diagnostika, eskalácia problémov
Management Schvaľovanie politík, alokovanie zdrojov
Dôležité upozornenie: Pred implementáciou nastavení v produkčnom prostredí je NUTNÉ otestovať všetky zmeny v testovacom prostredí. Niektoré nastavenia môžu ovplyvniť funkcionalitu špecifických aplikácií.

2. Referenčné bezpečnostné štandardy

Tento dokument vychádza z nasledujúcich medzinárodne uznávaných bezpečnostných štandardov a best practices:

Štandard Verzia Popis Použitie v dokumente
CIS Benchmark Windows 11 v3.0.0 Center for Internet Security – komplexný hardening guide Základný framework pre všetky nastavenia
Microsoft Security Baseline Windows 11 24H2 Oficiálny Microsoft hardening guide GPO nastavenia, Defender konfigurácia
NIST SP 800-53 Rev. 5 Security and Privacy Controls Kontrolné mechanizmy, audit
ISO 27001:2022 2022 Information Security Management Rizikový framework, dokumentácia
MITRE ATT&CK v14 Adversarial Tactics, Techniques Mapovanie hrozieb na ochranné opatrenia
CIS Control Mapping: Každé nastavenie v tomto dokumente je mapované na príslušný CIS Control. Formát: CIS X.Y.Z kde X = kategória, Y = podkategória, Z = konkrétne nastavenie.

3. Windows Update – Správa aktualizácií

3.1 Prehľad a význam

Pravidelné a riadené aktualizácie systému Windows 11 sú kritickým prvkom zabezpečenia. Microsoft vydáva bezpečnostné aktualizácie každý druhý utorok v mesiaci ("Patch Tuesday"), ale kritické opravy (out-of-band updates) môžu byť vydané kedykoľvek.

Štatistiky zraniteľností:

3.2 Kritické zraniteľnosti riešené aktualizáciami

CVE Názov CVSS Typ útoku MITRE ATT&CK
CVE-2024-38063 TCP/IP RCE 9.8 Remote Code Execution bez autentifikácie T1190 - Exploit Public-Facing Application
CVE-2021-34527 PrintNightmare 8.8 RCE cez Print Spooler T1210 - Exploitation of Remote Services
CVE-2020-1472 Zerologon 10.0 Domain Controller takeover T1068 - Exploitation for Privilege Escalation
CVE-2017-0144 EternalBlue 9.8 SMBv1 RCE (WannaCry, NotPetya) T1210 - Exploitation of Remote Services

3.3 Scenáre útokov na neaktualizované systémy

Scenár 1: Ransomware útok cez neopravenú zraniteľnosť

Popis: Útočník skenuje internet na systémy so zraniteľnosťou (napr. EternalBlue). Po identifikácii zraniteľného systému spúšťa exploit a nasadzuje ransomware.

Priebeh:
1. Masscan/Shodan sken na port 445
2. Identifikácia systémov bez patchov (SMBv1 enabled)
3. Exploit cez EternalBlue (MS17-010)
4. Payload: ransomware (WannaCry, Ryuk)
5. Šifrovanie súborov, požiadavka výkupného

Mitigácia: Okamžitá inštalácia security updates, disable SMBv1

MITRE ATT&CK: T1210 - Exploitation of Remote Services

Scenár 2: Privilege Escalation cez lokálnu zraniteľnosť

Popis: Útočník s obmedzeným prístupom využíva neopravenú lokálnu zraniteľnosť na získanie SYSTEM privilégií.

Priebeh:
1. Útočník má user-level prístup (phishing, slabé heslo)
2. Identifikuje chýbajúce patchy (systeminfo, Windows Exploit Suggester)
3. Spúšťa exploit pre lokálnu privilege escalation
4. Získava SYSTEM/Administrator práva
5. Perzistencia, credential dumping, lateral movement

Mitigácia: Pravidelné quality updates, principle of least privilege

MITRE ATT&CK: T1068 - Exploitation for Privilege Escalation

3.4 Odporúčané nastavenia

Nastavenie Hodnota Risk Level CIS Ref Popis
Automatické aktualizácie Zapnuté Critical 18.9.102.1 Automatické sťahovanie a inštalácia bezpečnostných aktualizácií
Aktualizácie pre iné produkty MS Zapnuté High 18.9.102.2 Aktualizácie pre Office, Edge, .NET a ďalšie MS produkty
Odloženie feature updates 180 dní Medium 18.9.102.4 Oddialenie veľkých aktualizácií pre testovanie kompatibility
Odloženie quality updates 0–7 dní Low 18.9.102.5 Bezpečnostné opravy inštalovať čo najskôr
Reštart po aktualizácii Plánovaný Medium 18.9.102.6 Vyžadovať reštart v definovanom maintenance window

3.6 GPO konfigurácia

# Windows Update GPO nastavenia
# Cesta: Computer Configuration > Administrative Templates > Windows Components > Windows Update

# Konfigurácia automatických aktualizácií
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" `
    -Name "NoAutoUpdate" -Type DWord -Value 0

# Plánovaná inštalácia – každý deň o 3:00
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" `
    -Name "AUOptions" -Type DWord -Value 4
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" `
    -Name "ScheduledInstallDay" -Type DWord -Value 0
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" `
    -Name "ScheduledInstallTime" -Type DWord -Value 3

# Aktualizácie pre iné MS produkty
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" `
    -Name "AllowMUUpdateService" -Type DWord -Value 1
Verifikácia nastavení
  1. Otvorte Settings > Windows Update
  2. Skontrolujte, či je zapnuté "Get updates for other Microsoft products"
  3. Overte dátum poslednej aktualizácie (nie staršie ako 30 dní)
  4. Spustite Get-HotFix | Sort-Object InstalledOn -Descending | Select -First 10

4. Ochrana systému a dát (System & Data Protection)

4.1 Microsoft Defender Antivirus

Microsoft Defender Antivirus je integrované antivírusové riešenie, ktoré poskytuje real-time ochranu proti malvéru, ransomvéru a ďalším hrozbám. V kombinácii s cloudovou ochranou dosahuje detection rate porovnateľnú s komerčnými riešeniami.

Nastavenie Hodnota Risk CIS Detailný popis
Real-time protection On Critical 18.9.47.4.1 Neustále monitoruje všetky pristupované súbory, procesy a sieťovú komunikáciu. Okamžite blokuje pokusy o spustenie škodlivého kódu.
MITRE: T1059 (Command and Scripting Interpreter)
Cloud-delivered protection On Critical 18.9.47.4.2 Využíva Microsoft Intelligent Security Graph pre okamžitú detekciu nových hrozieb. Umožňuje detekciu zero-day malvéru do 10 sekúnd od prvého výskytu.
MITRE: T1204 (User Execution)
Automatic sample submission On High 18.9.47.4.3 Automaticky odosiela podozrivé súbory do Microsoftu na analýzu. Pomáha zlepšovať globálnu detekciu hrozieb.
Poznámka: Možnosť nastaviť "Send safe samples automatically"
Tamper Protection On Critical 18.9.47.4.4 Zabraňuje malvéru a útočníkom vypnúť alebo zmeniť nastavenia Defendera. Chráni aj pred legitímnymi admin nástrojmi zneužitými útočníkom.
MITRE: T1562.001 (Impair Defenses: Disable or Modify Tools)
Controlled Folder Access On High 18.9.47.4.5 Ochrana proti ransomvéru – blokuje neautorizované zmeny v chránených priečinkoch (Documents, Pictures, Desktop atď.).
MITRE: T1486 (Data Encrypted for Impact)
Network Protection On High 18.9.47.4.6 Blokuje pripojenia na známe škodlivé domény a IP adresy. Integrované s Microsoft Defender SmartScreen.
MITRE: T1071 (Application Layer Protocol)

4.2 Scenáre útokov a ochrana Defenderom

Scenár 1: Malvér cez Office makro

Popis: Útočník posiela phishing email s Word dokumentom obsahujúcim škodlivé makro. Po otvorení a povolení makier sa spustí PowerShell downloader.

Priebeh:
1. Email s prílohou "Faktura.docm"
2. Používateľ otvorí dokument a klikne "Enable Content"
3. Makro spustí powershell.exe -enc [base64_payload]
4. Stiahne sa Emotet/TrickBot loader
5. Malvér kradne credentials, šíri sa sieťou

Ochrana: ASR pravidlo "Block Office applications from creating executable content"

MITRE ATT&CK: T1566.001 - Phishing: Spearphishing Attachment

Scenár 2: Ransomware útok

Popis: Ransomware (LockBit, BlackCat) šifruje súbory a požaduje výkupné. Controlled Folder Access blokuje neautorizovaný prístup k dokumentom.

Priebeh bez ochrany:
1. Ransomware sa spustí (phishing, RDP brute-force, exploit)
2. Enumerácia súborov (Documents, Desktop, Network shares)
3. Šifrovanie súborov s vlastnou príponou (.lockbit, .blackcat)
4. Vymazanie VSS snapshotov
5. Ransom note s platobným požiadavkom

Ochrana: Controlled Folder Access, real-time protection, cloud protection

MITRE ATT&CK: T1486 - Data Encrypted for Impact

Scenár 3: Tamper Protection bypass pokus

Popis: Malvér sa pokúša vypnúť Defender pred spustením hlavného payloadu. Tamper Protection blokuje všetky pokusy o modifikáciu nastavení.

Pokus o bypass:
1. Set-MpPreference -DisableRealtimeMonitoring $true - BLOKOVANÉ
2. sc stop WinDefend - BLOKOVANÉ
3. Registry úprava nastavení - BLOKOVANÉ
4. GPO zmena - BLOKOVANÉ

Ochrana: Tamper Protection (vyžaduje Microsoft Defender for Endpoint alebo Windows Security app)

MITRE ATT&CK: T1562.001 - Impair Defenses: Disable or Modify Tools

4.3 PowerShell konfigurácia Defendera

# Overenie aktuálneho stavu Defendera
Get-MpComputerStatus | Select-Object `
    AntivirusEnabled, `
    RealTimeProtectionEnabled, `
    IoavProtectionEnabled, `
    AntispywareEnabled, `
    BehaviorMonitorEnabled, `
    OnAccessProtectionEnabled

# Zapnutie všetkých ochranných funkcií
Set-MpPreference -DisableRealtimeMonitoring $false
Set-MpPreference -MAPSReporting Advanced
Set-MpPreference -SubmitSamplesConsent SendAllSamples
Set-MpPreference -EnableControlledFolderAccess Enabled
Set-MpPreference -EnableNetworkProtection Enabled
Set-MpPreference -PUAProtection Enabled

# Nastavenie plánovaných scanov
Set-MpPreference -ScanScheduleDay Everyday
Set-MpPreference -ScanScheduleTime 12:00:00
Set-MpPreference -ScanParameters FullScan

# Aktualizácia definícií
Update-MpSignature
Bezpečnostné prínosy ASR pravidiel:

5. Core Isolation (Virtualization-based Security)

5.1 Prehľad technológie

Virtualization-based Security (VBS) využíva hardvérovú virtualizáciu na vytvorenie izolovaného pamäťového regiónu oddeleného od normálneho operačného systému. Tento "secure kernel" chráni kritické systémové procesy a credentials pred kompromitovaným hlavným OS.

Požiadavky na hardvér:

5.2 Komponenty Core Isolation

Komponent Hodnota Risk CIS Detailný popis a scenár útoku
Memory Integrity (HVCI) On Critical 18.9.5.1 Čo robí: Všetky ovládače a kernel kód musia byť podpísané a overené pred spustením. Zabraňuje injekcii škodlivého kódu do kernel priestoru.
Scenár útoku: Útočník zneužije zraniteľný ovládač (BYOVD – Bring Your Own Vulnerable Driver) na spustenie kernel-level malvéru. HVCI toto blokuje.
MITRE: T1068 (Exploitation for Privilege Escalation)
Credential Guard On Critical 18.9.5.2 Čo robí: Izoluje NTLM hashe, Kerberos tickets a ďalšie credentials v zabezpečenom kontajneri. Ani administrátor s full kernel access nemôže získať credentials.
Scenár útoku: Mimikatz a podobné nástroje NEDOKÁŽU extrahovať credentials z pamäte.
MITRE: T1003 (OS Credential Dumping)
LSA Protection On Critical 18.9.5.3 Čo robí: Spúšťa LSASS proces ako Protected Process Light (PPL). Blokuje injection a memory read z neautorizovaných procesov.
Scenár útoku: Útočník sa pokúša o process injection do LSASS – PPL to zablokuje.
MITRE: T1055 (Process Injection)
Kernel DMA Protection On High 18.9.5.4 Čo robí: Blokuje DMA útoky cez externé porty (Thunderbolt, PCIe). Vyžaduje IOMMU/VT-d podporu.
Scenár útoku: Fyzický prístup s PCILeech/DMA útočným zariadením – blokované.
MITRE: T1200 (Hardware Additions)
Vulnerable Driver Blocklist On High 18.9.5.5 Čo robí: Blokuje známe zraniteľné ovládače, ktoré útočníci zneužívajú. Zoznam je automaticky aktualizovaný cez Windows Update.
Scenár útoku: BYOVD útok s ovládačom ako gdrv.sys, capcom.sys – blokované.
MITRE: T1068 (Exploitation for Privilege Escalation)
Varovanie o kompatibilite: Zapnutie HVCI môže spôsobiť problémy s niektorými staršími ovládačmi alebo virtualizačným softvérom (VirtualBox, VMware Workstation). Pred deploymentom je nutné otestovať všetky kritické aplikácie.

5.3 PowerShell konfigurácia Core Isolation

# ===== OVERENIE AKTUÁLNEHO STAVU VBS =====
Get-CimInstance -ClassName Win32_DeviceGuard -Namespace root\Microsoft\Windows\DeviceGuard | `
    Select-Object -Property SecurityServicesRunning, VirtualizationBasedSecurityStatus

# ===== ZAPNUTIE MEMORY INTEGRITY (HVCI) =====
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity" `
    -Name "Enabled" -Type DWord -Value 1

# ===== ZAPNUTIE CREDENTIAL GUARD =====
# Vyžaduje reštart systému
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa" `
    -Name "LsaCfgFlags" -Type DWord -Value 1
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\DeviceGuard" `
    -Name "EnableVirtualizationBasedSecurity" -Type DWord -Value 1
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\DeviceGuard" `
    -Name "LsaCfgFlags" -Type DWord -Value 1

# ===== ZAPNUTIE LSA PROTECTION (PPL) =====
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa" `
    -Name "RunAsPPL" -Type DWord -Value 1

# ===== ZAPNUTIE VULNERABLE DRIVER BLOCKLIST =====
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\CI\Config" `
    -Name "VulnerableDriverBlocklistEnable" -Type DWord -Value 1

# ===== VERIFIKÁCIA PO REŠTARTE =====
# Spustite po reštarte systému
msinfo32  # Pozrite sekciu "Virtualization-based security"
Get-ComputerInfo | Select-Object DeviceGuard*

6. Sieťová bezpečnosť (Network Protection)

6.1 Microsoft Defender Firewall

Windows Defender Firewall je stavový firewall integrovaný do Windows 11. Poskytuje ochranu pred neoprávneným sieťovým prístupom a umožňuje granulárnu kontrolu prichádzajúcej a odchádzajúcej komunikácie.

Profil Stav Inbound Outbound Logovanie Použitie
Domain Zapnutý Block Allow Áno (dropped) Zariadenie pripojené do AD domény
Private Zapnutý Block Allow Áno (dropped) Domáca/firemná sieť označená ako trusted
Public Zapnutý Block Allow Áno (all) Verejná Wi-Fi, hotely, letiská

6.2 SMB Hardening

Server Message Block (SMB) je protokol pre zdieľanie súborov a tlačiarní. SMBv1 je zastaraný a má kritické zraniteľnosti (WannaCry, NotPetya).

CVE História SMBv1:

6.3 Scenáre sieťových útokov

Scenár 1: LLMNR/NBT-NS Poisoning (Responder)

Popis: Útočník v sieti zachytáva LLMNR broadcast dotazy a odpovedá ako požadovaný server, čím získava NTLMv2 hashe prihlásených používateľov.

Priebeh:
1. Útočník spúšťa Responder na svojom stroji
2. Používateľ zadá \\srevr\share (preklep)
3. Windows vysiela LLMNR broadcast "kto je srevr?"
4. Responder odpovie a zachytí NTLMv2 hash
5. Offline cracking alebo relay útok

Mitigácia: EnableMulticast = 0, NetBIOS off

MITRE ATT&CK: T1557.001 - LLMNR/NBT-NS Poisoning

Scenár 2: SMB Relay Attack

Popis: Útočník presmeruje NTLM autentifikáciu od obete na iný server, získavajúc prístup s oprávneniami obete bez znalosti hesla.

Priebeh:
1. Útočník zachytí NTLM auth (Responder, phishing link)
2. Relay na SMB port cieľového servera
3. Autentifikácia prebehne s credentials obete
4. Útočník získa prístup k súborom/admin share

Mitigácia: SMB Signing Required, EPA (Extended Protection for Auth)

MITRE ATT&CK: T1557.001 - LLMNR/NBT-NS Poisoning and SMB Relay

Scenár 3: EternalBlue (MS17-010) Exploitation

Popis: Zneužitie kritickej zraniteľnosti v SMBv1 pre remote code execution bez autentifikácie. Použité v najväčších ransomware útokoch (WannaCry, NotPetya).

Priebeh:
1. Sken siete na port 445 s povoleným SMBv1
2. Exploit MS17-010 (buffer overflow)
3. Payload: Meterpreter, ransomware, backdoor
4. SYSTEM privilégiá bez autentifikácie

Mitigácia: Disable SMBv1, patch MS17-010

MITRE ATT&CK: T1210 - Exploitation of Remote Services

6.4 PowerShell konfigurácia sieťovej bezpečnosti

# ===== KONFIGURÁCIA FIREWALL PROFILOV =====
# Zapnutie firewallu pre všetky profily
Set-NetFirewallProfile -Profile Domain,Public,Private -Enabled True

# Nastavenie default akcie - blokovať prichádzajúce, povoliť odchádzajúce
Set-NetFirewallProfile -Profile Domain,Public,Private `
    -DefaultInboundAction Block `
    -DefaultOutboundAction Allow

# Zapnutie logovania pre všetky profily
Set-NetFirewallProfile -Profile Domain,Public,Private `
    -LogFileName "%SystemRoot%\System32\LogFiles\Firewall\pfirewall.log" `
    -LogMaxSizeKilobytes 32767 `
    -LogBlocked True `
    -LogAllowed False

# ===== SMB HARDENING =====
# Zakázanie SMBv1 (KRITICKÉ!)
Disable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol -NoRestart
Set-SmbServerConfiguration -EnableSMB1Protocol $false -Force

# Overenie stavu SMBv1
Get-SmbServerConfiguration | Select-Object EnableSMB1Protocol

# Zakázanie SMB Guest logons
Set-SmbClientConfiguration -EnableSecuritySignature $true -Force
Set-SmbServerConfiguration -EnableSecuritySignature $true -Force
Set-SmbServerConfiguration -RequireSecuritySignature $true -Force

# ===== ZAKÁZANIE LLMNR A NETBIOS =====
# Zakázanie LLMNR (Link-Local Multicast Name Resolution)
New-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\DNSClient" -Force
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\DNSClient" `
    -Name "EnableMulticast" -Type DWord -Value 0

# ===== VERIFIKÁCIA FIREWALL STAVU =====
Get-NetFirewallProfile | Select-Object Name, Enabled, DefaultInboundAction, DefaultOutboundAction
Get-NetFirewallRule | Where-Object {$_.Enabled -eq 'True'} | `
    Select-Object DisplayName, Direction, Action | Format-Table

7. Auditné politiky (Audit Policy Configuration)

7.1 Význam auditovania

Auditné politiky sú základom pre detekciu bezpečnostných incidentov, forenznú analýzu a compliance reporting. Bez správne nastavených audit politík nie je možné efektívne detegovať alebo vyšetrovať bezpečnostné udalosti.

Požiadavky na log storage:

7.2 Audit Subcategories – Detailná konfigurácia

Kategória Success Failure Event IDs MITRE Popis detekcie
Credential Validation Áno Áno 4774, 4775, 4776 T1110 Detekcia brute-force a password spray útokov
User Account Management Áno Áno 4720, 4722, 4725, 4726 T1136 Vytváranie nových účtov (perzistencia)
Security Group Management Áno Nie 4727, 4728, 4729, 4730 T1078 Zmeny v členstvách skupín (privilege escalation)
Logon Events Áno Áno 4624, 4625, 4634, 4647 T1078 Všetky prihlásenia a odhlásenia
Process Creation Áno Nie 4688 T1059 Spúšťané procesy (kritické pre threat hunting)
Sensitive Privilege Use Áno Áno 4673, 4674 T1134 Použitie SeDebug, SeBackup a ďalších citlivých privilégií
System Integrity Áno Áno 4612, 4615, 4618 T1014 Rootkit detekcia, manipulácia so systémom

7.3 Scenáre útokov a detekcia cez audit logy

Scenár 1: Brute-Force Password Attack

Popis: Útočník sa pokúša uhádnuť heslo opakovanými prihlasovacími pokusmi.

Detekcia:
• Event ID 4625 (Failed Logon) - veľké množstvo za krátky čas
• Event ID 4776 (Credential Validation) - NTLM auth failures
• Pattern: 5+ neúspešných pokusov z rovnakej IP za 10 minút

SIEM pravidlo: Alert ak count(4625) > 5 per source IP per 10min

MITRE ATT&CK: T1110 - Brute Force

Scenár 2: Lateral Movement Detection

Popis: Útočník sa šíri v sieti pomocou ukradnutých credentials.

Detekcia:
• Event ID 4624 Type 3 (Network Logon) - z nezvyčajných zdrojov
• Event ID 4648 (Explicit Credential Logon) - runas, PsExec
• Pattern: Admin účet sa prihlasuje na viacero serverov v krátkom čase

IOC: Jeden účet prihlásený na 10+ serverov za hodinu

MITRE ATT&CK: T1021 - Remote Services

Scenár 3: Persistence via Account Creation

Popis: Útočník vytvára backdoor účet pre trvalý prístup.

Detekcia:
• Event ID 4720 (User Account Created)
• Event ID 4728 (Member Added to Security-Enabled Group)
• Pattern: Nový účet pridaný do Administrators mimo pracovnej doby

Alert: Akákoľvek zmena v Domain Admins/Enterprise Admins

MITRE ATT&CK: T1136 - Create Account

7.4 PowerShell/Auditpol konfigurácia auditovania

# ===== ZOBRAZENIE AKTUÁLNEJ AUDIT KONFIGURÁCIE =====
auditpol /get /category:*

# ===== NASTAVENIE AUDIT POLITÍK =====
# Account Logon
auditpol /set /subcategory:"Credential Validation" /success:enable /failure:enable
auditpol /set /subcategory:"Kerberos Authentication Service" /success:enable /failure:enable
auditpol /set /subcategory:"Kerberos Service Ticket Operations" /success:enable /failure:enable

# Account Management
auditpol /set /subcategory:"User Account Management" /success:enable /failure:enable
auditpol /set /subcategory:"Security Group Management" /success:enable /failure:enable
auditpol /set /subcategory:"Computer Account Management" /success:enable /failure:enable

# Logon/Logoff
auditpol /set /subcategory:"Logon" /success:enable /failure:enable
auditpol /set /subcategory:"Logoff" /success:enable /failure:disable
auditpol /set /subcategory:"Special Logon" /success:enable /failure:enable
auditpol /set /subcategory:"Account Lockout" /success:enable /failure:enable

# Process Tracking (KRITICKÉ pre threat hunting)
auditpol /set /subcategory:"Process Creation" /success:enable /failure:enable
auditpol /set /subcategory:"Process Termination" /success:enable /failure:disable

# Privilege Use
auditpol /set /subcategory:"Sensitive Privilege Use" /success:enable /failure:enable

# System Events
auditpol /set /subcategory:"Security State Change" /success:enable /failure:enable
auditpol /set /subcategory:"Security System Extension" /success:enable /failure:enable
auditpol /set /subcategory:"System Integrity" /success:enable /failure:enable

# ===== ZAPNUTIE COMMAND LINE V PROCESS CREATION EVENTOCH =====
# Kritické pre detekciu škodlivých príkazov!
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\Audit" `
    -Name "ProcessCreationIncludeCmdLine_Enabled" -Type DWord -Value 1

# ===== NASTAVENIE VEĽKOSTI SECURITY LOGU =====
wevtutil sl Security /ms:1073741824  # 1 GB

# ===== VERIFIKÁCIA NASTAVENÍ =====
auditpol /get /category:* | findstr /i "success failure"
Get-WinEvent -LogName Security -MaxEvents 10 | Format-List

8. Interaktívne prihlásenie (Interactive Logon Policy)

8.1 Bezpečnosť prihlasovacieho procesu

Interaktívne prihlásenie je často cieľom útokov zameraných na odcudzenie credentials. Správna konfigurácia minimalizuje riziko credential theft a session hijacking.

Nastavenie Hodnota Risk Popis a zdôvodnenie
Require CTRL+ALT+DEL Enabled High Zabraňuje credential spoofing útokom, kde malvér zobrazuje falošné prihlasovacie okno. CTRL+ALT+DEL je "Secure Attention Sequence", ktorý môže zachytiť iba Windows.
Don't display last username Enabled Medium Útočník nezíska informáciu o platných používateľských menách. Sťažuje username enumeration.
Machine inactivity timeout 900 sekúnd High Automatické uzamknutie po 15 minútach nečinnosti. Chráni pred fyzickým prístupom k neuzamknutému zariadeniu.
Cached logons count 3 Medium Počet domain credentials uložených lokálne pre offline prihlásenie. Nižšia hodnota = menšie riziko offline credential attacks.

8.2 Scenáre útokov na prihlasovací proces

Scenár 1: Fake Login Screen (Credential Spoofing)

Popis: Malvér zobrazí falošné prihlasovacie okno Windows, ktoré vyzerá identicky ako pravé. Používateľ zadá credentials, ktoré sú zachytené útočníkom.

Priebeh:
1. Malvér čaká na uzamknutie alebo odhlásenie
2. Zobrazí fullscreen fake login prompt
3. Používateľ zadá meno a heslo
4. Credentials odoslané útočníkovi
5. Malvér zobrazí chybu a presmeruje na pravé prihlásenie

Mitigácia: CTRL+ALT+DEL Required - túto sekvenciu nemôže malvér zachytiť

MITRE ATT&CK: T1056.002 - GUI Input Capture

Scenár 2: Shoulder Surfing + Unlocked Workstation

Popis: Fyzický útok, kde útočník sleduje zadávanie hesla a čaká na chvíľu, keď používateľ odíde od neuzamknutého počítača.

Priebeh:
1. Útočník sleduje zadanie hesla (shoulder surfing)
2. Čaká, kým používateľ odíde bez uzamknutia
3. Prístup k systému, inštalácia backdoor
4. Exfiltrácia dát, eskalácia privilégií

Mitigácia: Inactivity timeout (≤15 min), security awareness training

MITRE ATT&CK: T1078 - Valid Accounts

Scenár 3: Cached Credentials Offline Attack

Popis: Útočník ukradne laptop a extrahuje cached domain credentials pre offline brute-force útok.

Priebeh:
1. Krádež laptopu alebo HDD
2. Boot z live Linux/offline attack tool
3. Extrakcia SECURITY hive (cached credentials)
4. Offline cracking pomocou hashcat/john
5. Získané heslo = prístup do domény

Mitigácia: CachedLogonsCount = 3 alebo menej, BitLocker encryption

MITRE ATT&CK: T1003.005 - Cached Domain Credentials

8.3 PowerShell konfigurácia interaktívneho prihlásenia

# ===== VYŽADOVANIE CTRL+ALT+DEL =====
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" `
    -Name "DisableCAD" -Type DWord -Value 0

# ===== NEZOBRAZOVAŤ POSLEDNÉ MENO POUŽÍVATEĽA =====
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" `
    -Name "DontDisplayLastUserName" -Type DWord -Value 1

# ===== NASTAVENIE MACHINE INACTIVITY TIMEOUT (15 minút = 900 sekúnd) =====
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" `
    -Name "InactivityTimeoutSecs" -Type DWord -Value 900

# ===== POČET CACHED LOGONS (Odporúčané: 3) =====
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" `
    -Name "CachedLogonsCount" -Type String -Value "3"

# ===== LEGAL NOTICE (Varovné hlásenie pred prihlásením) =====
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" `
    -Name "LegalNoticeCaption" -Type String -Value "POZOR - Súkromný systém"
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" `
    -Name "LegalNoticeText" -Type String -Value "Tento systém je určený len pre autorizovaných používateľov. Všetky aktivity sú monitorované a zaznamenávané."

# ===== ZAKÁZANIE SMART CARD REMOVAL BEHAVIOR =====
# 1 = Lock Workstation (odporúčané)
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" `
    -Name "ScRemoveOption" -Type String -Value "1"

# ===== VERIFIKÁCIA NASTAVENÍ =====
Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" | `
    Select-Object DisableCAD, DontDisplayLastUserName, InactivityTimeoutSecs

9. Microsoft Network Server a sieťový prístup

9.1 Prehľad a význam

Nastavenia sieťového prístupu kontrolujú, ako Windows zdieľa zdroje a umožňuje prístup cez sieť. Nesprávna konfigurácia môže umožniť útočníkom enumerovať používateľov, zdieľania a citlivé informácie bez autentifikácie.

Riziká nesprávnej konfigurácie:

9.2 Konfiguračné nastavenia

Nastavenie Hodnota MITRE ATT&CK Popis útoku, ktorý blokuje
EveryoneIncludesAnonymous = 0 Disabled T1087 - Account Discovery Anonymní používatelia nemôžu pristupovať k zdrojom s Everyone permissions
RestrictAnonymous = 1 Enabled T1087.002 - Domain Account Blokuje anonymnú enumeráciu SAM účtov a zdieľaní
NullSessionShares = empty Empty T1021.002 - SMB/Windows Admin Shares Žiadne zdieľania nie sú prístupné bez autentifikácie
NullSessionPipes = empty Empty T1021.002 - SMB/Windows Admin Shares Žiadne named pipes nie sú prístupné bez autentifikácie

9.3 Scenáre útokov na sieťový prístup

Scenár 1: Null Session Enumeration

Popis: Útočník využíva null session (prázdne credentials) na enumeráciu používateľov, skupín a zdieľaní bez akejkoľvek autentifikácie.

Priebeh:
1. net use \\target\IPC$ "" /user:"" (null session)
2. enum4linux -a target alebo rpcclient -U ""
3. Enumerácia: zoznam používateľov, skupín, shares, password policy
4. Identifikácia admin účtov, slabých hesiel
5. Cielený brute-force alebo password spray

Mitigácia: RestrictAnonymous = 1, NullSessionShares/Pipes = empty

MITRE ATT&CK: T1087 - Account Discovery

Scenár 2: SAM Database Remote Enumeration

Popis: Útočník diaľkovo enumeruje lokálne používateľské účty cez SAM (Security Account Manager) bez prístupu na systém.

Priebeh:
1. Pripojenie cez SMB s akýmikoľvek credentials
2. Dotaz na SAM databázu cez SAMR protokol
3. Získanie zoznamu lokálnych účtov (vrátane admin)
4. Password spraying na získané účty

Mitigácia: RestrictRemoteSAM registry hodnota

MITRE ATT&CK: T1087.001 - Local Account Discovery

Scenár 3: Named Pipe Impersonation

Popis: Útočník zneužíva named pipes na impersonáciu klientov, ktorí sa pripájajú k serveru.

Priebeh:
1. Útočník vytvorí named pipe s atraktívnym názvom
2. Legitimný proces sa pripojí na pipe
3. Útočník volá ImpersonateNamedPipeClient()
4. Získava token klienta (potenciálne SYSTEM)

Mitigácia: NullSessionPipes = empty, SMB signing

MITRE ATT&CK: T1134.001 - Token Impersonation/Theft

9.4 PowerShell konfigurácia sieťového prístupu

# ===== ZAKÁZANIE ANONYMOUS ACCESS =====
# Everyone skupina nebude zahŕňať Anonymous
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa" `
    -Name "EveryoneIncludesAnonymous" -Type DWord -Value 0

# Obmedzenie anonymného prístupu
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa" `
    -Name "RestrictAnonymous" -Type DWord -Value 1

# Zakázanie anonymnej enumerácie SAM účtov
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa" `
    -Name "RestrictAnonymousSAM" -Type DWord -Value 1

# ===== VYČISTENIE NULL SESSION SHARES A PIPES =====
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanManServer\Parameters" `
    -Name "NullSessionShares" -Type MultiString -Value @()

Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanManServer\Parameters" `
    -Name "NullSessionPipes" -Type MultiString -Value @()

# ===== ZAKÁZANIE REMOTE SAM ENUMERATION =====
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa" `
    -Name "RestrictRemoteSAM" -Type String `
    -Value "O:BAG:BAD:(A;;RC;;;BA)"

# ===== SIEŤOVÝ PRÍSTUP - SHARING MODEL =====
# 0 = Classic model (odporúčané pre enterprise)
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa" `
    -Name "ForceGuest" -Type DWord -Value 0

# ===== VERIFIKÁCIA NASTAVENÍ =====
Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa" | `
    Select-Object EveryoneIncludesAnonymous, RestrictAnonymous, RestrictAnonymousSAM
Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanManServer\Parameters" | `
    Select-Object NullSessionShares, NullSessionPipes

10. Shutdown Policy Configuration

10.1 Prehľad a význam

Konfigurácia Shutdown Policy je často prehliadaným, ale dôležitým aspektom fyzickej bezpečnosti systému. Predvolené nastavenie Windows umožňuje komukoľvek s fyzickým prístupom k zariadeniu vypnúť alebo reštartovať systém bez nutnosti autentifikácie – stačí kliknúť na tlačidlo napájania na prihlasovacej obrazovke.

Prečo je to problém: V podnikovom prostredí môže neautorizované vypnutie systému spôsobiť stratu dát, prerušenie kritických procesov, alebo byť prvým krokom v sofistikovanejšom útoku.

10.2 Hrozby a scenáre útokov

Zakázanie vypnutia systému z prihlasovacej obrazovky chráni pred nasledujúcimi hrozbami:

Hrozba Risk Scenár útoku MITRE ATT&CK
Denial of Service (DoS) High Útočník s fyzickým prístupom opakovane vypína kritický server alebo pracovnú stanicu, čím spôsobuje výpadky služieb. V prípade serverov s databázami môže náhle vypnutie spôsobiť poškodenie dát. T1529 (System Shutdown/Reboot)
BitLocker bypass Critical Útočník vypne systém, bootuje z USB (ak nie je zabezpečený BIOS), a pokúša sa o offline útoky na BitLocker kľúče. Pri systémoch s TPM-only konfiguráciou (bez PIN) môže cold boot attack extrahovať šifrovacie kľúče z RAM. T1542.003 (Bootkit)
Boot médium útok Critical Po vypnutí útočník bootuje z live USB/CD, mountuje NTFS partície a modifikuje systémové súbory, pridáva backdoor účty (offline SAM editing), alebo inštaluje rootkit do boot sektora. T1200 (Hardware Additions)
Sabotáž dostupnosti Medium Nespokojný zamestnanec alebo insider threat vypína produkčné systémy pred odchodom z firmy. V kombinácii s fyzickým poškodením môže spôsobiť významné finančné straty. T1485 (Data Destruction)
Prerušenie security procesov High Útočník vypne systém počas bežiaceho antivírusového skenu, forenznnej analýzy, alebo zálohovania. Po reštarte môže byť malvér už aktívny predtým, než sa spustí security software. T1562 (Impair Defenses)
Manipulácia s boot procesom High Vypnutie systému umožňuje útočníkovi vstúpiť do BIOS/UEFI (ak nie je chránený heslom), zmeniť boot poradie, zakázať Secure Boot, alebo modifikovať boot parametre. T1542 (Pre-OS Boot)

10.3 Detailné nastavenia

Nastavenie Hodnota Risk CIS Ref Popis
ShutdownWithoutLogon 0 (Disabled) High 2.3.13.1 Zakáže tlačidlo "Shut down" na prihlasovacej obrazovke. Používatelia musia byť najprv prihlásení, aby mohli vypnúť systém.
ClearPageFileAtShutdown 1 (Enabled) Medium 2.3.11.2 Vymaže obsah pagefile.sys pri vypnutí. Zabraňuje extrakcii citlivých dát (heslá, šifrovacie kľúče) z pagefile po offline prístupe k disku.
ForceShutdown (GPO) Restricted Medium 2.2.21 Obmedzuje právo "Force shutdown from a remote system" len na Administrators. Zabraňuje vzdialenému vypnutiu systému neautorizovanými používateľmi.
Reálny scenár útoku: BitLocker Cold Boot Attack

Fáza 1: Útočník získa fyzický prístup k notebooku s BitLocker šifrovaním (TPM-only, bez PIN).
Fáza 2: Notebook je v sleep mode, útočník ho prebudí na login screen.
Fáza 3: Klikne na "Shut down" → systém sa vypne, ale RAM stále drží šifrovacie kľúče (niekoľko sekúnd).
Fáza 4: Útočník okamžite bootuje z USB s cold boot attack toolom.
Fáza 5: Extrahuje BitLocker kľúče z RAM a dešifruje disk offline.

Mitigácia: Zakázanie shutdown bez prihlásenia + BitLocker s PIN + kratší RAM decay čas (DDR4/DDR5 pomáha).

10.4 Súvisiace nastavenia pre kompletnú ochranu

Fyzická bezpečnosť

  • BIOS/UEFI heslo
  • Zakázanie boot z USB v BIOS
  • Secure Boot enabled
  • Chassis intrusion detection
  • Kensington lock

BitLocker konfigurácia

  • TPM + PIN (nie len TPM)
  • Startup key na USB (pre high-security)
  • Network Unlock pre servery
  • Recovery key v AD/Azure AD
Výnimky a úvahy:

10.5 PowerShell konfigurácia Shutdown Policy

# ===== ZAKÁZANIE SHUTDOWN BEZ PRIHLÁSENIA =====
# Zakázanie shutdown tlačidla na login screen
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" `
    -Name "ShutdownWithoutLogon" -Type DWord -Value 0

# ===== VYČISTENIE VIRTUAL MEMORY PAGEFILE PRI SHUTDOWN =====
# Zvyšuje bezpečnosť - zabraňuje extrakcii dát z pagefile
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" `
    -Name "ClearPageFileAtShutdown" -Type DWord -Value 1

# ===== ZAKÁZANIE HIBERNATE (Ochrana pred hibernation file attacks) =====
# Hibernation file môže obsahovať citlivé dáta vrátane šifrovacích kľúčov
powercfg /hibernate off

# ===== KONFIGURÁCIA POWER BUTTON BEHAVIOR =====
# Zakáže fyzické tlačidlo napájania (ak je systém zamknutý)
# 0 = Do nothing, 1 = Sleep, 2 = Hibernate, 3 = Shut down
powercfg /setacvalueindex SCHEME_CURRENT SUB_BUTTONS PBUTTONACTION 0
powercfg /setdcvalueindex SCHEME_CURRENT SUB_BUTTONS PBUTTONACTION 0
powercfg /setactive SCHEME_CURRENT

# ===== OBMEDZENIE PRÁVA NA REMOTE SHUTDOWN =====
# Toto vyžaduje secedit, ukážka pre audit:
# secedit /export /cfg C:\secpol.cfg
# Upravte "SeRemoteShutdownPrivilege" na obsahovanie len Administrators

# ===== ZAKÁZANIE FAST STARTUP =====
# Fast Startup môže ponechať citlivé dáta v hibernation file
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Power" `
    -Name "HiberbootEnabled" -Type DWord -Value 0

# ===== KERNEL CRASH DUMP KONFIGURÁCIA =====
# Obmedzenie crash dump na minimum (zabraňuje extrakcii credentials)
# 0 = None, 1 = Complete, 2 = Kernel, 3 = Small, 7 = Automatic
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\CrashControl" `
    -Name "CrashDumpEnabled" -Type DWord -Value 3

# ===== VERIFIKÁCIA NASTAVENÍ =====
Write-Host "=== Shutdown Policy Verifikácia ===" -ForegroundColor Cyan
Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" | `
    Select-Object ShutdownWithoutLogon
Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" | `
    Select-Object ClearPageFileAtShutdown
powercfg /hibernate | Write-Host
Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Power" | `
    Select-Object HiberbootEnabled
Verifikácia Shutdown Policy nastavení
  1. Odhláste sa zo systému a overte, že tlačidlo "Shut down" nie je viditeľné na login screen
  2. Skontrolujte gpedit.msc → Computer Configuration → Windows Settings → Security Settings → Local Policies → Security Options → Shutdown: Allow system to be shut down without having to log on
  3. Overte stav hibernácie: powercfg /availablesleepstates
  4. Skontrolujte pagefile nastavenia: wmic pagefile list /format:list

11. Ochrana systémových objektov (System Objects Protection)

11.1 Prehľad a význam

Systémové objekty sú interné štruktúry Windows kernel-u, ktoré umožňujú komunikáciu medzi procesmi a synchronizáciu. Patria sem named pipes, semafory, mutexy, eventy, shared memory sections a handles. Tieto objekty sú kritické pre fungovanie systému, ale pri nesprávnej konfigurácii môžu byť zneužité na privilege escalation alebo inter-process attacks.

Čo je ProtectionMode: Keď je ProtectionMode nastavený na 1, Windows aplikuje prísnejšie predvolené ACL (Access Control Lists) na všetky novovytvorené systémové objekty. Toto zabraňuje nízko-privilegovaným procesom pristupovať k objektom vytvorených vysoko-privilegovanými procesmi.

11.2 Typy systémových objektov a ich riziká

Typ objektu Popis Riziko pri neochránení MITRE ATT&CK
Named Pipes Komunikačný kanál medzi procesmi (lokálne aj sieťovo). Používané mnohými službami (SQL Server, Exchange, atď.) Útočník môže odpočúvať komunikáciu, injektovať dáta, alebo vykonať impersonation attack (získať token iného používateľa) T1570 (Lateral Tool Transfer)
Mutex (Mutant) Synchronizačný objekt zabezpečujúci exkluzívny prístup k zdroju. Často používaný na zabránenie viacnásobného spustenia aplikácie. Malvér môže "ukradnúť" mutex legitímnej aplikácie a zabrániť jej spusteniu, alebo detegovať prítomnosť security nástrojov T1480 (Execution Guardrails)
Semaphore Synchronizačný objekt limitujúci počet súčasných prístupov k zdroju. Resource exhaustion attacks – útočník vyčerpá semafory a spôsobí DoS T1499 (Endpoint DoS)
Event Signalizačný objekt pre koordináciu medzi procesmi/vláknami. Manipulácia s event objektami môže narušiť synchronizáciu kritických procesov T1055 (Process Injection)
Section (Shared Memory) Zdieľaná pamäťová oblasť medzi procesmi. Útočník môže čítať citlivé dáta z pamäte iných procesov alebo injektovať škodlivý kód do zdieľanej sekcie T1055.001 (DLL Injection)
File Handles Referencie na otvorené súbory, sockets, registry kľúče. Handle inheritance attack – child proces zdedí handles rodiča vrátane privilegovaných prístupov T1134 (Access Token Manipulation)
Desktop/Window Station Objekty reprezentujúce používateľské prostredie (desktops, clipboardy). Shatter attack – zasielanie window messages do privilegovaných procesov na vykonanie kódu T1185 (Browser Session Hijacking)

11.3 Scenáre útokov na systémové objekty

Scenár 1: Named Pipe Impersonation Attack

Popis: Útočník vytvorí named pipe s názvom, ktorý legitímna služba očakáva. Keď sa privilegovaný proces pripojí, útočník použije ImpersonateNamedPipeClient() na získanie security tokenu klienta.

Príklad: Služba beží ako SYSTEM a pripojí sa na pipe \\.\pipe\evilpipe. Útočník získa SYSTEM token a môže spúšťať príkazy s najvyššími oprávneniami.

Nástroje: Metasploit getsystem, PrintSpoofer, Juicy Potato
Mitigácia: ProtectionMode = 1, audit pipe permissions, network segmentation

Scenár 2: Shared Memory Code Injection

Popis: Útočník identifikuje shared memory sekciu používanú legitímnym procesom. Ak má sekcia slabé oprávnenia, útočník môže zapísať shellcode do zdieľanej pamäte a počkať, kým cieľový proces kód vykoná.

Príklad: Antivírus používa shared memory pre komunikáciu medzi GUI a službou. Útočník prepíše dáta v sekcii škodlivým kódom.

Mitigácia: ProtectionMode = 1, CFG (Control Flow Guard), ACG (Arbitrary Code Guard)

Scenár 3: Handle Duplication Attack

Popis: Útočník s debug privileges môže duplikovať handle z iného procesu pomocou DuplicateHandle(). Ak získa handle na privilegovaný objekt (napr. process handle na LSASS), môže extrahovať credentials.

Mitigácia: Obmedziť SeDebugPrivilege, LSA Protection (PPL), Credential Guard

11.4 Detailné nastavenia

Nastavenie Hodnota Risk CIS Ref Popis
ProtectionMode 1 (Enabled) High 2.3.15.1 Posilňuje predvolené oprávnenia pre systémové objekty. Zabraňuje nízko-privilegovaným procesom pristupovať k objektom vytvorených systémovými službami.
ObCaseInsensitive 1 (Enabled) Medium 2.3.15.2 Vynucuje case-insensitive porovnávanie názvov objektov. Zabraňuje obchádzaniu ACL pomocou rôznych veľkostí písmen.
GlobalFlag Configured Medium N/A Heap protection flags (heap verification, stack traces). Pomáha detegovať heap corruption exploits.
FilterAdministratorToken 1 (Enabled) High 2.3.17.1 Filtruje admin token aj pre built-in Administrator účet. Zabraňuje privilege escalation cez UAC bypass.
EnableSecureUIAPath 1 (Enabled) Medium 2.3.17.4 Vyžaduje, aby UIA aplikácie boli spustené zo secure locations. Mitiguje UI automation attacks.

11.5 Súvisiace ochranné mechanizmy

Kernel-level ochrana

  • SMEP – Supervisor Mode Execution Prevention
  • SMAP – Supervisor Mode Access Prevention
  • CFI – Control Flow Integrity
  • kASLR – Kernel Address Space Layout Randomization
  • Secure Kernel – VBS izolovaný kernel

Process-level ochrana

  • ACG – Arbitrary Code Guard
  • CFG – Control Flow Guard
  • DEP – Data Execution Prevention
  • ASLR – Address Space Layout Randomization
  • CIG – Code Integrity Guard
Kompatibilita:

11.6 PowerShell konfigurácia systémových objektov

# ===== ZAPNUTIE PROTECTION MODE PRE SYSTÉMOVÉ OBJEKTY =====
# Posilňuje predvolené ACL pre všetky systémové objekty
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager" `
    -Name "ProtectionMode" -Type DWord -Value 1

# ===== CASE-INSENSITIVE OBJECT NAMES =====
# Zabraňuje obchádzaniu ACL pomocou rôznych veľkostí písmen
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\kernel" `
    -Name "ObCaseInsensitive" -Type DWord -Value 1

# ===== FILTER ADMINISTRATOR TOKEN =====
# Aplikuje UAC filtrovanie aj na built-in Administrator
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" `
    -Name "FilterAdministratorToken" -Type DWord -Value 1

# ===== SECURE UIA PATH =====
# Vyžaduje spustenie UIA aplikácií zo secure locations
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" `
    -Name "EnableSecureUIAPaths" -Type DWord -Value 1

# ===== ZAKÁZANIE ANONYMOUS PIPE ACCESS =====
# Obmedzuje anonymný prístup k named pipes
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanManServer\Parameters" `
    -Name "RestrictNullSessAccess" -Type DWord -Value 1

# ===== HEAP PROTECTION (GlobalFlag) =====
# Zapnutie heap verification pre detekciu corruption
# POZOR: Môže ovplyvniť výkon, používajte len pre debugging
# Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager" `
#     -Name "GlobalFlag" -Type DWord -Value 0x02000000

# ===== MANDATORY ASLR =====
# Vynúti ASLR pre všetky procesy (Windows 10+)
Set-ProcessMitigation -System -Enable ForceRelocateImages

# ===== AUDIT OBJECT ACCESS =====
# Zapnutie auditovania prístupu k objektom
auditpol /set /subcategory:"Kernel Object" /success:enable /failure:enable
auditpol /set /subcategory:"Handle Manipulation" /success:enable /failure:enable

# ===== VERIFIKÁCIA NASTAVENÍ =====
Write-Host "=== System Objects Protection Verifikácia ===" -ForegroundColor Cyan
Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager" | `
    Select-Object ProtectionMode
Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" | `
    Select-Object FilterAdministratorToken, EnableSecureUIAPaths

# Zobrazenie process mitigation nastavení
Get-ProcessMitigation -System | Format-List
Verifikácia System Objects Protection
  1. Overte ProtectionMode: reg query "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager" /v ProtectionMode
  2. Skontrolujte process mitigations: Get-ProcessMitigation -System
  3. Použite Process Monitor na sledovanie object access denials
  4. Auditujte Event ID 4656 (Handle Request) v Security logu
  5. Testujte kritické aplikácie po zmene nastavení
Užitočné nástroje pre analýzu:

12. Windows Firewall – Detailná konfigurácia

12.1 Prehľad a architektúra

Windows Defender Firewall je stavový (stateful) firewall integrovaný do Windows od verzie Vista. Poskytuje filtráciu sieťovej prevádzky na vrstvách 3 a 4 (IP a TCP/UDP), s podporou pre aplikačné pravidlá a IPsec integráciu. Na rozdiel od perimetrových firewallov, Windows Firewall chráni endpoint priamo, čo je kritické v moderných "zero trust" architektúrach.

Prečo je host-based firewall dôležitý:

12.2 Firewall profily

Windows Firewall používa tri profily, ktoré sa automaticky aktivujú podľa typu siete. Každý profil môže mať vlastné nastavenia pravidiel a logovania.

Profil Aktivácia Odporúčaná politika Typické použitie
Domain Automaticky keď je PC pripojený do AD domény a môže kontaktovať DC Inbound: Block
Outbound: Allow
Firemná sieť, kancelária, VPN do corporate
Private Používateľ manuálne označí sieť ako "Private/Home" Inbound: Block
Outbound: Allow
Domáca sieť, dôveryhodné prostredie
Public Default pre nové siete, verejné Wi-Fi Inbound: Block (strict)
Outbound: Allow
Kaviarne, letiská, hotely, nedôveryhodné siete
Bezpečnostné upozornenie: Nikdy nevypínajte firewall pre žiadny profil! Aj v "bezpečnej" firemnej sieti môže byť kompromitované zariadenie, ktoré vykonáva lateral movement. Princíp "castle and moat" je zastaraný – používajte Zero Trust.

12.3 Kritické porty a služby

Nasledujúce porty sú najčastejšie cieľom útokov a mali by byť striktne kontrolované:

Port Služba Risk Známe útoky/CVE Odporúčanie
445/TCP SMB (Server Message Block) Critical EternalBlue (CVE-2017-0144), WannaCry, NotPetya, SMBGhost (CVE-2020-0796) Blokovať na Public, obmedziť na Domain/Private
3389/TCP RDP (Remote Desktop) Critical BlueKeep (CVE-2019-0708), brute-force, credential stuffing Blokovať na Public, NLA required, MFA
137-139 NetBIOS High Name spoofing, session hijacking, enumeration Blokovať všade, zakázať NetBIOS over TCP/IP
5985-5986 WinRM (PowerShell Remoting) High Lateral movement, remote code execution Blokovať na Public, JEA na Domain
135/TCP RPC Endpoint Mapper High DCOM exploits, WMI lateral movement Blokovať na Public
1433/TCP MS SQL Server High SQL injection, brute-force SA account Blokovať všade okrem potrebných serverov
23/TCP Telnet Critical Clear-text credentials, MitM Blokovať všade, používať SSH
21/TCP FTP High Clear-text credentials, bounce attacks Blokovať, používať SFTP/FTPS

12.4 Scenáre útokov a firewall ochrana

Scenár 1: Lateral Movement cez SMB (EternalBlue style)

Útok: Útočník kompromituje jednu pracovnú stanicu (napr. cez phishing). Pomocou SMB exploitu alebo pass-the-hash sa pokúša šíriť na ďalšie zariadenia v sieti.

Bez firewallu: Útočník sa voľne šíri po celej internej sieti.
S firewallom: SMB je blokovaný medzi workstations, útočník je izolovaný.

MITRE ATT&CK: T1021.002 (SMB/Windows Admin Shares)
Pravidlo: Blokovať SMB (445) medzi workstations, povoliť len na file servery

Scenár 2: RDP Brute-Force z internetu

Útok: Automatizované nástroje skenujú internet na otvorený port 3389. Po nájdení vykonávajú brute-force útoky na bežné používateľské mená.

Štatistika: Priemerný Windows server s RDP na internete dostane 150,000+ pokusov o prihlásenie denne.

MITRE ATT&CK: T1110 (Brute Force)
Pravidlo: Blokovať RDP na Public profile, používať VPN alebo RD Gateway

Scenár 3: Command & Control (C2) Outbound

Útok: Malvér na infikovanom PC sa pokúša nadviazať spojenie s C2 serverom na neštandardných portoch (4444, 8080, 443 na podozrivé domény).

Ochrana: Outbound filtering na povolené porty a aplikácie, DNS filtering.

MITRE ATT&CK: T1071 (Application Layer Protocol)
Pravidlo: Blokovať outbound na nepovolené porty, monitorovať anomálie

12.5 Detailné nastavenia profilov

Nastavenie Domain Private Public CIS Ref
Firewall State On On On 9.1.1, 9.2.1, 9.3.1
Inbound Connections Block Block Block (All) 9.1.2, 9.2.2, 9.3.2
Outbound Connections Allow Allow Allow* 9.1.3, 9.2.3, 9.3.3
Log Dropped Packets Yes Yes Yes 9.1.7, 9.2.7, 9.3.7
Log Successful Connections Optional Optional Yes 9.1.8, 9.2.8, 9.3.8
Log File Size 16384 KB 16384 KB 32767 KB 9.1.6, 9.2.6, 9.3.6
Display Notification No No No 9.1.4, 9.2.4, 9.3.4
Apply Local Rules Yes (GPO) Yes No 9.1.5, 9.2.5, 9.3.5

* Pre high-security prostredia zvážte outbound filtering (default deny) s explicitným povolením aplikácií.

12.6 Outbound Filtering (Advanced)

Kedy použiť outbound filtering:

Výhody outbound filtering

  • Blokuje C2 komunikáciu malvéru
  • Zabraňuje data exfiltration
  • Deteguje kompromitované systémy
  • Obmedzuje shadow IT

Nevýhody a výzvy

  • Komplexná správa pravidiel
  • Môže narušiť legitímne aplikácie
  • Vyžaduje whitelist maintenance
  • Používateľské sťažnosti

12.7 IPsec integrácia

Windows Firewall môže vyžadovať IPsec autentifikáciu pre vybrané spojenia, čím sa pridáva ďalšia vrstva zabezpečenia (authentication + encryption).

Scenár Popis Použitie
Server Isolation Servery akceptujú len IPsec-authenticated spojenia Kritické servery (DC, SQL, File)
Domain Isolation Všetky domain-joined PC musia používať IPsec High-security enterprise siete
Connection Security Rules Vyžaduje autentifikáciu pre špecifické porty/IP Selektívna ochrana kritických služieb

12.8 PowerShell konfigurácia Windows Firewall

# ===== ZAPNUTIE FIREWALLU PRE VŠETKY PROFILY =====
Set-NetFirewallProfile -Profile Domain,Public,Private -Enabled True

# ===== NASTAVENIE DEFAULT AKCIE =====
Set-NetFirewallProfile -Profile Domain,Public,Private `
    -DefaultInboundAction Block `
    -DefaultOutboundAction Allow `
    -NotifyOnListen False `
    -AllowUnicastResponseToMulticast False

# ===== PRÍSNEJŠIE NASTAVENIA PRE PUBLIC PROFIL =====
Set-NetFirewallProfile -Profile Public `
    -AllowLocalFirewallRules False `
    -AllowLocalIPsecRules False

# ===== ZAPNUTIE LOGOVANIA PRE VŠETKY PROFILY =====
Set-NetFirewallProfile -Profile Domain `
    -LogFileName "%SystemRoot%\System32\LogFiles\Firewall\domain.log" `
    -LogMaxSizeKilobytes 16384 `
    -LogBlocked True `
    -LogAllowed False

Set-NetFirewallProfile -Profile Private `
    -LogFileName "%SystemRoot%\System32\LogFiles\Firewall\private.log" `
    -LogMaxSizeKilobytes 16384 `
    -LogBlocked True `
    -LogAllowed False

Set-NetFirewallProfile -Profile Public `
    -LogFileName "%SystemRoot%\System32\LogFiles\Firewall\public.log" `
    -LogMaxSizeKilobytes 32767 `
    -LogBlocked True `
    -LogAllowed True

# ===== BLOKOVANIE KRITICKÝCH PORTOV NA PUBLIC =====
# SMB (445) - EternalBlue, WannaCry
New-NetFirewallRule -DisplayName "Block SMB Inbound Public" `
    -Direction Inbound -Protocol TCP -LocalPort 445 `
    -Action Block -Profile Public -Enabled True

# RDP (3389) - BlueKeep, brute-force
New-NetFirewallRule -DisplayName "Block RDP Inbound Public" `
    -Direction Inbound -Protocol TCP -LocalPort 3389 `
    -Action Block -Profile Public -Enabled True

# NetBIOS (137-139) - enumeration, spoofing
New-NetFirewallRule -DisplayName "Block NetBIOS TCP Public" `
    -Direction Inbound -Protocol TCP -LocalPort 137-139 `
    -Action Block -Profile Public -Enabled True
New-NetFirewallRule -DisplayName "Block NetBIOS UDP Public" `
    -Direction Inbound -Protocol UDP -LocalPort 137-139 `
    -Action Block -Profile Public -Enabled True

# WinRM (5985-5986) - lateral movement
New-NetFirewallRule -DisplayName "Block WinRM Public" `
    -Direction Inbound -Protocol TCP -LocalPort 5985,5986 `
    -Action Block -Profile Public -Enabled True

# RPC (135) - DCOM exploits
New-NetFirewallRule -DisplayName "Block RPC Public" `
    -Direction Inbound -Protocol TCP -LocalPort 135 `
    -Action Block -Profile Public -Enabled True

# ===== BLOKOVANIE LATERAL MOVEMENT NA DOMAIN/PRIVATE =====
# Blokuje SMB medzi workstations (povoľte výnimky pre file servery)
New-NetFirewallRule -DisplayName "Block Workstation SMB" `
    -Direction Inbound -Protocol TCP -LocalPort 445 `
    -Action Block -Profile Domain,Private `
    -RemoteAddress 10.0.0.0/8,172.16.0.0/12,192.168.0.0/16 `
    -Enabled False  # Zapnite po testovaní a pridaní výnimiek

# ===== POVOLENIE POTREBNÝCH SLUŽIEB =====
# RDP len z admin VLAN
New-NetFirewallRule -DisplayName "Allow RDP from Admin VLAN" `
    -Direction Inbound -Protocol TCP -LocalPort 3389 `
    -Action Allow -Profile Domain,Private `
    -RemoteAddress 10.10.10.0/24 -Enabled True

# Príklad: Povolenie ICMP ping pre diagnostiku
New-NetFirewallRule -DisplayName "Allow ICMPv4 Echo Request" `
    -Direction Inbound -Protocol ICMPv4 -IcmpType 8 `
    -Action Allow -Profile Domain,Private -Enabled True

# ===== OUTBOUND RULES (VOLITEĽNÉ - HIGH SECURITY) =====
# Blokuje C2 na bežných portoch ak nie je legitímna aplikácia
# New-NetFirewallRule -DisplayName "Block Outbound 4444" `
#     -Direction Outbound -Protocol TCP -RemotePort 4444 `
#     -Action Block -Profile Domain,Private,Public -Enabled True

# ===== IPSEC CONNECTION SECURITY RULE (ADVANCED) =====
# Vyžaduje autentifikáciu pre SMB pripojenia
# New-NetIPsecRule -DisplayName "Require Auth for SMB" `
#     -InboundSecurity Require -OutboundSecurity Request `
#     -Protocol TCP -LocalPort 445

# ===== VERIFIKÁCIA KONFIGURÁCIE =====
Write-Host "=== Firewall Profile Status ===" -ForegroundColor Cyan
Get-NetFirewallProfile | Format-Table Name, Enabled, DefaultInboundAction, DefaultOutboundAction, LogFileName

Write-Host "`n=== Active Inbound Rules (Block) ===" -ForegroundColor Cyan
Get-NetFirewallRule | Where-Object {$_.Enabled -eq 'True' -and $_.Direction -eq 'Inbound' -and $_.Action -eq 'Block'} | `
    Select-Object DisplayName, Profile | Format-Table

Write-Host "`n=== Listening Ports ===" -ForegroundColor Cyan
Get-NetTCPConnection -State Listen | Select-Object LocalPort, OwningProcess | Sort-Object LocalPort -Unique
Verifikácia Windows Firewall konfigurácie
  1. Skontrolujte stav profilov: Get-NetFirewallProfile | Format-Table Name, Enabled
  2. Overte logy: Get-Content "$env:SystemRoot\System32\LogFiles\Firewall\pfirewall.log" -Tail 50
  3. Testujte blokované porty: Test-NetConnection -ComputerName localhost -Port 445
  4. Skontrolujte aktívne pravidlá: Get-NetFirewallRule | Where-Object Enabled -eq True | Measure-Object
  5. Použite wf.msc (Windows Firewall with Advanced Security) pre GUI prehľad
Monitoring a SIEM integrácia:
Best Practices súhrn:

13. GPO Administrative Templates (Kompletný Hardening)

13.1 Prehľad a význam

Group Policy Administrative Templates (ADMX/ADML) sú najsilnejším nástrojom pre centralizovanú správu a hardening Windows systémov. Umožňujú konfigurovať stovky bezpečnostných nastavení prostredníctvom registry hodnôt bez nutnosti manuálnej úpravy.

Prečo GPO Administrative Templates:

13.2 Kategórie GPO nastavení a ich hrozby

Kategória Počet nastavení Hlavná hrozba MITRE ATT&CK Priorita
Privacy/Telemetria 15+ Data exfiltration, surveillance T1119 - Automated Collection Medium
Autentifikácia 20+ Credential theft, unauthorized access T1003 - OS Credential Dumping Critical
TCP/IP Stack 10+ Network attacks, MITM, spoofing T1557 - Adversary-in-the-Middle High
DLL Search Order 5+ Code injection, privilege escalation T1574.001 - DLL Search Order Hijacking Critical
Name Resolution 5+ Poisoning attacks, credential relay T1557.001 - LLMNR/NBT-NS Poisoning Critical

13.3 Privacy a telemetria

Nastavenie Hodnota Risk Zdôvodnenie
NoLockScreenCamera 1 Medium Zabraňuje neautorizovanému prístupu ku kamere z lock screen
NoLockScreenSlideshow 1 Low Predchádza úniku obrazových informácií na lock screen
AllowOnlineSpeechRecognition 0 Medium Žiadne audio dáta neodchádzajú do cloudu

13.4 Protokoly a autentifikácia

Nastavenie Hodnota Risk CVE/Útok
SMB1 = 0 Disabled Critical CVE-2017-0144 (EternalBlue), WannaCry
UseLogonCredential (WDigest) = 0 Disabled Critical Mimikatz clear-text credential extraction
AutoAdminLogon = 0 Disabled High Credentials uložené v registry v clear text

13.5 TCP/IP Stack Hardening (MSS Settings)

Parameter Hodnota Útok, ktorý mitiguje
DisableIPSourceRouting 2 (Highest) IP source routing spoofing attacks
EnableICMPRedirect 0 ICMP redirect attacks na manipuláciu routing tables
SafeDllSearchMode 1 DLL search order hijacking
EnableMulticast (DNS) 0 LLMNR/mDNS poisoning (Responder attacks)

13.6 PowerShell konfigurácia GPO nastavení

# ===== PRIVACY A TELEMETRIA =====
# Zakázanie kamery na lock screen
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Personalization" `
    -Name "NoLockScreenCamera" -Type DWord -Value 1

# Zakázanie slideshow na lock screen
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Personalization" `
    -Name "NoLockScreenSlideshow" -Type DWord -Value 1

# Zakázanie online rozpoznávania reči
New-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\InputPersonalization" -Force
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\InputPersonalization" `
    -Name "AllowInputPersonalization" -Type DWord -Value 0

# ===== PROTOKOLY A AUTENTIFIKÁCIA =====
# Zakázanie WDigest (clear-text credentials)
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest" `
    -Name "UseLogonCredential" -Type DWord -Value 0

# Zakázanie automatického prihlásenia
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" `
    -Name "AutoAdminLogon" -Type String -Value "0"

# ===== TCP/IP STACK HARDENING =====
# Zakázanie IP Source Routing
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" `
    -Name "DisableIPSourceRouting" -Type DWord -Value 2
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters" `
    -Name "DisableIPSourceRouting" -Type DWord -Value 2

# Zakázanie ICMP Redirect
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" `
    -Name "EnableICMPRedirect" -Type DWord -Value 0

# Safe DLL Search Mode
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager" `
    -Name "SafeDllSearchMode" -Type DWord -Value 1

# Zakázanie LLMNR
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\DNSClient" `
    -Name "EnableMulticast" -Type DWord -Value 0

# Zakázanie NetBIOS over TCP/IP (pre všetky sieťové adaptéry)
$adapters = Get-WmiObject Win32_NetworkAdapterConfiguration | Where-Object {$_.IPEnabled}
foreach ($adapter in $adapters) {
    $adapter.SetTcpipNetbios(2)  # 2 = Disabled
}

# ===== VERIFIKÁCIA NASTAVENÍ =====
Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest" | `
    Select-Object UseLogonCredential
Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" | `
    Select-Object DisableIPSourceRouting, EnableICMPRedirect

13.7 Scenáre útokov súvisiace s GPO nastaveniami

Scenár 1: Responder LLMNR/NBT-NS Poisoning Attack

Popis: Útočník v sieti spúšťa nástroj Responder, ktorý odpovedá na LLMNR a NetBIOS broadcast dotazy. Keď používateľ zadá neexistujúci hostname, systém ho vysiela ako broadcast a útočník odpovie ako legitímny server, zachytávajúc pritom NTLM credentials.

Priebeh útoku:
1. Útočník spúšťa responder -I eth0 -wrf na svojom stroji v sieti
2. Používateľ omylom zadá \\servr\share (preklep)
3. Windows vysiela LLMNR dotaz "kto je servr?"
4. Responder odpovie "ja som servr"
5. Windows pošle NTLMv2 hash útočníkovi
6. Útočník crackuje hash offline pomocou hashcat

Mitigácia: EnableMulticast = 0 (LLMNR), NetBIOS disabled

MITRE ATT&CK: T1557.001 - LLMNR/NBT-NS Poisoning and SMB Relay

Scenár 2: DLL Search Order Hijacking

Popis: Útočník umiestni škodlivú DLL do adresára, ktorý je v search path pred legitímnym systémovým adresárom. Keď aplikácia načíta DLL bez špecifikácie plnej cesty, načíta sa škodlivá verzia namiesto legitímnej.

Príklad útoku:
1. Útočník identifikuje aplikáciu, ktorá načíta version.dll
2. Umiestni škodlivú version.dll do adresára aplikácie
3. Aplikácia hľadá DLL: (1) adresár aplikácie, (2) system32, (3) system, (4) windows, (5) PATH
4. Bez SafeDllSearchMode sa current directory prehľadáva pred systémovými adresármi
5. Škodlivá DLL sa načíta s privilégiami aplikácie

Mitigácia: SafeDllSearchMode = 1

MITRE ATT&CK: T1574.001 - Hijack Execution Flow: DLL Search Order Hijacking

Scenár 3: ICMP Redirect Attack

Popis: Útočník posiela falošné ICMP redirect pakety, ktoré manipulujú routing tabuľky obete a presmerúvajú sieťovú prevádzku cez útočníkov stroj.

Priebeh:
1. Útočník identifikuje default gateway obete (napr. 192.168.1.1)
2. Posiela ICMP Type 5 (Redirect) pakety predstierajúc, že je gateway
3. Pakety hovoria: "pre cieľ X.X.X.X použi ako gateway môj stroj"
4. Obeť aktualizuje routing tabuľku
5. Všetka prevádzka pre daný cieľ ide cez útočníka

Mitigácia: EnableICMPRedirect = 0

MITRE ATT&CK: T1557 - Adversary-in-the-Middle

Scenár 4: WDigest Credential Extraction (Mimikatz)

Popis: Ak je WDigest povolený, heslo používateľa je uložené v pamäti LSASS v reverzibilnej forme. Útočník s admin prístupom môže použiť Mimikatz na extrahovanie hesiel v čitateľnej forme.

Priebeh:
1. Útočník získa lokálny admin prístup (phishing, exploit)
2. Spúšťa mimikatz.exe "privilege::debug" "sekurlsa::wdigest"
3. Mimikatz číta pamäť LSASS procesu
4. Ak UseLogonCredential = 1, heslá sú v čitateľnej forme
5. Útočník má clear-text credentials všetkých prihlásených používateľov

Mitigácia: UseLogonCredential = 0

MITRE ATT&CK: T1003.001 - OS Credential Dumping: LSASS Memory

13.8 CIS Benchmark referencie

Nastavenie CIS Control ID Level Popis
WDigest UseLogonCredential 18.3.6 L1 WDigest Authentication (disabling may require KB2871997)
SafeDllSearchMode 18.4.9 L1 MSS: SafeDllSearchMode Enable Safe DLL search mode
DisableIPSourceRouting 18.4.5 L1 MSS: DisableIPSourceRouting IP source routing protection
EnableICMPRedirect 18.4.6 L1 MSS: EnableICMPRedirect Allow ICMP redirects
EnableMulticast (LLMNR) 18.5.4.1 L1 Turn off multicast name resolution (LLMNR)
NoLockScreenCamera 18.9.12.1 L1 Prevent enabling lock screen camera
NoLockScreenSlideshow 18.9.12.2 L1 Prevent enabling lock screen slide show

13.9 Rozšírené GPO nastavenia pre enterprise prostredie

Kategória Nastavenie GPO Cesta Hodnota Účel
Credentials Restricted Admin Mode Computer\Administrative Templates\System\Credentials Delegation Enabled Pass-the-Hash mitigation pre RDP
Credentials Remote host allows delegation Computer\Administrative Templates\System\Credentials Delegation Require Remote Credential Guard Credential isolation pre RDP
Windows Search Allow indexing of encrypted files Computer\Administrative Templates\Windows Components\Search Disabled Prevencia úniku dát z encrypted files
Cloud Content Turn off cloud consumer features Computer\Administrative Templates\Windows Components\Cloud Content Enabled Zníženie attack surface, privacy
OneDrive Prevent OneDrive usage for file storage Computer\Administrative Templates\Windows Components\OneDrive Enabled Prevencia data leakage do cloudu
BitLocker Require additional authentication at startup Computer\Administrative Templates\Windows Components\BitLocker Enabled (Require TPM + PIN) Cold boot attack prevention

13.10 Diagnostika a troubleshooting GPO

# ===== GPO DIAGNOSTIKA A VERIFIKÁCIA =====

# Zobrazenie všetkých aplikovaných GPO
gpresult /r

# Detailný report do HTML
gpresult /h C:\GPOReport.html

# Kontrola konkrétnych registry hodnôt
# Privacy
Get-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Personalization" -ErrorAction SilentlyContinue

# LLMNR
Get-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\DNSClient" -Name "EnableMulticast" -ErrorAction SilentlyContinue

# TCP/IP Hardening
Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" | `
    Select-Object DisableIPSourceRouting, EnableICMPRedirect, PerformRouterDiscovery

# WDigest
Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest" -Name "UseLogonCredential"

# DLL Search Mode
Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager" -Name "SafeDllSearchMode"

# NetBIOS stav pre všetky adaptéry
Get-WmiObject Win32_NetworkAdapterConfiguration |
    Where-Object {$_.IPEnabled} |
    Select-Object Description, TcpipNetbiosOptions

# ===== FORCE GPO UPDATE =====
gpupdate /force

# ===== COMPLIANCE AUDIT =====
# Export všetkých relevantných nastavení
$auditPath = "C:\SecurityAudit"
New-Item -Path $auditPath -ItemType Directory -Force

# Export registry hodnôt
$regPaths = @(
    "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Personalization",
    "HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\DNSClient",
    "HKLM:\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters",
    "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest",
    "HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager"
)

foreach ($path in $regPaths) {
    $name = $path -replace '.*\\', ''
    reg export $path.Replace("HKLM:\", "HKLM\") "$auditPath\$name.reg" /y 2>$null
}

Write-Host "Audit export dokončený do: $auditPath" -ForegroundColor Green

14. Ochrana RDP a správa poverení (Credentials Protection)

14.1 Prehľad a význam

Remote Desktop Protocol (RDP) je jedným z najčastejšie atakovaných služieb na Windows systémoch. Podľa štatistík je RDP vstupným bodom pre viac ako 50% ransomvérových útokov. Správna konfigurácia RDP a ochrana credentials sú preto kritické pre bezpečnosť organizácie.

Štatistiky útokov na RDP:

14.2 Kritické zraniteľnosti RDP

CVE Názov CVSS Popis Mitigácia
CVE-2019-0708 BlueKeep 9.8 Pre-auth RCE, wormable, nevyžaduje používateľskú interakciu Patch, NLA, firewall
CVE-2019-1181/1182 DejaBlue 9.8 Podobné BlueKeep, postihuje aj novšie Windows verzie Patch, NLA
CVE-2012-0002 MS12-020 9.3 Remote code execution v RDP Patch, NLA
N/A Brute-force High Automatizované hádanie hesiel, credential stuffing Account lockout, MFA, VPN
N/A Pass-the-Hash Critical Použitie ukradnutých NTLM hashov pre RDP autentifikáciu Credential Guard, NLA

14.3 RDP Security Layers

RDP podporuje viacero bezpečnostných vrstiev. Vždy používajte najvyššiu dostupnú úroveň:

Security Layer Hodnota Popis Odporúčanie
RDP Security Layer 0 Natívne RDP šifrovanie (slabé, zastaralé) Nepoužívať
Negotiate 1 Vyjednáva najlepšiu metódu medzi klientom a serverom Akceptovateľné
TLS 1.2 2 Moderné TLS šifrovanie, overenie certifikátom Odporúčané

14.4 Network Level Authentication (NLA)

Čo je NLA: Network Level Authentication vyžaduje, aby sa používateľ autentifikoval pred vytvorením RDP session. Toto významne znižuje attack surface, pretože útočník musí mať platné credentials ešte pred prístupom k RDP službe.

Výhody NLA

  • Blokuje pre-auth exploity (BlueKeep)
  • Znižuje DoS attack surface
  • Šetrí server resources (session až po auth)
  • Podporuje Kerberos autentifikáciu
  • Umožňuje SSO v doménovom prostredí

Bez NLA (riziká)

  • Útočník vidí login screen bez auth
  • Možné DoS útoky na RDP službu
  • Exploity môžu byť spustené pred prihlásením
  • Username enumeration

14.5 Scenáre útokov na RDP

Scenár 1: RDP Brute-Force Attack

Popis: Útočník používa nástroje ako Hydra, NLBrute alebo Crowbar na automatizované hádanie hesiel. Kombinuje slovníkové útoky s credential stuffing (použitie leaked passwords).

Priebeh:
1. Sken internetu na port 3389 (Shodan, Masscan)
2. Identifikácia platných používateľských mien
3. Brute-force s top 1000 passwords + leaked credentials
4. Úspešné prihlásenie → ransomvér deployment

MITRE ATT&CK: T1110.001 (Brute Force: Password Guessing)
Mitigácia: Account lockout, MFA, VPN, fail2ban ekvivalent

Scenár 2: Pass-the-Hash cez RDP

Popis: Útočník získa NTLM hash (napr. cez Mimikatz, dump SAM) a použije ho na RDP prihlásenie bez znalosti hesla v čistom texte.

Nástroje: xfreerdp s /pth, Mimikatz sekurlsa::pth

MITRE ATT&CK: T1550.002 (Pass the Hash)
Mitigácia: Credential Guard, Restricted Admin Mode, Remote Credential Guard

Scenár 3: RDP Session Hijacking

Popis: Útočník s SYSTEM privileges na serveri môže prevziať aktívnu alebo odpojenú RDP session iného používateľa bez znalosti jeho hesla.

Príkaz: tscon [session_id] /dest:console

MITRE ATT&CK: T1563.002 (RDP Hijacking)
Mitigácia: Logovať session zmeny, okamžite ukončovať odpojené sessions

Scenár 4: BlueKeep Exploit (CVE-2019-0708)

Popis: Wormable zraniteľnosť umožňujúca vzdialené spustenie kódu bez autentifikácie. Útočník pošle špeciálne vytvorený packet na port 3389 a získa SYSTEM privileges.

Postihnuté systémy: Windows XP, 7, Server 2003, 2008, 2008 R2

MITRE ATT&CK: T1210 (Exploitation of Remote Services)
Mitigácia: Patch KB4499175, NLA (čiastočná), firewall blokovanie

14.6 Credential Protection mechanizmy

Mechanizmus Popis Ochrana proti Požiadavky
Credential Guard Izoluje NTLM hashe a Kerberos tickets vo VBS kontajneri Mimikatz, Pass-the-Hash, Pass-the-Ticket VBS, TPM 2.0, UEFI
Remote Credential Guard Credentials nikdy neopustia klientsky počítač pri RDP Credential theft na RDP serveri Windows 10+, Kerberos
Restricted Admin Mode RDP prihlásenie bez odoslania credentials na server Credential theft, ale umožňuje PtH Windows 8.1+
LSA Protection (PPL) Chráni LSASS proces pred injection a memory dump Mimikatz, procdump na LSASS Windows 8.1+
Windows Hello for Business Passwordless autentifikácia pomocou PKI/biometrie Password-based útoky Azure AD alebo on-prem PKI

14.7 Detailné nastavenia RDP

Nastavenie Hodnota Risk CIS Ref Popis
Network Level Authentication Enabled Critical 18.9.65.3.9.1 Vyžaduje autentifikáciu pred RDP session
Security Layer TLS (2) High 18.9.65.3.9.2 Používať TLS 1.2 pre šifrovanie
Encryption Level High (3) High 18.9.65.3.9.3 128-bit šifrovanie pre RDP session
Idle Session Timeout 15 minút Medium 18.9.65.3.10.1 Automatické odpojenie neaktívnej session
Disconnected Session Timeout 1 hodina Medium 18.9.65.3.10.2 Ukončenie odpojenej session
Disable Password Saving Enabled High 18.9.65.3.3.1 Zabraňuje ukladaniu hesiel v RDP klientovi
Disable Drive Redirection Enabled Medium 18.9.65.3.3.2 Blokuje mapovanie lokálnych diskov cez RDP

14.8 Best Practices pre RDP deployment

Minimálne požiadavky

  • NLA povinné pre všetky pripojenia
  • TLS 1.2 ako security layer
  • High encryption level
  • Firewall blokovanie z internetu
  • Account lockout policy

Odporúčané (high-security)

  • RDP Gateway s MFA
  • Remote Credential Guard
  • VPN pred RDP prístupom
  • Jump server / PAW architektúra
  • Session recording a monitoring
RDP cez internet – alternatívy:

14.9 PowerShell konfigurácia RDP bezpečnosti

# ===== ZAPNUTIE NETWORK LEVEL AUTHENTICATION (NLA) =====
# KRITICKÉ - chráni pred BlueKeep a podobnými exploitmi
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" `
    -Name "UserAuthentication" -Type DWord -Value 1

# ===== VYŽADOVANIE TLS 1.2 PRE RDP =====
# 0 = RDP Security (slabé), 1 = Negotiate, 2 = TLS (odporúčané)
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" `
    -Name "SecurityLayer" -Type DWord -Value 2

# ===== NASTAVENIE ŠIFROVACEJ ÚROVNE =====
# 1 = Low, 2 = Client Compatible, 3 = High (odporúčané), 4 = FIPS
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" `
    -Name "MinEncryptionLevel" -Type DWord -Value 3

# ===== SESSION TIMEOUT NASTAVENIA =====
New-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services" -Force

# Odpojenie neaktívnej session po 15 minútach (900000 ms)
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services" `
    -Name "MaxIdleTime" -Type DWord -Value 900000

# Ukončenie odpojenej session po 1 hodine (3600000 ms)
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services" `
    -Name "MaxDisconnectionTime" -Type DWord -Value 3600000

# ===== ZAKÁZANIE UKLADANIA HESIEL =====
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services" `
    -Name "DisablePasswordSaving" -Type DWord -Value 1

# ===== ZAKÁZANIE DRIVE REDIRECTION =====
# Zabraňuje mapovaniu lokálnych diskov cez RDP (data exfiltration prevention)
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services" `
    -Name "fDisableCdm" -Type DWord -Value 1

# ===== ZAKÁZANIE CLIPBOARD REDIRECTION (Voliteľné - vysoká bezpečnosť) =====
# Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services" `
#     -Name "fDisableClip" -Type DWord -Value 1

# ===== REMOTE CREDENTIAL GUARD =====
# Credentials nikdy neopustia klientsky PC
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa" `
    -Name "DisableRestrictedAdmin" -Type DWord -Value 0

New-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\CredentialsDelegation" -Force
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\CredentialsDelegation" `
    -Name "RestrictedRemoteAdministration" -Type DWord -Value 1
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\CredentialsDelegation" `
    -Name "RestrictedRemoteAdministrationType" -Type DWord -Value 2  # 2 = Require Remote Credential Guard

# ===== CREDENTIAL GUARD (VBS) =====
# Izoluje credentials vo virtualizovanom kontajneri
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa" `
    -Name "LsaCfgFlags" -Type DWord -Value 1

# ===== LSA PROTECTION =====
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa" `
    -Name "RunAsPPL" -Type DWord -Value 1

# ===== ZAKÁZANIE WDIGEST (Clear-text credentials v pamäti) =====
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest" `
    -Name "UseLogonCredential" -Type DWord -Value 0

# ===== ACCOUNT LOCKOUT POLICY =====
# Nastavenie cez net accounts (lokálne) alebo GPO (doménové)
net accounts /lockoutthreshold:5 /lockoutduration:30 /lockoutwindow:30

# ===== RDP PORT ZMENA (Security through obscurity - voliteľné) =====
# Zmena default portu z 3389 na iný (napr. 33890)
# Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" `
#     -Name "PortNumber" -Type DWord -Value 33890

# ===== VERIFIKÁCIA RDP NASTAVENÍ =====
Write-Host "=== RDP Security Configuration ===" -ForegroundColor Cyan
Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" | `
    Select-Object UserAuthentication, SecurityLayer, MinEncryptionLevel, PortNumber | Format-List

Write-Host "`n=== Credential Protection Status ===" -ForegroundColor Cyan
Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa" | `
    Select-Object LsaCfgFlags, RunAsPPL | Format-List
Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest" | `
    Select-Object UseLogonCredential | Format-List

Write-Host "`n=== Active RDP Sessions ===" -ForegroundColor Cyan
qwinsta

Write-Host "`n=== RDP Listening Status ===" -ForegroundColor Cyan
Get-NetTCPConnection -LocalPort 3389 -ErrorAction SilentlyContinue | Format-Table
Verifikácia RDP konfigurácie
  1. Overte NLA: reg query "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v UserAuthentication
  2. Testujte pripojenie z externého PC a overte, že vyžaduje credentials pred session
  3. Skontrolujte Security Layer: hodnota by mala byť 2 (TLS)
  4. Overte logy: Event ID 4624 (Logon), 4625 (Failed Logon) v Security logu
  5. Testujte session timeout odpojením a čakaním
Monitoring a SIEM integrácia:
Checklist pre bezpečný RDP:

15. Zakázanie AutoRun a AutoPlay (Removable Media Security)

15.1 Prehľad a význam

AutoRun a AutoPlay sú funkcie Windows, ktoré automaticky spúšťajú programy alebo zobrazujú dialógy pri vložení removable médií (USB, CD/DVD). Tieto funkcie boli historicky jedným z najväčších vektorov šírenia malvéru a sú zodpovedné za niektoré z najväčších kybernetických útokov v histórii.

Historické útoky využívajúce AutoRun:

15.2 Rozdiel medzi AutoRun a AutoPlay

Funkcia Popis Riziko Odporúčanie
AutoRun Automatické spustenie programu definovaného v autorun.inf na root disku. Pôvodne pre CD-ROM inštalátory. Critical Vždy zakázať
AutoPlay Zobrazí dialóg s možnosťami (otvoriť priečinok, prehrať médiá, atď.) pri vložení média. Bezpečnejšie ako AutoRun. Medium Zakázať pre USB
autorun.inf Konfiguračný súbor na root médiu, ktorý definuje akciu pri vložení. Môže špecifikovať spustiteľný súbor, ikonu, label. Critical Ignorovať vždy

15.3 Typy útokov cez removable médiá

Typ útoku Popis MITRE ATT&CK Príklad
USB Malware Drop Infikované USB obsahuje malvér, ktorý sa spustí cez AutoRun T1091 (Replication Through Removable Media) Conficker, Stuxnet
BadUSB USB zariadenie sa tvári ako klávesnica a vykonáva príkazy T1200 (Hardware Additions) Rubber Ducky, Bash Bunny
USB Killer Fyzické poškodenie PC pomocou elektrického výboja cez USB T1485 (Data Destruction) USB Killer v3
Data Exfiltration Krádež citlivých dát na removable médiá T1052 (Exfiltration Over Physical Medium) Insider threat
LNK/Shortcut Exploit Škodlivé .lnk súbory exploitujú zraniteľnosti pri zobrazení ikony T1204.002 (User Execution: Malicious File) CVE-2010-2568 (Stuxnet)
USB Drop Attack Útočník "zabudne" infikované USB na parkovisku/v lobby T1566.001 (Phishing: Spearphishing Attachment) Social engineering

15.4 Scenáre útokov

Scenár 1: Stuxnet-style USB Attack

Priebeh útoku:
1. Útočník vytvorí infikované USB s autorun.inf a malvérom
2. USB je vložené do air-gapped systému (napr. priemyselný počítač)
3. AutoRun automaticky spustí malvér bez interakcie používateľa
4. Malvér sa šíri na ďalšie USB zariadenia pripojené k systému
5. Infikované USB je prenesené do iných sietí

Dopad: Stuxnet takto prenikol do iránskych jadrových zariadení a zničil centrifúgy
Mitigácia: Zakázanie AutoRun, USB device control, application whitelisting

Scenár 2: BadUSB / Rubber Ducky Attack

Priebeh útoku:
1. Útočník použije USB zariadenie, ktoré sa tvári ako HID (klávesnica)
2. Po vložení do PC začne "písať" príkazy (PowerShell, CMD)
3. Za 2-5 sekúnd stiahne a spustí payload z internetu
4. Útočník získa reverse shell alebo nainštaluje backdoor

Poznámka: Tento útok NEFUNGUJE cez AutoRun – vyžaduje HID emulation
Mitigácia: USB device control (whitelist), Group Policy na blokovanie nových zariadení

Scenár 3: USB Drop Attack (Social Engineering)

Priebeh útoku:
1. Útočník položí USB s lákavým popisom ("Platy 2024", "Dôverné") na parkovisku
2. Zamestnanec nájde USB a pripojí ho k firemnému PC
3. AutoRun spustí malvér alebo používateľ otvorí "dokument" (v skutočnosti .exe)
4. Útočník získa prístup do firemnej siete

Štatistika: V testoch 45-98% nájdených USB kľúčov bolo pripojených k PC
Mitigácia: Security awareness training, zakázanie USB portov, AutoRun disabled

15.5 NoDriveTypeAutoRun hodnoty

Register hodnota NoDriveTypeAutoRun je bitmask, ktorý určuje, pre ktoré typy diskov je AutoRun zakázaný:

Bit Hodnota Typ disku Popis
0 0x01 DRIVE_UNKNOWN Neznámy typ disku
1 0x02 DRIVE_NO_ROOT_DIR Disk bez root directory
2 0x04 DRIVE_REMOVABLE USB flash disky, SD karty
3 0x08 DRIVE_FIXED Pevné disky (HDD, SSD)
4 0x10 DRIVE_REMOTE Sieťové disky
5 0x20 DRIVE_CDROM CD/DVD/Blu-ray mechaniky
6 0x40 DRIVE_RAMDISK RAM disky
7 0x80 Reserved Budúce použitie
Všetky 0xFF (255) Všetky typy Odporúčaná hodnota - zakáže AutoRun všade

15.6 Detailné nastavenia

Nastavenie Hodnota Risk CIS Ref Popis
NoDriveTypeAutoRun 255 (0xFF) Critical 18.9.8.3 Zakázanie AutoRun pre všetky typy diskov
NoAutorun 1 Critical 18.9.8.2 Úplné zakázanie AutoRun funkcionality
HonorAutorunSetting 1 High 18.9.8.1 Vynúti rešpektovanie AutoRun nastavení
DisableAutoplay 1 Medium 18.9.8.4 Zakáže AutoPlay dialóg pre removable médiá
NoAutoplayfornonVolume 1 Medium 18.9.8.5 Zakáže AutoPlay pre non-volume zariadenia (MTP)

15.7 Dodatočné ochranné opatrenia

Group Policy nastavenia

  • Deny write access to removable drives
  • Deny execute access from removable drives
  • All Removable Storage: Deny all access
  • Prevent installation of removable devices
  • Turn off Autoplay (all drives)

Enterprise riešenia

  • USB Device Control (Endpoint Protection)
  • Application Whitelisting
  • DLP (Data Loss Prevention)
  • USB port fyzické blokovanie
  • Kiosk-mode pre verejné PC
Výnimky a úvahy:

15.8 PowerShell konfigurácia AutoRun/AutoPlay

# ===== KOMPLETNÉ ZAKÁZANIE AUTORUN PRE VŠETKY TYPY MÉDIÍ =====
# HKLM - platí pre všetkých používateľov na systéme
New-Item -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer" -Force -ErrorAction SilentlyContinue

# NoDriveTypeAutoRun = 255 (0xFF) zakáže AutoRun pre všetky typy diskov
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer" `
    -Name "NoDriveTypeAutoRun" -Type DWord -Value 255

# NoAutorun = 1 dodatočne zabezpečí úplné zakázanie
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer" `
    -Name "NoAutorun" -Type DWord -Value 1

# HonorAutorunSetting - vynúti rešpektovanie nastavení
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer" `
    -Name "HonorAutorunSetting" -Type DWord -Value 1

# ===== ZAKÁZANIE AUTOPLAY V GROUP POLICY =====
New-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Explorer" -Force -ErrorAction SilentlyContinue
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Explorer" `
    -Name "NoAutoplayfornonVolume" -Type DWord -Value 1

# ===== ZAKÁZANIE PRE AKTUÁLNEHO POUŽÍVATEĽA (HKCU) =====
New-Item -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer" -Force -ErrorAction SilentlyContinue
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer" `
    -Name "NoDriveTypeAutoRun" -Type DWord -Value 255
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer" `
    -Name "NoAutorun" -Type DWord -Value 1

# ===== ZAKÁZANIE AUTOPLAY HANDLEROV =====
New-Item -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers" -Force -ErrorAction SilentlyContinue
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers" `
    -Name "DisableAutoplay" -Type DWord -Value 1

# ===== ZAKÁZANIE AUTORUN CEZ GROUP POLICY (GPO equivalent) =====
New-Item -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer" -Force -ErrorAction SilentlyContinue
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer" `
    -Name "NoDriveAutoRun" -Type DWord -Value 67108863  # 0x3FFFFFF - všetky disky

# ===== DODATOČNÉ: ZAKÁZANIE ZÁPISU NA REMOVABLE DISKY (Voliteľné - vysoká bezpečnosť) =====
# Zabraňuje data exfiltration cez USB
# New-Item -Path "HKLM:\SYSTEM\CurrentControlSet\Control\StorageDevicePolicies" -Force
# Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\StorageDevicePolicies" `
#     -Name "WriteProtect" -Type DWord -Value 1

# ===== ZAKÁZANIE INŠTALÁCIE NOVÝCH USB STORAGE ZARIADENÍ (Voliteľné) =====
# Blokuje pripojenie nových USB storage zariadení
# Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\USBSTOR" `
#     -Name "Start" -Type DWord -Value 4  # 4 = Disabled

# ===== VERIFIKÁCIA NASTAVENÍ =====
Write-Host "=== AutoRun/AutoPlay Configuration ===" -ForegroundColor Cyan

Write-Host "`n[HKLM Policy]" -ForegroundColor Yellow
Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer" -ErrorAction SilentlyContinue | `
    Select-Object NoDriveTypeAutoRun, NoAutorun, HonorAutorunSetting | Format-List

Write-Host "[HKCU Policy]" -ForegroundColor Yellow
Get-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer" -ErrorAction SilentlyContinue | `
    Select-Object NoDriveTypeAutoRun, NoAutorun | Format-List

Write-Host "[AutoPlay Handlers]" -ForegroundColor Yellow
Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers" -ErrorAction SilentlyContinue | `
    Select-Object DisableAutoplay | Format-List

# Overenie hodnoty - mala by byť 255
$value = (Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer" -Name "NoDriveTypeAutoRun" -ErrorAction SilentlyContinue).NoDriveTypeAutoRun
if ($value -eq 255) {
    Write-Host "✓ NoDriveTypeAutoRun = 255 (všetky typy diskov zakázané)" -ForegroundColor Green
} else {
    Write-Host "✗ NoDriveTypeAutoRun = $value (očakávané: 255)" -ForegroundColor Red
}
Verifikácia AutoRun/AutoPlay nastavení
  1. Skontrolujte registry: reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer" /v NoDriveTypeAutoRun
  2. Vložte USB disk a overte, že sa nezobrazí žiadny AutoPlay dialóg
  3. Skontrolujte, že súbor autorun.inf na USB nie je vykonaný
  4. Overte Group Policy: gpedit.msc → Computer Configuration → Administrative Templates → Windows Components → AutoPlay Policies
  5. Testujte s testovacím autorun.inf súborom (bezpečný - len otvorenie notepad)
Group Policy cesty:
Checklist pre removable media security:

Kompletný PowerShell Hardening Skript

Upozornenie: Pred spustením tohto skriptu v produkčnom prostredí:
#Requires -RunAsAdministrator
# ============================================================================
# WINDOWS 11 KOMPLETNÝ SECURITY HARDENING SCRIPT
# Verzia: 2.0 | MHITE s.r.o.
# Dátum: 2024
# ============================================================================
# Tento skript implementuje bezpečnostné odporúčania podľa:
# - CIS Windows 11 Benchmark
# - Microsoft Security Baseline
# - NIST SP 800-53
# ============================================================================

$ErrorActionPreference = "SilentlyContinue"
$StartTime = Get-Date

Write-Host "╔══════════════════════════════════════════════════════════════════╗" -ForegroundColor Cyan
Write-Host "║     WINDOWS 11 KOMPLETNÝ SECURITY HARDENING SCRIPT v2.0         ║" -ForegroundColor Cyan
Write-Host "║                        MHITE s.r.o.                              ║" -ForegroundColor Cyan
Write-Host "╚══════════════════════════════════════════════════════════════════╝" -ForegroundColor Cyan
Write-Host "`nČas spustenia: $StartTime" -ForegroundColor Gray
Write-Host "Začínam konfiguráciu bezpečnostných nastavení...`n" -ForegroundColor Yellow

# ============================================================================
# [1/15] MICROSOFT DEFENDER ANTIVIRUS
# ============================================================================
Write-Host "[1/15] Konfigurácia Microsoft Defender Antivirus..." -ForegroundColor Green

# Základná ochrana
Set-MpPreference -DisableRealtimeMonitoring $false
Set-MpPreference -DisableBehaviorMonitoring $false
Set-MpPreference -DisableIOAVProtection $false
Set-MpPreference -DisablePrivacyMode $false

# Cloud-based Protection
Set-MpPreference -MAPSReporting Advanced
Set-MpPreference -SubmitSamplesConsent SendAllSamples
Set-MpPreference -CloudBlockLevel High
Set-MpPreference -CloudExtendedTimeout 50

# Ďalšie ochranné funkcie
Set-MpPreference -EnableControlledFolderAccess Enabled
Set-MpPreference -EnableNetworkProtection Enabled
Set-MpPreference -PUAProtection Enabled

# Skenovanie
Set-MpPreference -DisableArchiveScanning $false
Set-MpPreference -DisableRemovableDriveScanning $false
Set-MpPreference -DisableEmailScanning $false

Write-Host "   ✓ Defender nakonfigurovaný" -ForegroundColor DarkGreen

# ============================================================================
# [2/15] ATTACK SURFACE REDUCTION (ASR) RULES
# ============================================================================
Write-Host "[2/15] Konfigurácia Attack Surface Reduction pravidiel..." -ForegroundColor Green

# ASR pravidlá (1 = Block, 2 = Audit)
$ASRRules = @{
    "BE9BA2D9-53EA-4CDC-84E5-9B1EEEE46550" = 1  # Block executable content from email
    "D4F940AB-401B-4EFC-AADC-AD5F3C50688A" = 1  # Block Office apps from creating child processes
    "3B576869-A4EC-4529-8536-B80A7769E899" = 1  # Block Office apps from creating executable content
    "75668C1F-73B5-4CF0-BB93-3ECF5CB7CC84" = 1  # Block Office apps from injecting into other processes
    "D3E037E1-3EB8-44C8-A917-57927947596D" = 1  # Block JavaScript/VBScript from launching downloaded content
    "5BEB7EFE-FD9A-4556-801D-275E5FFC04CC" = 1  # Block execution of potentially obfuscated scripts
    "92E97FA1-2EDF-4476-BDD6-9DD0B4DDDC7B" = 1  # Block Win32 API calls from Office macro
    "01443614-CD74-433A-B99E-2ECDC07BFC25" = 1  # Block executable files unless they meet criteria
    "C1DB55AB-C21A-4637-BB3F-A12568109D35" = 1  # Block use of copied or impersonated system tools
    "9E6C4E1F-7D60-472F-BA1A-A39EF669E4B2" = 1  # Block credential stealing from LSASS
    "D1E49AAC-8F56-4280-B9BA-993A6D77406C" = 1  # Block process creations from PSExec and WMI
    "B2B3F03D-6A65-4F7B-A9C7-1C7EF74A9BA4" = 1  # Block untrusted/unsigned processes from USB
    "26190899-1602-49E8-8B27-EB1D0A1CE869" = 1  # Block Office communication apps from creating child processes
    "7674BA52-37EB-4A4F-A9A1-F0F9A1619A2C" = 1  # Block Adobe Reader from creating child processes
    "E6DB77E5-3DF2-4CF1-B95A-636979351E5B" = 1  # Block persistence through WMI event subscription
    "56A863A9-875E-4185-98A7-B882C64B5CE5" = 1  # Block abuse of exploited vulnerable signed drivers
}

foreach ($rule in $ASRRules.GetEnumerator()) {
    Add-MpPreference -AttackSurfaceReductionRules_Ids $rule.Key -AttackSurfaceReductionRules_Actions $rule.Value
}

Write-Host "   ✓ ASR pravidlá nakonfigurované (16 pravidiel)" -ForegroundColor DarkGreen

# ============================================================================
# [3/15] CORE ISOLATION / VIRTUALIZATION-BASED SECURITY (VBS)
# ============================================================================
Write-Host "[3/15] Konfigurácia Core Isolation (VBS)..." -ForegroundColor Green

# Memory Integrity (HVCI)
$HVCIPath = "HKLM:\SYSTEM\CurrentControlSet\Control\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity"
if (!(Test-Path $HVCIPath)) { New-Item -Path $HVCIPath -Force | Out-Null }
Set-ItemProperty -Path $HVCIPath -Name "Enabled" -Type DWord -Value 1

# Credential Guard
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa" -Name "LsaCfgFlags" -Type DWord -Value 1

# LSA Protection (PPL)
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa" -Name "RunAsPPL" -Type DWord -Value 1

# Device Guard
$DGPath = "HKLM:\SOFTWARE\Policies\Microsoft\Windows\DeviceGuard"
if (!(Test-Path $DGPath)) { New-Item -Path $DGPath -Force | Out-Null }
Set-ItemProperty -Path $DGPath -Name "EnableVirtualizationBasedSecurity" -Type DWord -Value 1
Set-ItemProperty -Path $DGPath -Name "RequirePlatformSecurityFeatures" -Type DWord -Value 3
Set-ItemProperty -Path $DGPath -Name "LsaCfgFlags" -Type DWord -Value 1

# Vulnerable Driver Blocklist
$CIPath = "HKLM:\SYSTEM\CurrentControlSet\Control\CI\Config"
if (!(Test-Path $CIPath)) { New-Item -Path $CIPath -Force | Out-Null }
Set-ItemProperty -Path $CIPath -Name "VulnerableDriverBlocklistEnable" -Type DWord -Value 1

Write-Host "   ✓ Core Isolation nakonfigurovaná" -ForegroundColor DarkGreen

# ============================================================================
# [4/15] WINDOWS FIREWALL
# ============================================================================
Write-Host "[4/15] Konfigurácia Windows Firewall..." -ForegroundColor Green

# Zapnutie firewallu pre všetky profily
Set-NetFirewallProfile -Profile Domain,Public,Private -Enabled True

# Default akcie
Set-NetFirewallProfile -Profile Domain,Public,Private `
    -DefaultInboundAction Block `
    -DefaultOutboundAction Allow `
    -NotifyOnListen False `
    -AllowUnicastResponseToMulticast False

# Prísnejšie nastavenia pre Public profil
Set-NetFirewallProfile -Profile Public `
    -AllowLocalFirewallRules False `
    -AllowLocalIPsecRules False

# Logovanie
Set-NetFirewallProfile -Profile Domain `
    -LogFileName "%SystemRoot%\System32\LogFiles\Firewall\domain.log" `
    -LogMaxSizeKilobytes 16384 -LogBlocked True -LogAllowed False

Set-NetFirewallProfile -Profile Private `
    -LogFileName "%SystemRoot%\System32\LogFiles\Firewall\private.log" `
    -LogMaxSizeKilobytes 16384 -LogBlocked True -LogAllowed False

Set-NetFirewallProfile -Profile Public `
    -LogFileName "%SystemRoot%\System32\LogFiles\Firewall\public.log" `
    -LogMaxSizeKilobytes 32767 -LogBlocked True -LogAllowed True

# Blokovanie kritických portov na Public profile
$BlockRules = @(
    @{Name="Block SMB"; Port=445; Protocol="TCP"},
    @{Name="Block RDP"; Port=3389; Protocol="TCP"},
    @{Name="Block NetBIOS TCP"; Port="137-139"; Protocol="TCP"},
    @{Name="Block NetBIOS UDP"; Port="137-139"; Protocol="UDP"},
    @{Name="Block WinRM"; Port="5985,5986"; Protocol="TCP"},
    @{Name="Block RPC"; Port=135; Protocol="TCP"}
)

foreach ($rule in $BlockRules) {
    New-NetFirewallRule -DisplayName "$($rule.Name) Public" -Direction Inbound `
        -Protocol $rule.Protocol -LocalPort $rule.Port -Action Block -Profile Public -Enabled True | Out-Null
}

Write-Host "   ✓ Firewall nakonfigurovaný" -ForegroundColor DarkGreen

# ============================================================================
# [5/15] SMB HARDENING
# ============================================================================
Write-Host "[5/15] SMB Hardening..." -ForegroundColor Green

# Zakázanie SMBv1
Disable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol -NoRestart -ErrorAction SilentlyContinue | Out-Null
Set-SmbServerConfiguration -EnableSMB1Protocol $false -Force

# SMB Signing
Set-SmbServerConfiguration -EnableSecuritySignature $true -Force
Set-SmbServerConfiguration -RequireSecuritySignature $true -Force
Set-SmbClientConfiguration -EnableSecuritySignature $true -Force
Set-SmbClientConfiguration -RequireSecuritySignature $true -Force

# SMB Encryption (pre SMB 3.0+)
Set-SmbServerConfiguration -EncryptData $true -Force -ErrorAction SilentlyContinue

Write-Host "   ✓ SMB hardening dokončený" -ForegroundColor DarkGreen

# ============================================================================
# [6/15] NETWORK SECURITY
# ============================================================================
Write-Host "[6/15] Konfigurácia Network Security..." -ForegroundColor Green

# Zakázanie LLMNR
$DNSClientPath = "HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\DNSClient"
if (!(Test-Path $DNSClientPath)) { New-Item -Path $DNSClientPath -Force | Out-Null }
Set-ItemProperty -Path $DNSClientPath -Name "EnableMulticast" -Type DWord -Value 0

# TCP/IP Stack Hardening
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" -Name "DisableIPSourceRouting" -Type DWord -Value 2
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters" -Name "DisableIPSourceRouting" -Type DWord -Value 2
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" -Name "EnableICMPRedirect" -Type DWord -Value 0

# Network Access
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa" -Name "EveryoneIncludesAnonymous" -Type DWord -Value 0
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa" -Name "RestrictAnonymous" -Type DWord -Value 1
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa" -Name "RestrictAnonymousSAM" -Type DWord -Value 1

# Null Session
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanManServer\Parameters" -Name "RestrictNullSessAccess" -Type DWord -Value 1
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanManServer\Parameters" -Name "NullSessionShares" -Type MultiString -Value @()
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanManServer\Parameters" -Name "NullSessionPipes" -Type MultiString -Value @()

Write-Host "   ✓ Network security nakonfigurovaná" -ForegroundColor DarkGreen

# ============================================================================
# [7/15] AUDIT POLICY
# ============================================================================
Write-Host "[7/15] Konfigurácia Audit Policy..." -ForegroundColor Green

# Account Logon
auditpol /set /subcategory:"Credential Validation" /success:enable /failure:enable | Out-Null
auditpol /set /subcategory:"Kerberos Authentication Service" /success:enable /failure:enable | Out-Null
auditpol /set /subcategory:"Kerberos Service Ticket Operations" /success:enable /failure:enable | Out-Null

# Account Management
auditpol /set /subcategory:"User Account Management" /success:enable /failure:enable | Out-Null
auditpol /set /subcategory:"Security Group Management" /success:enable /failure:enable | Out-Null
auditpol /set /subcategory:"Computer Account Management" /success:enable /failure:enable | Out-Null

# Logon/Logoff
auditpol /set /subcategory:"Logon" /success:enable /failure:enable | Out-Null
auditpol /set /subcategory:"Logoff" /success:enable /failure:disable | Out-Null
auditpol /set /subcategory:"Special Logon" /success:enable /failure:enable | Out-Null
auditpol /set /subcategory:"Account Lockout" /success:enable /failure:enable | Out-Null

# Process Tracking
auditpol /set /subcategory:"Process Creation" /success:enable /failure:enable | Out-Null
auditpol /set /subcategory:"Process Termination" /success:enable /failure:disable | Out-Null

# Privilege Use
auditpol /set /subcategory:"Sensitive Privilege Use" /success:enable /failure:enable | Out-Null

# System Events
auditpol /set /subcategory:"Security State Change" /success:enable /failure:enable | Out-Null
auditpol /set /subcategory:"Security System Extension" /success:enable /failure:enable | Out-Null
auditpol /set /subcategory:"System Integrity" /success:enable /failure:enable | Out-Null

# Object Access
auditpol /set /subcategory:"Kernel Object" /success:enable /failure:enable | Out-Null
auditpol /set /subcategory:"Handle Manipulation" /success:enable /failure:enable | Out-Null

# Command Line v Process Creation eventoch
$AuditPath = "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\Audit"
if (!(Test-Path $AuditPath)) { New-Item -Path $AuditPath -Force | Out-Null }
Set-ItemProperty -Path $AuditPath -Name "ProcessCreationIncludeCmdLine_Enabled" -Type DWord -Value 1

# Security Log Size
wevtutil sl Security /ms:1073741824 | Out-Null

Write-Host "   ✓ Audit policy nakonfigurovaná" -ForegroundColor DarkGreen

# ============================================================================
# [8/15] INTERACTIVE LOGON
# ============================================================================
Write-Host "[8/15] Konfigurácia Interactive Logon..." -ForegroundColor Green

$SystemPath = "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System"

# CTRL+ALT+DEL vyžadovaný
Set-ItemProperty -Path $SystemPath -Name "DisableCAD" -Type DWord -Value 0

# Nezobrazovať posledné meno
Set-ItemProperty -Path $SystemPath -Name "DontDisplayLastUserName" -Type DWord -Value 1

# Inactivity timeout (15 minút)
Set-ItemProperty -Path $SystemPath -Name "InactivityTimeoutSecs" -Type DWord -Value 900

# Legal Notice
Set-ItemProperty -Path $SystemPath -Name "LegalNoticeCaption" -Type String -Value "POZOR - Súkromný systém"
Set-ItemProperty -Path $SystemPath -Name "LegalNoticeText" -Type String -Value "Tento systém je určený len pre autorizovaných používateľov. Všetky aktivity sú monitorované a zaznamenávané. Neautorizovaný prístup je zakázaný a bude právne stíhaný."

# Cached Logons
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" -Name "CachedLogonsCount" -Type String -Value "3"

Write-Host "   ✓ Interactive Logon nakonfigurovaný" -ForegroundColor DarkGreen

# ============================================================================
# [9/15] SHUTDOWN POLICY
# ============================================================================
Write-Host "[9/15] Konfigurácia Shutdown Policy..." -ForegroundColor Green

# Zakázanie shutdown bez prihlásenia
Set-ItemProperty -Path $SystemPath -Name "ShutdownWithoutLogon" -Type DWord -Value 0

# Clear Pagefile pri shutdown
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" -Name "ClearPageFileAtShutdown" -Type DWord -Value 1

# Zakázanie Fast Startup
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Power" -Name "HiberbootEnabled" -Type DWord -Value 0

# Zakázanie Hibernate
powercfg /hibernate off 2>$null

# Kernel Crash Dump - Small (zabraňuje credential extraction)
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\CrashControl" -Name "CrashDumpEnabled" -Type DWord -Value 3

Write-Host "   ✓ Shutdown Policy nakonfigurovaná" -ForegroundColor DarkGreen

# ============================================================================
# [10/15] SYSTEM OBJECTS PROTECTION
# ============================================================================
Write-Host "[10/15] Konfigurácia System Objects Protection..." -ForegroundColor Green

# Protection Mode
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager" -Name "ProtectionMode" -Type DWord -Value 1

# Safe DLL Search Mode
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager" -Name "SafeDllSearchMode" -Type DWord -Value 1

# Filter Administrator Token
Set-ItemProperty -Path $SystemPath -Name "FilterAdministratorToken" -Type DWord -Value 1

# Secure UIA Path
Set-ItemProperty -Path $SystemPath -Name "EnableSecureUIAPaths" -Type DWord -Value 1

# Mandatory ASLR
Set-ProcessMitigation -System -Enable ForceRelocateImages -ErrorAction SilentlyContinue

Write-Host "   ✓ System Objects Protection nakonfigurovaná" -ForegroundColor DarkGreen

# ============================================================================
# [11/15] CREDENTIALS PROTECTION
# ============================================================================
Write-Host "[11/15] Konfigurácia Credentials Protection..." -ForegroundColor Green

# Zakázanie WDigest
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest" -Name "UseLogonCredential" -Type DWord -Value 0

# Zakázanie automatického prihlásenia
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" -Name "AutoAdminLogon" -Type String -Value "0"

# Remote Credential Guard
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa" -Name "DisableRestrictedAdmin" -Type DWord -Value 0

$CredDelegPath = "HKLM:\SOFTWARE\Policies\Microsoft\Windows\CredentialsDelegation"
if (!(Test-Path $CredDelegPath)) { New-Item -Path $CredDelegPath -Force | Out-Null }
Set-ItemProperty -Path $CredDelegPath -Name "RestrictedRemoteAdministration" -Type DWord -Value 1
Set-ItemProperty -Path $CredDelegPath -Name "RestrictedRemoteAdministrationType" -Type DWord -Value 2

Write-Host "   ✓ Credentials Protection nakonfigurovaná" -ForegroundColor DarkGreen

# ============================================================================
# [12/15] RDP HARDENING
# ============================================================================
Write-Host "[12/15] Konfigurácia RDP Security..." -ForegroundColor Green

$RDPPath = "HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp"

# Network Level Authentication (NLA)
Set-ItemProperty -Path $RDPPath -Name "UserAuthentication" -Type DWord -Value 1

# Security Layer (TLS)
Set-ItemProperty -Path $RDPPath -Name "SecurityLayer" -Type DWord -Value 2

# Encryption Level (High)
Set-ItemProperty -Path $RDPPath -Name "MinEncryptionLevel" -Type DWord -Value 3

# Session Timeouts
$TSPath = "HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services"
if (!(Test-Path $TSPath)) { New-Item -Path $TSPath -Force | Out-Null }
Set-ItemProperty -Path $TSPath -Name "MaxIdleTime" -Type DWord -Value 900000
Set-ItemProperty -Path $TSPath -Name "MaxDisconnectionTime" -Type DWord -Value 3600000
Set-ItemProperty -Path $TSPath -Name "DisablePasswordSaving" -Type DWord -Value 1
Set-ItemProperty -Path $TSPath -Name "fDisableCdm" -Type DWord -Value 1

# Account Lockout
net accounts /lockoutthreshold:5 /lockoutduration:30 /lockoutwindow:30 2>$null | Out-Null

Write-Host "   ✓ RDP Security nakonfigurovaná" -ForegroundColor DarkGreen

# ============================================================================
# [13/15] AUTORUN / AUTOPLAY
# ============================================================================
Write-Host "[13/15] Zakázanie AutoRun/AutoPlay..." -ForegroundColor Green

$ExplorerPath = "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer"
if (!(Test-Path $ExplorerPath)) { New-Item -Path $ExplorerPath -Force | Out-Null }

# NoDriveTypeAutoRun = 255 (všetky typy diskov)
Set-ItemProperty -Path $ExplorerPath -Name "NoDriveTypeAutoRun" -Type DWord -Value 255
Set-ItemProperty -Path $ExplorerPath -Name "NoAutorun" -Type DWord -Value 1
Set-ItemProperty -Path $ExplorerPath -Name "HonorAutorunSetting" -Type DWord -Value 1
Set-ItemProperty -Path $ExplorerPath -Name "NoDriveAutoRun" -Type DWord -Value 67108863

# AutoPlay Handlers
$AutoplayPath = "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers"
if (!(Test-Path $AutoplayPath)) { New-Item -Path $AutoplayPath -Force | Out-Null }
Set-ItemProperty -Path $AutoplayPath -Name "DisableAutoplay" -Type DWord -Value 1

# Non-Volume AutoPlay
$WinExplorerPath = "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Explorer"
if (!(Test-Path $WinExplorerPath)) { New-Item -Path $WinExplorerPath -Force | Out-Null }
Set-ItemProperty -Path $WinExplorerPath -Name "NoAutoplayfornonVolume" -Type DWord -Value 1

# HKCU nastavenia
$HKCUExplorerPath = "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer"
if (!(Test-Path $HKCUExplorerPath)) { New-Item -Path $HKCUExplorerPath -Force | Out-Null }
Set-ItemProperty -Path $HKCUExplorerPath -Name "NoDriveTypeAutoRun" -Type DWord -Value 255
Set-ItemProperty -Path $HKCUExplorerPath -Name "NoAutorun" -Type DWord -Value 1

Write-Host "   ✓ AutoRun/AutoPlay zakázané" -ForegroundColor DarkGreen

# ============================================================================
# [14/15] GPO ADMINISTRATIVE TEMPLATES
# ============================================================================
Write-Host "[14/15] Konfigurácia GPO Administrative Templates..." -ForegroundColor Green

# Privacy - Lock Screen
$PersonalizationPath = "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Personalization"
if (!(Test-Path $PersonalizationPath)) { New-Item -Path $PersonalizationPath -Force | Out-Null }
Set-ItemProperty -Path $PersonalizationPath -Name "NoLockScreenCamera" -Type DWord -Value 1
Set-ItemProperty -Path $PersonalizationPath -Name "NoLockScreenSlideshow" -Type DWord -Value 1

# Input Personalization
$InputPath = "HKLM:\SOFTWARE\Policies\Microsoft\InputPersonalization"
if (!(Test-Path $InputPath)) { New-Item -Path $InputPath -Force | Out-Null }
Set-ItemProperty -Path $InputPath -Name "AllowInputPersonalization" -Type DWord -Value 0

# Windows Search
$SearchPath = "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Search"
if (!(Test-Path $SearchPath)) { New-Item -Path $SearchPath -Force | Out-Null }
Set-ItemProperty -Path $SearchPath -Name "AllowCortana" -Type DWord -Value 0
Set-ItemProperty -Path $SearchPath -Name "AllowSearchToUseLocation" -Type DWord -Value 0
Set-ItemProperty -Path $SearchPath -Name "DisableWebSearch" -Type DWord -Value 1

# Telemetry (Enterprise: 0=Security, 1=Basic, 2=Enhanced, 3=Full)
$DataCollectionPath = "HKLM:\SOFTWARE\Policies\Microsoft\Windows\DataCollection"
if (!(Test-Path $DataCollectionPath)) { New-Item -Path $DataCollectionPath -Force | Out-Null }
Set-ItemProperty -Path $DataCollectionPath -Name "AllowTelemetry" -Type DWord -Value 1

Write-Host "   ✓ GPO Templates nakonfigurované" -ForegroundColor DarkGreen

# ============================================================================
# [15/15] FINALIZÁCIA
# ============================================================================
Write-Host "[15/15] Finalizácia a verifikácia..." -ForegroundColor Green

$EndTime = Get-Date
$Duration = $EndTime - $StartTime

Write-Host "`n╔══════════════════════════════════════════════════════════════════╗" -ForegroundColor Green
Write-Host "║                    HARDENING DOKONČENÝ                           ║" -ForegroundColor Green
Write-Host "╚══════════════════════════════════════════════════════════════════╝" -ForegroundColor Green

Write-Host "`nČas dokončenia: $EndTime" -ForegroundColor Gray
Write-Host "Celkový čas: $($Duration.TotalSeconds) sekúnd" -ForegroundColor Gray

Write-Host "`n=== ZHRNUTIE APLIKOVANÝCH NASTAVENÍ ===" -ForegroundColor Cyan
Write-Host "  [✓] Microsoft Defender - Real-time, Cloud, Network Protection"
Write-Host "  [✓] ASR Rules - 16 pravidiel v Block mode"
Write-Host "  [✓] Core Isolation - HVCI, Credential Guard, LSA Protection"
Write-Host "  [✓] Windows Firewall - 3 profily, logovanie, blokované porty"
Write-Host "  [✓] SMB Hardening - SMBv1 zakázané, signing povinný"
Write-Host "  [✓] Network Security - LLMNR zakázané, TCP/IP hardening"
Write-Host "  [✓] Audit Policy - Komplexné logovanie"
Write-Host "  [✓] Interactive Logon - CTRL+ALT+DEL, timeout, legal notice"
Write-Host "  [✓] Shutdown Policy - Pagefile clearing, Fast Startup off"
Write-Host "  [✓] System Objects - Protection Mode, Safe DLL Search"
Write-Host "  [✓] Credentials Protection - WDigest off, Credential Guard"
Write-Host "  [✓] RDP Security - NLA, TLS, session timeouts"
Write-Host "  [✓] AutoRun/AutoPlay - Úplne zakázané"
Write-Host "  [✓] GPO Templates - Privacy, telemetria"

Write-Host "`n╔══════════════════════════════════════════════════════════════════╗" -ForegroundColor Yellow
Write-Host "║  DÔLEŽITÉ: REŠTARTUJTE SYSTÉM PRE APLIKOVANIE VŠETKÝCH ZMIEN!   ║" -ForegroundColor Yellow
Write-Host "╚══════════════════════════════════════════════════════════════════╝" -ForegroundColor Yellow

Write-Host "`n=== VERIFIKAČNÉ PRÍKAZY ===" -ForegroundColor Cyan
Write-Host "  msinfo32                      - VBS/Credential Guard status"
Write-Host "  Get-MpComputerStatus          - Defender status"
Write-Host "  Get-MpPreference              - ASR rules"
Write-Host "  Get-NetFirewallProfile        - Firewall status"
Write-Host "  Get-SmbServerConfiguration    - SMB config"
Write-Host "  auditpol /get /category:*     - Audit policy"
Write-Host "  gpresult /h report.html       - Applied GPO settings"
Po spustení skriptu:
  1. Reštartujte počítač - mnohé nastavenia vyžadujú reštart
  2. Overte VBS status: msinfo32 → "Virtualization-based security"
  3. Skontrolujte Defender: Get-MpComputerStatus | Select RealTimeProtectionEnabled, AntivirusEnabled
  4. Overte ASR: (Get-MpPreference).AttackSurfaceReductionRules_Ids.Count - malo by byť 16
  5. Firewall: Get-NetFirewallProfile | Select Name, Enabled, DefaultInboundAction
  6. Audit policy: auditpol /get /category:* | findstr /i "success failure"
Možné problémy a riešenia:

16. Zhrnutie a kontrolný zoznam

16.1 Prehľad všetkých bezpečnostných oblastí

# Oblasť Kľúčové nastavenia Priorita MITRE ATT&CK
1 Úvod a rozsah Dokumentácia, scope definícia Info -
2 Referenčné štandardy CIS, NIST, Microsoft Baseline Info -
3 Windows Update Automatické aktualizácie, ASAP patching Critical T1190 - Exploit Public-Facing
4 Microsoft Defender Real-time, Tamper Protection, 16 ASR pravidiel Critical T1059 - Command Execution
5 Core Isolation (VBS) HVCI, Credential Guard, LSA Protection (PPL) Critical T1003 - Credential Dumping
6 Sieťová bezpečnosť SMBv1 off, SMB signing, LLMNR off, NetBIOS off Critical T1557 - Adversary-in-the-Middle
7 Audit Policy Auditpol, command line logging, ScriptBlockLogging High T1070 - Indicator Removal
8 Interactive Logon CTRL+ALT+DEL, timeout, legal notice Medium T1078 - Valid Accounts
9 MS Network Server SMB signing, idle disconnect, SPN validation High T1557.001 - LLMNR Poisoning
10 Shutdown Policy Pagefile clearing, hibernate off, shutdown rights Medium T1005 - Data from Local System
11 System Objects Default permissions, case sensitivity Medium T1134 - Access Token Manipulation
12 Windows Firewall 3 profily enabled, port blocking, logging High T1046 - Network Discovery
13 GPO Templates Privacy, WDigest off, TCP/IP hardening, DLL safe mode High T1574 - Hijack Execution Flow
14 RDP & Credentials NLA, TLS 1.2, Remote Credential Guard, timeouts Critical T1021.001 - Remote Desktop
15 AutoRun/AutoPlay NoDriveTypeAutoRun=255, AutoPlay disabled High T1091 - Replication via Media

16.2 Prioritizácia implementácie

Priorita Sekcie Zdôvodnenie Riziko bez implementácie
P1 – Critical 3, 4, 5, 6, 14 Základná ochrana pred najčastejšími útokmi (ransomware, credential theft) Vysoká pravdepodobnosť kompromitácie
P2 – High 7, 9, 12, 13, 15 Detekcia, network hardening, lateral movement prevention Sťažená detekcia, šírenie útoku v sieti
P3 – Medium 8, 10, 11 Defense in depth, compliance, data protection Compliance issues, data leakage
P4 – Info 1, 2, 16, 17 Dokumentácia, referencie, sumár -

16.3 Kontrolný zoznam pre audit

Pre-deployment checklist

Sekcie 3-6: Základná ochrana

Sekcie 7-11: Audit a politiky

Sekcie 12-15: Firewall, GPO, RDP, USB

16.4 Rýchla verifikácia PowerShell

# ===== KOMPLETNÁ VERIFIKÁCIA VŠETKÝCH NASTAVENÍ =====
Write-Host "═══════════════════════════════════════════════════════════════" -ForegroundColor Cyan
Write-Host "              WINDOWS 11 SECURITY HARDENING AUDIT              " -ForegroundColor Cyan
Write-Host "═══════════════════════════════════════════════════════════════" -ForegroundColor Cyan

# [3] Windows Update
Write-Host "`n[3] WINDOWS UPDATE:" -ForegroundColor Yellow
Get-Service wuauserv | Select-Object Status, StartType

# [4] Microsoft Defender
Write-Host "`n[4] MICROSOFT DEFENDER:" -ForegroundColor Yellow
Get-MpPreference | Select-Object DisableRealtimeMonitoring, EnableControlledFolderAccess, EnableNetworkProtection
Get-MpComputerStatus | Select-Object RealTimeProtectionEnabled, IsTamperProtected

# [5] Core Isolation / VBS
Write-Host "`n[5] CORE ISOLATION (VBS):" -ForegroundColor Yellow
Get-CimInstance -ClassName Win32_DeviceGuard -Namespace root\Microsoft\Windows\DeviceGuard |
    Select-Object VirtualizationBasedSecurityStatus, SecurityServicesRunning
Get-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa" -Name "RunAsPPL" -ErrorAction SilentlyContinue

# [6] Sieťová bezpečnosť
Write-Host "`n[6] SIEŤOVÁ BEZPEČNOSŤ:" -ForegroundColor Yellow
Get-SmbServerConfiguration | Select-Object EnableSMB1Protocol, RequireSecuritySignature, EnableSecuritySignature
Get-ItemProperty "HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\DNSClient" -Name "EnableMulticast" -EA SilentlyContinue

# [7] Audit Policy
Write-Host "`n[7] AUDIT POLICY:" -ForegroundColor Yellow
auditpol /get /category:* | Select-String "Success|Failure" | Select-Object -First 10
Get-ItemProperty "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\Audit" -EA SilentlyContinue

# [12] Windows Firewall
Write-Host "`n[12] WINDOWS FIREWALL:" -ForegroundColor Yellow
Get-NetFirewallProfile | Select-Object Name, Enabled, DefaultInboundAction, DefaultOutboundAction

# [13] GPO - WDigest, DLL
Write-Host "`n[13] GPO NASTAVENIA:" -ForegroundColor Yellow
Get-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest" -Name "UseLogonCredential" -EA SilentlyContinue
Get-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager" -Name "SafeDllSearchMode" -EA SilentlyContinue

# [14] RDP
Write-Host "`n[14] RDP KONFIGURÁCIA:" -ForegroundColor Yellow
Get-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" |
    Select-Object UserAuthentication, SecurityLayer, MinEncryptionLevel

# [15] AutoRun
Write-Host "`n[15] AUTORUN/AUTOPLAY:" -ForegroundColor Yellow
Get-ItemProperty "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer" -Name "NoDriveTypeAutoRun" -EA SilentlyContinue

Write-Host "`n═══════════════════════════════════════════════════════════════" -ForegroundColor Green
Write-Host "                    AUDIT DOKONČENÝ                            " -ForegroundColor Green
Write-Host "═══════════════════════════════════════════════════════════════" -ForegroundColor Green

17. Slovník pojmov

17.1 Bezpečnostné technológie

Pojem Anglický názov Vysvetlenie
ASR Attack Surface Reduction Sada 16 pravidiel v Microsoft Defender na blokovanie bežných attack vektorov (makrá, skripty, credential stealing)
Credential Guard - VBS funkcia izolujúca NTLM hashes a Kerberos tickets v zabezpečenom kontajneri mimo dosahu malware
HVCI Hypervisor-protected Code Integrity Memory Integrity v Core Isolation - blokuje spúšťanie nepodpísaného kódu v kernel mode
LSA Protection Local Security Authority Protection Ochrana LSASS procesu pomocou PPL (Protected Process Light) pred injection útokmi
NLA Network Level Authentication Pre-autentifikácia pred vytvorením RDP session - blokuje pre-auth exploity ako BlueKeep
PPL Protected Process Light Windows mechanizmus ochrany kritických procesov pred injection a memory dump útokmi
VBS Virtualization-based Security Bezpečnostné funkcie využívajúce hardvérovú virtualizáciu (Hyper-V) na izoláciu citlivých dát
Remote Credential Guard - Ochrana credentials pri RDP - credentials nikdy neopúšťajú klientsky počítač
Tamper Protection - Funkcia Defender brániaca malware vypnúť antivírusovú ochranu

17.2 Protokoly a služby

Pojem Port/Protokol Vysvetlenie
SMB TCP 445 Server Message Block – protokol pre zdieľanie súborov a tlačiarní. SMBv1 je zastaraný a zraniteľný (EternalBlue)
RDP TCP 3389 Remote Desktop Protocol – vzdialený prístup k pracovnej ploche, častý cieľ útokov
LLMNR UDP 5355 Link-Local Multicast Name Resolution – protokol zneužívaný pre credential theft (Responder attacks)
NetBIOS UDP 137-138, TCP 139 Network Basic Input/Output System – zastaraný protokol zneužívaný pre poisoning útoky
WDigest - Zastaraný autentifikačný protokol ukladajúci credentials v reverzibilnej forme (čitateľné Mimikatz)
NTLM - NT LAN Manager – autentifikačný protokol, hashované credentials sú cieľom Pass-the-Hash útokov
Kerberos TCP/UDP 88 Bezpečnejší autentifikačný protokol používaný v Active Directory prostrediach

17.3 Procesy a komponenty

Pojem Proces/Súbor Vysvetlenie
LSASS lsass.exe Local Security Authority Subsystem Service – proces spravujúci autentifikáciu, obsahuje credentials
AMSI amsi.dll Antimalware Scan Interface – rozhranie pre skenovanie skriptov pred spustením
ETW - Event Tracing for Windows – systém pre diagnostiku a audit logging
SAM - Security Account Manager – databáza lokálnych používateľských účtov a hashov
GPO gpedit.msc Group Policy Object – centralizovaná správa nastavení Windows v doménovom prostredí

17.4 Štandardy a frameworky

Pojem Organizácia Vysvetlenie
CIS Center for Internet Security Nezisková organizácia publikujúca bezpečnostné benchmarky pre operačné systémy a aplikácie
NIST National Institute of Standards Americký vládny inštitút vydávajúci SP 800-53 a ďalšie bezpečnostné štandardy
MITRE ATT&CK MITRE Corporation Znalostná báza techník a taktík používaných útočníkmi, štandard pre threat modeling
STIG DISA (DoD) Security Technical Implementation Guide – bezpečnostné konfiguračné štandardy amerického ministerstva obrany
CVE MITRE/NVD Common Vulnerabilities and Exposures – štandardizované ID pre zraniteľnosti (napr. CVE-2019-0708)
CVSS FIRST Common Vulnerability Scoring System – číselné hodnotenie závažnosti zraniteľností (0-10)

17.5 Útoky a techniky

Pojem MITRE ID Vysvetlenie
Pass-the-Hash T1550.002 Použitie ukradnutého NTLM hashu pre autentifikáciu bez znalosti hesla
BYOVD T1068 Bring Your Own Vulnerable Driver – útočník prináša legitímny ale zraniteľný kernel driver
Credential Dumping T1003 Extrakcia credentials z pamäte, registry alebo súborov (Mimikatz)
DLL Hijacking T1574.001 Umiestnenie škodlivej DLL do search path pred legitímnu knižnicu
Lateral Movement TA0008 Šírenie útočníka v sieti z kompromitovaného systému na ďalšie
Responder Attack T1557.001 LLMNR/NBT-NS poisoning pre zachytávanie NTLM credentials v sieti
Cold Boot Attack T1005 Extrahovanie dát z RAM po reštarte pomocou chladenej pamäte
USB Drop Attack T1091 Úmyselné zanechanie infikovaných USB zariadení na verejných miestach

17.6 Nástroje

Nástroj Typ Použitie
Mimikatz Offensive/Red Team Extrakcia credentials z pamäte LSASS, Pass-the-Hash, Golden Ticket
Responder Offensive/Red Team LLMNR/NBT-NS/MDNS poisoner pre zachytávanie NTLM hashov
Sysinternals Defensive/Admin Sada nástrojov Microsoft pre diagnostiku (Process Monitor, Autoruns, Handle)
auditpol Built-in Príkaz pre konfiguráciu Windows Audit Policy
gpresult Built-in Zobrazenie aplikovaných Group Policy nastavení
msinfo32 Built-in System Information - overenie VBS/HVCI stavu