UWV Security SSD Instructies
BESTEMD VOOR AUTEUR(S) VERSIE DATUM
: : : :
Patrick van Grevenbroek Gabriele Biondo / T. Uding (vertaling) 1.0 20-03-2014
HISTORIE Datum
Auteur(s)
Omschrijving
20/03/2014
Gabriele Biondo / T. Uding (vertaling)
SSD Instructies ter ondersteuning
1/5
© VALORI 2011 ALLE RECHTEN VOORBEHOUDEN
SSD #
Omschrijving
Instructies
SSD-1
Systeem verharden en updaten
Periodiek bepalen welke gebruikers aanwezig zijn op systemen; Verwijder ongebruikte gebruikers; Periodiek controleren welke diensten op systemen draaien; Verwijder ongebruikte diensten; Periodiek bepalen welke programma's op systemen zijn geïnstalleerd; Verwijder ongebruikte programma's; Trek onnodige bevoegdheden in; Test patches; Patch na succesvol testen.
SSD-2
Veilige cookies
Enkele goede cookie ontleders (voor Firefox): https://addons.mozilla.org/it/firefox/addon/httpfox/; https://addons.mozilla.org/it/firefox/addon/view-cookies/; Vergeet niet dat een veilige cookie https aan heeft staan; Wat u ook zou willen zijn cookies met HttpOnly (geen AJAX).
SSD-3
SSD-4
Veilige FAT componenten (ActiveX, Flash, Java, ...) Data encryptie Wanneer gevoelige data wordt verzonden, gebruik HTTP POST methodes; Wanneer gevoelige data wordt verzonden, gebruik HTTPS; Vertrouw geen gesloten bron componenten van derde partijen, tenzij u precies weet wat de componenten doen; Overdrijf niet! Het kan zijn dat sterke encryptie niet nodig is: soms vertraagt het alleen de communicatie en het eindpunt is mogelijk niet congruent; Normale certificaten (X.509) gebaseerde encryptie is genoeg in de meeste gevallen.
SSD-5
Juiste autorisatie voor Controleer of er sterke (multifactor) systeem authenticatie externe gebruikers aanwezig is. Dit vereist twee of meer uit te voeren controles; Controleer of de verificatiegegevens voldoen aan het wachtwoordbeleid.
SSD-6
Juiste autorisatie voor Controleer of de 'haken' van het UWV interne Identity en interne gebruikers Access Management oplossing (ABS) aanwezig zijn; Controleer of de verificatiegegevens voldoen aan het wachtwoordbeleid.
SSD-7
Functiescheiding
SSD-8
2/5
Minste bevoegdheid
Geen enkele gebruiker mag controle hebben over een proces van begin tot eind; Implementeer scheiding van taken waar mogelijk; Implementeer 'kennis vereist' en 'minste bevoegdheid' waar mogelijk. Implementeer scheiding van taken waar mogelijk;
© VALORI 2011 ALLE RECHTEN VOORBEHOUDEN
SSD-9
Implementeer 'kennis vereist' en 'minste bevoegdheid' waar mogelijk; Voor de implementatie van 'kennis vereist' en de 'minste bevoegdheid', moet u begrijpen wat een gebruiker precies moet weten om zijn / haar dagelijkse taken uit te kunnen voeren en wat de minimale bevoegdheden zijn om zijn / haar taak uit te voeren. Controleer of Captcha's zijn geïmplementeerd;
Mislukte inlogpogingen
Controleer of mislukte inlogpogingen worden gelogd; Controleer of er een vertraging na twee mislukte logins, voor de derde, wordt opgelegd. SSD-10 Gelijktijdige sessiecontrole
Laat niet meer dan een sessie per gebruiker toe voor elke toepassing, zelfs vanaf verschillende computers.
SSD-11 Systeemgebruik notificatie
Wanneer u inlogt op een systeem, merk dan op dat de standaard 'banner' is vervangen door iets 'minder spraakzaam' vanuit een technisch perspectief, maar wel aangeeft dat het systeem eigendom is van het UWV, dat alle activiteiten worden gelogd en dat elke overtreding zal worden vervolgd; Niet een actie-item.
SSD-12 Sessieslot
Toepassingssessies moeten in het ergste geval geblokkeerd worden na 15 minuten (5 minuten is gewenst). Zorg ervoor dat elke actie die een toepassing kan verrichten, een vermelding in een logboek produceert; Zorg ervoor dat er niet kan worden geknoeid met logboeken; Zorg ervoor dat elke gebruiker uniek kan worden geïdentificeerd in logboeken. Implementeer rangschikken van sessies;
SSD-13 Verantwoording
SSD-14 Geauthenticeerde sessies
Controleer of de sessie serienummers echt willekeurig zijn; Controleer of de sessie serienummers veranderen wanneer een login / logout plaats vindt. SSD-15 Scheiding van Architectuur moet meerlaags zijn, het scheiden van gegevens, presentatie presentatie (bijv. een webserver), van bedrijfslogica en en toepassingslagen van data (database); De webserver hoort thuis in de DMZ;
SSD-16 Systeempositionering SSD-17 Management interfaces
3/5
Database, wanneer aanwezig, hoort NIET thuis in de DMZ, tenzij speciale zaken een dergelijke keuze rechtvaardigen; U kunt dit enkel controleren op basis van het HLD (High Level Design). Niet een actie-item. Geeft aan welke systemen in de DMZ geplaatst moet worden. Controleer of de webapplicatie een management interface heeft; Controleer of de logboeken management gerelateerde items bevatten; Houdt er rekening mee dat de gegevensbewaarder ook rechtstreeks toegang heeft tot de databases - dus misschien wilt u ook altijd de logs van de database controleren.
© VALORI 2011 ALLE RECHTEN VOORBEHOUDEN
SSD-18 HTTP normalisering
De webapplicatie moet het volgende valideren: HTTP headers; Cookies; XML, in alle vormen; Formulierparameters.
SSD-19 Invoer normalisatie SSD-20 Bescherming tegen ASCII injectie (uitvoer validatie)
Controleer of er 'witte lijsten' zijn die alleen onschadelijke tekens accepteren (zie de spiekbrief van Invoer Normalisatie voor meer info); Spiekbrief: https://www.owasp.org/index.php/Data_Validation. Het meest complete spiekbriefje met betrekking tot XSS: https://www.owasp.org/index.php/XSS_Filter_Evasion_C heat_Sheet; Zorg ervoor dat de gebruiker geen opdrachten kan injecteren in: URL's; Formuliervelden.
SSD-21 Geparametriseerde queries
Zorg ervoor dat opgeslagen procedures worden gebruikt waar mogelijk; Zorg ervoor dat de gebruiker geen SQL-instructies kan injecteren in: URL's; Formuliervelden. Een goede SQL injectie preventie spiekbriefje is: https://www.owasp.org/index.php/SQL_Injection_Preventi on_Cheat_Sheet; Een goede uitgebreide site is: http://www.sqlinjectionwiki.com/Categories/1/mssql-sqlinjection-cheat-sheet/. Spiekbriefje: https://www.owasp.org/index.php/Data_Validation; Ga na of de applicatie de invoer valideert aan de hand van witte lijsten (bij voorkeur) in plaats van zwarte lijsten (verouderd); Indien de applicatie niet valideert op alle input, geef dan een ernstige waarschuwing af.
SSD-22 Invoer validatie
SSD-23 Bestandsinvoeging
SSD-24 HTTP header validatie
SSD-25 HTTP headers informatielek
4/5
U zult de code moeten controleren om te zien of de applicatie het invoegen van externe bestanden toelaat; Wellicht wilt u op voorhand deze spiekbrief doornemen om de inhoud van hetgeen besproken in onze lessen weer vers in het geheugen te hebben: https://www.owasp.org/index.php/PHP_Security_Cheat_ Sheet. Controleer de informatie die de webserver meestuurt in de HTTP-headers zorgvuldig; Controleer vooral dat de webserver de TRACE en OPTIONS methoden niet accepteert; De PUT methode mag niet zijn ingeschakeld, tenzij dit noodzakelijk is. De server versie en patch niveau mogen niet worden opgenomen in de normale HTTP-header.
© VALORI 2011 ALLE RECHTEN VOORBEHOUDEN
SSD-26 HTTP methodes
SSD-27 Foutafhandeling
Controleer de informatie die de webserver meestuurt in de HTTP-headers zorgvuldig; Controleer vooral dat de webserver de TRACE en OPTIONS methoden niet accepteert; De PUT methode mag niet zijn ingeschakeld, tenzij dit noodzakelijk is. Beheer fouten altijd op een gracieuze manier;
SSD-30 Veiligheid monitoring
Vooral nooit toestaan dat fouten de systeeminformatie prijsgeven; Een test die u altijd moet uitvoeren is het zoeken naar een niet-bestaande pagina om vervolgens te bekijken of sommige web-server specifieke fouten worden weergegeven. Verwijder altijd aantekeningen uit productiecode / controleer of er geen aantekeningen aanwezig zijn in de productiecode. Zeer oude aanval, maar gebeurt soms nog. Spiekbriefje vindt u hier: https://www.owasp.org/index.php/Path_Traversal; Een goed middel om mee te testen: http://dotdotpwn.sectester.net/. Niet een actie-item.
SSD-31 Systeemcertificering
Niet een actie-item.
SSD-28 Aantekeningen
SSD-29 Padtraverse
5/5
© VALORI 2011 ALLE RECHTEN VOORBEHOUDEN