Tijdens Security BootCamp heb ik samen met Security Analyst Rob de presentatie wargames – Red Teaming versus Blue Teaming gegeven. Dit artikel is bedoeld als ondersteuning van de presentatie, zodat u alle technieken en aanbevelingen nog eens rustig door kunt nemen.

De onderstaande technieken zijn behandeld:

Internet verkenning

Door het raadplegen van publiek toegankelijke bronnen wordt informatie opgevraagd over een organisatie, gebruikte software en gebruikte hardware.

Door een lijst op te stellen van medewerkers, met daaraan gekoppeld de emailadressen, is het mogelijk om een gerichte social engineering aanval uit te voeren (spear phishing). De informatie over de gebruikte software en hardware kan gebruikt worden voor het opstellen van een aanval strategie.

Bovenstaande is niet volledig te verdedigen. Men dient zich bewust te zijn van de informatie dat via publieke bronnen te vinden is. Daarnaast kunnen medewerkers, leveranciers en interimmers getraind worden om zo min mogelijk informatie op internet te plaatsen.

Maak gebruik van alle beschikbare bronnen, maar de bekendste zijn:

  • zoekmachines als Google;
  • indexeringmachines als Shodan.

Social Engineering

Social Engineering is de kunst van het verleiden van een mens om een actie te laten uitvoeren welke zij eigenlijk niet uit willen voeren. Het meest bekende voorbeeld is (spear)phishing. Bij phishing wordt een mail gestuurd naar een medewerker met het doel om deze medewerker te verleiden tot een actie, bijvoorbeeld het klikken op een link.

Andere vormen van Social Engineering zijn:

  • Dumpster diving – Hier wordt gezocht naar vertrouwelijke informatie in (vuil)containers;
  • Tailgating – Door achter een medewerker aan te lopen kan toegang tot een gebouw verkregen worden;
  • Pretexting – Door je voor te doen als iemand anders (postbode, arts, medewerker in uniform) kan toegang tot een gebouw verkregen worden.

In de presentatie is een voorbeeld gegeven van een phishing actie waarbij de gebruiker een kwaadaardig document opent. Het openen van het document zorgt er voor dat een verbinding met een extern systeem (in dit geval de laptop van de kwaadwillende) opgezet wordt.

Met toegang tot het systeem kan de kwaadwillende zijn/haar rechten verhogen op het systeem om daarna de gehashte wachtwoorden te achterhalen.

Ter verdediging is het belangrijk om medewerkers (continu) te blijven trainen, zodat zij bewust zijn van de gevaren en mogelijke Social Engineering aanvallen kunnen herkennen. Om niet alles aan een medewerker over te laten is het van belang om de endpoints (de systemen van de medewerkers) te beschermen. Daarnaast is het principe least privilege van belang om te voorkomen dat een kwaadwillende gelijk de volgende aanval in kan zetten.

Natuurlijk kan men er voor proberen te zorgen dat er zo weinig mogelijk phishing mails binnen de organisatie komen.

Pass-the-hash

Meerdere authenticatiesystemen van Windows zijn kwetsbaar voor een pass-the-hash aanval. Deze authenticatiesystemen gebruiken het gehashte wachtwoord om zich te authentiseren tegen andere systemen. Een goed voorbeeld hiervan is bijvoorbeeld bij het ophalen van shares.

Een kwaadwillende die in staat is de wachtwoord hashes te achterhalen kan dezelfde techniek toepassen door de combinatie van gebruikersnaam en wachtwoord hash te gebruiken tegen andere systemen.

Must haves:

  • beperk en bescherm domain accounts met verhoogde rechten;
  • beperk en bescherm lokale accounts met administratieve rechten;
  • beperk inkomend verkeer middels de Windows firewall;
  • systemen en applicaties dienen up-to-date te blijven;

Should haves:

  • verwijder standaard accounts van de local administrators groep;
  • configureer outbound proxies om internet toegang voor accounts met verhoogde rechten te blokkeren;
  • zorg er voor dat administratieve accounts geen e-mail accounts hebben;
  • zorg er voor dat administratieve accounts niet hetzelfde wachtwoord delen;
  • maak gebruik van remote management tooling die geen herbruikbare credentials in het geheugen plaatst;
  • vermijd logons naar minder beveiligde systemen;
  • verwijder LM hashes.

Impersonation van Delegation token

Het komt vaak voor dat medewerkers met verhoogde rechten (zoals Domain Administrators) inloggen op meerdere systemen. Bij bijvoorbeeld het inzien van een share middels de credentials van het verhoogde account worden tokens achter gelaten. Deze (delegation)tokens kunnen door een kwaadwillende overgenomen worden. Hierdoor verkrijgt de kwaadwillende ook alle rechten die aan de token gekoppeld zijn. De bovenstaande must haves en should haves beperken dit risico, en kan vanaf Windows Server 2012 nog meer beperkt worden door de checkbox “Account is sensitive and cannot be delegated” aan te vinken. De checkbox is te vinden bij de “Domain admin” properties.

Het gebruik van een delegation token kan geïdentificeerd worden door in de Windows Event Logger te kijken naar event 4624.

DCSync

Met het verkrijgen van de hoogste rechten binnen een netwerk is het mogelijk om middels DCSync accountgegevens op te vragen van alle gebruikers. Onder deze gegevens valt ook het gehashte wachtwoord, welke weer gebruikt kan worden voor een pass-the-hash aanval.

De aanvraag middels DCSync is te detecteren. Hiervoor is het eerst noodzakelijk om de IP-adressen van Domain Controllers in kaart te brengen. Dit kan bijvoorbeeld met het onderstaande PowerShell commando:

[System.DirectoryServices.ActiveDirectory.Domain]::GetCurrentDomain().DomainControllers | select IPAddress

Door een IDS trigger in te stellen dat een alert genereert als een (protocol: DSRUAPJ) DsGetNCchange request van een IP-adres afkomstig is, dat niet in de whitelist (de lijst met valide Domain Controllers) staat.

Tevens komen de requests in de Windows Event Logging terecht.

Door de genoemde must haves en should haves te implementeren wordt het risico op de bovenstaande aanvallen verkleind. Dit is een langdurig proces, maar geeft uiteindelijk meer controle over het netwerk.