administrator account verwijderen, andere beheerdernaam hiervoor met administrator rechten in de plaats.
automatische updates uit. gast accounts etc even controleren, allemaal uit.
netwerk instellingen controleren, alles uit wat niet hoogst noodzakelijk is. dus geen dhcp nodig? uit. geen ipv6 nodig? uit.
services die niet noodzakelijk zijn, uitzetten.
Aparte gebruiker dan standaard IIS gebruiker, map rechten daaraan aanpassen en niet beschrijfbaar maken voor webserver gebruiker.
Alle input liefst via wat PERL laten checken, daarbij aangeven wat mag, rest mag niet en dan PERL/CGI input laten doorstoten naar je site, waarop je site controleert (of de input uit CGI doorgeschoven is zeg maar)
Alle input via HTTP POST en niet GET, liefst versleuteld of anders gecodeerd.
Voor huis tuin en keuken gebruik, liefst flat database buiten je webroot mappen en anders SQL alleen van binnen aan te roepen en merendeel query hardcoded, dus geen table namen dynamisch in je script en maximum lengte input definiëren, naast ook hier liefst alle input via CGI doorgeven en pas goed op met s/// checks. Liever eenvoudig als via pos().
Dan geen versie propagatie, alternatieve error documenten. Wat IDS software is ook handig.
Maar ja, wat is 'veilig', wat heb je nodig, voor een standaard huis tuin en keuken site hoeft het niet zo heel ingewikkeld hoor, hoef je geen IDS voor aan te schaffen, is wel handig om HTTP(S) communicatie te controleren.
opletten met upload functies ook, bestandstypen nachecken, door antivirus trekken, geen executables/script bestanden, bij plaatjes bijvoorbeeld eenvoudigweg alleen JPEG/GIF toestaan. Nog beter GIF, lastiger te manipuleren. Ook hier, opletten bij bestandsgrootte en bestandsnamen.
Google maar voor de rest, het is niet zo moeilijk, afhankelijk van wat je wil is het meeste wel toereikend.