Pentesting Stories: Hard shell, soft center

Blog door Danut Niculae, Security Consultant Operations Center

Soms wordt u onder druk gezet door een budget, tijd of beide. Wij begrijpen dit. Dus wanneer een verzoek wordt ontvangen in de trant van: “Kunt u snel een paar dagen investeren om het volgende te checken …”, wordt het serieus genomen. Een snelle controle is meestal beter dan helemaal geen controle. In dit geval ontvingen wij een verzoek om te zien wat er kon worden bereikt als wij enkele dagen in dit project investeerden. Het doel was om te beoordelen wat er zal gebeuren wanneer een aanvaller het kantoor binnen stapt en verbinding maakt met het netwerk.

SCAN

1. SCAN

Toen we eenmaal verbonden waren, zagen we als eerste dat we ons in een Microsoft Windows Domain-omgeving bevonden. Het was up-to-date en gepatcht. Een ding wat we van Windows weten is dat het een standaard vertrouwensmodel heeft. Dit model houdt in: zodra u binnen bent, wordt u vertrouwd.

PHISHING

2. PHISHING

Er zijn meerdere manieren om dit model te benaderen. Een van onze favoriete manieren is om een gebruiker met phishing te misleiden om een e-mail te openen met een verborgen, kwaadaardig SCF-bestand. Dit bevat een link naar een pictogram van de computer van onze pentester. Omdat het apparaat het pictogram ophaalt van een Service Message Block (SMB)-verbinding, moet het zichzelf eerst identificeren en verifiëren voordat we het pictogram kunnen ophalen. Dit houdt in dat NTLMv2 wachtwoord hashes worden verstuurd, welke wij op kunnen vangen. Voor het uitvoeren van phishing hadden wij geen tijd, dus hebben wij een andere methode gebruikt.

MULTICAST

3. LINK-LOCAL MULTICAST NAME RESOLUTION

Het proces dat we gebruikten was ‘Link-Local Multicast Name Resolution’ (LLMNR). Met dit proces konden we namen omzetten zonder verbonden te zijn met DNS-servers. Het is gebaseerd op het standaard vertrouwensmodel en is standaard ingeschakeld, waardoor het uitgebuit kan worden. Hoewel er goede argumenten zijn tegen LLMNR, en je het kunt uitschakelen, zal dit waarschijnlijk problemen veroorzaken, vooral met oudere applicaties. Dus voor alle praktische doeleinden is het proces altijd ingeschakeld.

HIJACK

4. HIJACK LLMNR

Hadden we maar een manier om LLMNR-queries te kapen. De kunst is om luider te schreeuwen dan je buurman. “Hé, ik weet wie dit is!”. Hiervoor is een handige tool beschikbaar van SpiderLabs, een Amerikaans bedrijf. De tool luistert naar LLMMNR-queries en reageert hierop met de melding dat wij het systeem zijn waar het potentiële slachtoffer naar zoekt. Omdat het systeem en gebruiker van de slachtoffer tot het Windows Domein behoren, zal het systeem de credentials en identiteit validatie via een versleutelde manier versturen naar de aanvaller.

ACCESLEVEL

5. HET HOOGSTE TOEGANGSNIVEAU VERKRIJGEN

We hebben op deze manier honderden wachtwoord hashes verzameld. Deze hashes kunnen we doorsturen naar een andere machine, toegankelijk voor een domain admin. Zodra de hashes uitgestuurd worden door een beheerder, geven we deze hashes door aan een systeem en verkrijgen we het hoogste toegangsniveau op een Windows-machine; System.

MEMORY

6. MEMORY SCRAPING

Omdat we nu toegang hebben tot een systeem waarop de domeinbeheerder actief was, kunnen we het geheugen van het systeem ‘schrapen’. In het bijzonder het LSASS-proces, dat het beveiligingsbeleid afdwingt. Uit het geheugen hebben we het wachtwoord in platte tekst verkregen; domeinbeheerder.

GOLDEN TICKET

7. GOLDEN TICKET

Met dit beheerderswachtwoord hebben we een ‘golden ticket’ gegenereerd, wat betekent dat we het complete domein voor meerdere jaren gecompromitteerd hebben.

DOMAINCONTROLLER

8. DOMAIN CONTROLLER SYNC

Nadat we een domeinbeheerder hadden, hebben we een secundaire techniek gebruikt genaamd Domain Controller Sync (DCSync). DCSync vertelt de Domain Controller (DC)  dat er een secundaire domeincontroller is en dat we de gebruikers graag willen synchroniseren. De DC stuurt ons vervolgens de wachtwoord hashes van alle gebruikers in het systeem.

COMPROMISE

9. VOLLEDIGE DOMEIN OVERNAME

Uiteindelijk zijn we met behulp van LLMNR in het bezit gekomen van bijna alle alle wachtwoord hashes, in dit geval duizenden. Voor alle zekerheid hebben we ze in onze kantoren geprobeerd te kraken, om te controleren op alternatieve manieren om toegang te verkrijgen. We waren verrast om te ontdekken dat we er binnen enkele dagen in waren geslaagd om de helft ervan te kraken, op bescheiden hardware. Dit betekent dat, zelfs als de aanvankelijk gecompromitteerde accounts werden geblokkeerd of uitgeschakeld, we op verschillende manieren terug in het domein kunnen komen.

De ‘Golden Ticket’ aanval wordt gebruikt door aanvallers om domeinpersistentie te verkrijgen. De techniek maakt gebruik van het ontbreken van validatie op het Kerberos authenticatieprotocol om een ​​bepaalde gebruiker (geldig of ongeldig) na te bootsen. Dit komt door het feit dat gebruikers die een Ticket-Granting Ticket (TGT) hebben in hun huidige sessie, door Kerberos als vertrouwd beschouwd worden en daardoor toegang krijgen tot elke resource in het netwerk.

Lessons learned

Dit was een typisch geval van ‘Hard Shell, Soft Center’. Zodra de organisatie ons netwerktoegang en een ruimte bood om toegang te krijgen tot het netwerk, waren we al in de ‘Soft Center’ en binnen een dag was het domein volledig gecompromitteerd. Dit komt door verschillende problemen met de ‘Soft Center’ architectuur. Er was namelijk een beperkte segmentering, een open vertrouwensmodel en een open netwerk.

Bovendien houdt het eenvoudig breken van duizenden wachtwoorden in dat veel wachtwoorden ‘geraden’ kunnen worden. Met behulp van verschillende wachtwoordenlijsten met bekende wachtwoorden hebben we de helft kunnen kraken. Er is altijd een balans tussen bruikbaarheid en complexiteit van wachtwoorden, maar hier was de balans duidelijk niet goed.

Een paar dagen is over het algemeen te kort voor een grondige, waardevolle beoordeling van een applicatie of architectuur. In dit geval kon de klant echter in een eerste conceptbeweging een budget rechtvaardigen voor een meer diepgaand onderzoek. Het helpt ons dat de IT-beveiligingsgemeenschap geweldige tooling blijft delen, maar houd er rekening mee dat criminelen ook toegang hebben tot deze tools.

Voor een hacker is ‘hard shell, soft center’ een droomscenario. Hoe limiteert u de gevolgen?

  • Limiteer de toegang van de hacker op het netwerk zo veel mogelijk.

  • Gebruik netwerk segmentatie, zodat hackers tegen obstakels aanlopen wanneer zij verder proberen te komen.

  • Detecteer vreemd gedrag op het netwerk, zoals de hijacking tool, en richt een process in om alert op te volgen.

hard-shell-soft-center

Ook interessant voor u…

pentest-stories

Lees meer Pentesting Stories

hacker-thumb

Vraag een penetratietest aan voor uw organisatie

blogs_thumb

Maandelijks interessante content ontvangen? Schrijf u in voor de nieuwsbrief!