Windows Server STIG-naleving automatiseren met STIG-scripts
**Download alle benodigde bestanden van de GitHub Repository
Noot: Dit script zou voor de meeste, zo niet alle, systemen zonder problemen moeten werken. Terwijl @SimeonOnSecurity creates, reviews, and tests each repo intensively, we can not test every possible configuration nor does @SimeonOnSecurity take any responsibility for breaking your system. If something goes wrong, be prepared to submit an issue Voer dit script niet uit als u niet begrijpt wat het doet. Het is uw verantwoordelijkheid om het script te controleren en te testen voordat u het uitvoert.
Ansible:
We bieden nu een playbookverzameling voor dit script. Zie het volgende: - Github Repo - Ansible Galaxy
Introductie:
Windows 10 is onveilig besturingssysteem uit de doos en vereist veel veranderingen om te verzekeren FISMA naleving. Organisaties zoals Microsoft , Cyber.mil , the Department of Defense , and the National Security Agency hebben aanbevolen en vereiste configuratiewijzigingen om het besturingssysteem te vergrendelen, te verharden en te beveiligen en de naleving door de overheid te waarborgen. Deze wijzigingen bestrijken een breed scala aan mitigaties, waaronder het blokkeren van telemetrie, macro’s, het verwijderen van bloatware en het voorkomen van vele fysieke aanvallen op een systeem.
Standalone systemen behoren tot de moeilijkste en vervelendste systemen om te beveiligen. Wanneer ze niet geautomatiseerd zijn, moeten ze handmatig worden gewijzigd in elke STIG/SRG. In totaal meer dan 1000 configuratiewijzigingen bij een typische implementatie en een gemiddelde van 5 minuten per wijziging staat gelijk aan 3,5 dag werk. Dit script wil dat proces aanzienlijk versnellen.
Opmerkingen:
- Dit script is ontworpen voor gebruik in Enterprise omgevingen en gaat ervan uit dat u hardware ondersteuning heeft voor alle vereisten.
- Voor persoonlijke systemen zie dit GitHub Repository
- Dit script is niet ontworpen om een systeem tot 100% conformiteit te brengen, maar dient eerder als een opstapje om de meeste, zo niet alle, configuratiewijzigingen te voltooien die met een script kunnen worden uitgevoerd.
- Zonder systeemdocumentatie zou deze verzameling u tot ongeveer 95% conformiteit moeten brengen voor alle toegepaste STIGS/SRG’s.
Vereisten:
- Windows 10 Enterprise is vereist per STIG.
-[X]
Standards
voor een zeer veilig Windows 10-apparaat
-[X] System is
fully up to date
- Voer de Windows 10 Upgrade Assistant om de laatste grote release bij te werken en te verifiëren.
- X] Bitlocker moet worden opgeschort of uitgeschakeld voordat dit script wordt uitgevoerd, het kan weer worden ingeschakeld na opnieuw opstarten.
- Vervolg runs van dit script kunnen worden uitgevoerd zonder Bitlocker uit te schakelen.
- X] Hardwarevereisten - Hardware Requirements for Memory Integrity - Hardware Requirements for Virtualization-Based Security - Hardware Requirements for Windows Defender Application Guard - Hardware Requirements for Windows Defender Credential Guard
Aanbevolen leesmateriaal:
- System Guard Secure Launch - System Guard Root of Trust - Hardware-based Isolation - Memory integrity - Windows Defender Application Guard - Windows Defender Credential Guard
Een lijst van scripts en gereedschappen die deze collectie gebruikt:
- Cyber.mil - Group Policy Objects - Microsoft Security Compliance Toolkit 1.0
Aanvullende configuraties werden overwogen van:
- Microsoft - Recommended block rules - Microsoft - Recommended driver block rules - Microsoft - Windows Defender Application Control - NSACyber - Application Whitelisting Using Microsoft AppLocker - NSACyber - Hardware-and-Firmware-Security-Guidance - NSACyber - Windows Secure Host Baseline
STIGS/SRG’s toegepast:
- Adobe Acrobat Pro DC Continuous V2R1 - Adobe Acrobat Reader DC Continuous V2R1 - Firefox V5R2 - Google Chrome V2R4 - Internet Explorer 11 V1R19 - Microsoft Edge V1R2 - Microsoft .Net Framework 4 V1R9 - Microsoft Office 2013 V2R1 - Microsoft Office 2016 V2R1 - Microsoft Office 2019/Office 365 Pro Plus V2R3 - Microsoft OneDrive STIG V2R1 - Oracle JRE 8 V1R5 - Windows 10 V2R2 - Windows Firewall V1R7
Beleid bewerken in Lokaal Groepsbeleid achteraf:
- Importeer de ADMX-beleidsdefinities van deze repo in C:\windowsPolicyDefinitions op het systeem dat u probeert te wijzigen.
- Openen
gpedit.msc
op het systeem dat je probeert aan te passen.
Hoe voer je het script uit:
Geautomatiseerde installatie:
Het script kan vanaf de uitgepakte GitHub-download als volgt worden gestart:
iex ((New-Object System.Net.WebClient).DownloadString('https://simeononsecurity.com/scripts/standalonewindows.ps1'))
Handmatige installatie:
Indien handmatig gedownload, moet het script gestart worden vanuit de map die alle andere bestanden van de GitHub Repository
Alle parameters in het script “secure-standalone.ps1” zijn optioneel, met als standaardwaarde $true. Dit betekent dat als voor een parameter geen waarde wordt opgegeven wanneer het script wordt uitgevoerd, deze wordt behandeld alsof deze is ingesteld op $true.
Het script gebruikt de volgende parameters, die allemaal optioneel zijn en standaard op $true staan als ze niet zijn opgegeven:
- cleargpos: (Boolean) Wis GPO’s die niet worden gebruikt.
- installupdates: (Boolean) Installeer updates en herstart indien nodig.
- adobe: (Boolean) STIG Adobe Reader
- firefox: (Boolean) STIG Firefox
- chrome: (Booleaans) STIG Chrome
- IE11: (Booleaans) STIG Internet Explorer 11
- edge: (Booleaans) STIG Edge
- dotnet: (Booleaans) STIG .NET Framework
- office: (Boolean) STIG Office
- onedrive: (Booleaans) STIG OneDrive
- java: (Boolean) STIG Java
- windows: (Boolean) STIG Windows
- defender: (Boolean) STIG Windows Defender
- firewall: (Boolean) STIG Windows Firewall
- mitigations: (Boolean) STIG Mitigations
- nessusPID: (Boolean) Resolve Unquoted Strings in Path
- horizon: (Boolean) STIG VMware Horizon.
- sosoptional: (Boolean) Optionele STIG/Hardende items
Een voorbeeld van het uitvoeren van het script met alle standaardparameters zou zijn:
.\secure-standalone.ps1
Als u voor een of meer van de parameters een andere waarde wilt opgeven, kunt u deze samen met de gewenste waarde in het commando opnemen. Als u bijvoorbeeld het script wilt uitvoeren en de parameter $firefox wilt instellen op $false, zou het commando zijn:
.\secure-standalone.ps1 -firefox $false
U kunt ook meerdere parameters in het commando opgeven, zoals dit:
.\secure-standalone.ps1 -firefox $false -chrome $false
Merk op dat in dit voorbeeld zowel de Firefox- als de Chrome-parameters zijn ingesteld op $false.