
In deze post het derde en laatste gastblog van Matthieu Paques over praktijkvoorbeelden van phishing en social engineering. Deel 1 hier en deel 2 daar. Enjoy!
Het is even over achten als ik mijn auto op een kleine honderd meter afstand van het pand van één van onze klanten neerzet. Ik heb eerder vastgesteld dat de meeste medewerkers met de auto komen en deze achter het hoofdkantoor neerzetten op de besloten parkeerplaats, dus het lijkt me het beste om dit patroon te volgen omdat het lopend de parkeerplaats opgaan al mogelijk de aandacht trekt. In mijn spiegel houd ik in de gaten of er medewerkers aan komen rijden. Na een minuut of 10 verschijnt er een grijze personenauto. Zodra de wagen mij passeert, voeg ik in en volg op korte afstand. Helaas rijdt de auto het pand van het doelwit van vandaag voorbij en word ik gedwongen via een rondje weer terug te gaan naar mijn beginpositie. De tweede keer heb ik meer geluk en kan ik, nadat de medewerker met zijn personeelspas de slagboom heeft geopend, op korte afstand volgen tot op het besloten parkeerterrein achter het pand. Ik wacht even tot de medewerker uit de auto voor mij via de personeelsingang aan de achterzijde het pand is ingegaan en loop naar de rookplek vlak voor de ingang. Ik pak het nieuwe pakje sigaretten uit mijn zak, steek er één aan. Gelukkig zijn er geen camera’s aan deze zijde van het pand dus kan ik hier rustig even blijven hangen tot er een nietsvermoedende medewerker aanhaakt om te komen roken met deze niet-roker die voor de gelegenheid maar even met een sigaret staat te zwaaien. Op gegeven moment verschijnt er een dame die zich bij mij voegt om ook te roken, we maken een praatje en lopen gezamenlijk – door met haar personeelspas de deur te openen - het pand in. Binnen! Ik besluit gelijk maar in volgmodus het trappenhuis in te lopen, want deze klant heeft zo te zien ook paslezers bij de deuren naar de verschillende verdiepingen aangebracht.
Ik volg haar naar de 4e etage en betreed, opnieuw doordat zij netjes de deur voor ons opent, de verdieping. Gelukkig staat er een koffieapparaat dus kan ik daar de verdieping observeren zonder mezelf klem te lopen in één of ander doodlopend deel van het pand. Even verderop blijken wat vergaderruimte-achtige werkplekken te zitten. Ik neem mijn koffie mee, trek in de vergaderzaal de kabel uit de VoIP-telefoon en prik deze in mijn laptop. Terwijl mijn laptop opstart, werp ik een blik op de stapel papier die ik zojuist in het langslopen uit de verzamelbak naast de printer heb meegegrist. Onder andere e-mails, met een hoop mailadressen van medewerkers in de ‘To’ en ‘CC’ velden. Mooi zo! Dit worden mijn ‘slachtoffers’ in de volgende aanval.
Mijn laptop is inmiddels opgestart en ik start een poortscan op poort 80 op de nabijgelegen IP adressen op zoek naar wat interne webpagina’s. Tevens probeer ik via mijn webbrowser een aantal voor de hand liggende url’s. ‘intranet.klantnaam.nl’,’ intraweb.klantnaam.nl’, ‘search.klantnaam.nl’, ‘telefoongids.klantnaam.nl’. Na niet al te lang zoeken heb ik een interne webpagina gevonden. Ik kopier de pagina en pas wat teksten aan en na een kwartiertje heb ik een “medewerker van de maand ” verkiezingspagina in elkaar gezet die er precies zo uitziet als de pagina’s van het bedrijf zelf inclusief bijbehorende logo’s en kleuren. Vervolgens start ik de webserver op mijn eigen laptop zodat de zojuist gemaakte pagina vanaf het interne netwerk kan worden benaderd.
Door een tweede beperkte poortscan weet ik een interne mailserver te identificeren waarop mail relaying aanstaat (waardoor anoniem email verstuurd kan worden). Ik ben inmiddels zeker 20 minuten in het pand en nog niemand heeft me tot nu toe vragen gesteld over wat ik hier doe. Nu richt ik me weer op de ‘slachtoffers’. Via de mailserver stuur ik allereerst een mail met een vals extern e-mailadres dat ik vanuit mijn spamfolder heb gekopieerd naar een deel van de adressen in de uitgeprinte e-mails. Ik hoop op deze test-emails een out-of-office bericht terug te krijgen van één van de medewerkers. Wanneer ik deze inderdaad retour krijg, kopieer ik de ondertekening en pas naam en functie aan naar een fictieve naam. Ik heb nu een webpagina én een e-mailbericht die er precies zo uitzien alsof ze van de eigen organisatie zijn. Vervolgens zet ik in de email een Reminder van de uitnodiging voor de “medewerker van de maand” verkiezing. De mail geeft aan dat een willekeurig gekozen selectie van medewerkers één van hun collega’s kan nomineren voor deze prijs. Dit kan via een interne webpagina waarvan de link onderaan de email is opgenomen. Uiteraard moet wel worden ingelogd om te voorkomen dat mensen dubbele stemmen uitbrengen. De reminder geeft aan dat degene die de eerste mail hebben gemist nog tot 12:00 uur dezelfde dag de kans hebben om hun stem uit te brengen. Ik switch naar een tweede venster waar ingetoetste wachtwoorden zullen verschijnen en wacht rustig af tot de eerste enthousiastelingen hun wachtwoord inkloppen. Dit duurt op de kop af twee minuten na het versturen van de e-mail.
Met het inloggen op de site hebben de medewerkers automatisch naast hun wachtwoord ook hun gebruikersnaam en IP adres achtergelaten. Dit is voor mij alle informatie die ik nodig heb en ik start Metasploit (een hackers toolkit) en log hiermee op afstand in op de pc van de eerste enquête-deelnemer. Inmiddels heb ik de gebruiker ook teruggevonden in de interne online telefoongids. Helaas blijkt de eerste medewerker op de financiële afdeling te werken. In deze fase ben ik meer op zoek naar een IT-beheerder omdat deze vaak hoge gebruikersrechten hebben en daarmee toegang tot een groot aantal of alle systemen. Ik besluit een dump te maken van de lokale wachtwoord-hashes. Met de hash van de lokale administrator account probeer ik vervolgens te authenticeren tegen het systeem van een willekeurige andere gebruiker op het netwerk. Deze “truc” heeft al bij verschillende klanten gewerkt en blijkt ook nu succesvol. Inmiddels ben ik zo’n drie kwartier binnen zonder dat dit iemand is opgevallen en heb ik reeds twee systemen volledig overgenomen. Helaas werkt de hash niet op de Domain controller dus besluit ik net zo lang op systemen in te loggen tot ik een systeem tref waar een gebruiker (of proces) aanwezig is met hoge rechten (bijvoorbeeld de IT-beheerder). Na 20 minuten vind ik een systeem waarop een IT-beheerder is ingelogd. De tool ‘Metasploit’, die overigens gratis te downloaden is, heeft een ingebouwde functie om de identiteit, en daarmee alle rechten van een gebruiker over te nemen. Nadat ik de identiteit van IT-beheerder heb overgenomen heb ik domain administrator rechten en volledige toegang tot alle Windows-systemen en daarop aanwezige data op het netwerk, inclusief alle servers met financiële administratie en de mailboxen van de directie. Ik maak wat screenshots en vind dat het tijd is voor een tweede kop koffie.
Uit bovenstaand praktijkvoorbeeld blijkt dat het niet altijd van belang is hoeveel medewerkers daadwerkelijk in de trucs van een social engineer trappen. In deze specifieke situatie was het voor een buitenstaander al voldoende om slechts 2 medewerkers te misleiden om vervolgens de volledige IT -omgeving te kunnen overnemen.
Mocht je naar aanleiding hiervan meer willen weten, neem dan gerust contact op met Matthieu: paques.matthieu@kpmg.nl.