Informatieverzameling [bijgewerkt 2019]
Inleiding tot informatieverzameling
penetratietest begint met een pre-engagement fase waarin de pen tester kennis maakt met de cliënt, de doelen, beperkingen en reikwijdte van de penetratietest. Daarna, de pen tester begint de werkelijke penetratie test en meestal gaat met een informatie verzamelen inspanning waarin de pen tester lokaliseert publiek beschikbare informatie met betrekking tot de klant en zoekt manieren die kunnen worden benut om in de systemen te krijgen. In deze fase maakt de pen tester ook gebruik van tools zoals poortscanners die hem/haar kunnen helpen om inzicht te krijgen in de systemen in het netwerk en de software die erop staat. Met behulp van die informatie, de pen tester kan lokaliseren welke impact de verschillende bevindingen kunnen hebben op de client en de kwetsbaarheid analyse deel kan doorgaan waar de gevonden informatie wordt gebruikt om mogelijke kwetsbaarheden in de systemen en de daaropvolgende exploitatie fase waar de kwetsbaarheden worden geprobeerd te benutten om in het systeem te krijgen. Dus, zonder goede informatie verzamelen – er zou geen kwetsbaarheden te vinden en te exploiteren.
nu is het tijd om een belangrijk onderscheid te maken – dat tussen passieve en actieve informatieverzameling. Passieve informatieverzameling verwijst naar het verzamelen van zoveel mogelijk informatie Zonder contact te leggen tussen de pen tester (uzelf) en het doel waarover u informatie verzamelt. Actieve informatieverzameling houdt contact in tussen de pen tester en het eigenlijke doel. Wanneer u actief query systemen om de informatie die u verhuist naar een donkere juridische situatie als de meeste landen verbieden pogingen om in te breken in systemen zonder de nodige toestemming te krijgen. Dus, als je geen toestemming hebt om een systeem te testen (een get-out-of-jail-free kaart) is het geen goed idee om er actieve querying tegen uit te voeren. Als u bijvoorbeeld Nmap gebruikt om open poorten en toepassingen op een gewenst remote systeem te vinden, werkt u actief met dat systeem in een poging om zwakke punten te vinden en als u een Whois lookup doet, op de website van het bedrijf surft of de zoekmachines zoekt naar informatie over het bedrijf, verzamelt u passief informatie. Een voorbeeld van actieve informatieverzameling is het bellen van bedrijfspersoneel en een poging om hen te verleiden tot het onthullen van bevoorrechte informatie.
de fase vóór de aanval kan als volgt worden beschreven:passieve informatieverzameling om voorlopige informatie over de systemen, hun software en de mensen die betrokken zijn bij het doel te ontdekken.
passieve Informatieverzamelingshulpmiddelen
theHarvester
We kunnen de Harvester gebruiken om e-mails over doeldomeinen te verzamelen. We kunnen deze e-mails gebruiken om social engineering te starten of andere aanvallen te lanceren. De Harvester is een tool gebouwd in Python, dus om het uit te voeren zou je Python nodig hebben op je machine en bij voorkeur toegevoegd aan je PATH omgevingsvariabele. U kunt Python downloaden van https://www.python.org/downloads/. Als je git op je machine hebt, kun je je Terminal openen, naar een gewenste map navigeren en git clone https://github.com/laramies/theHarvester.git
typen om het gereedschap te downloaden. Anders zou je gewoon de GitHub repository moeten openen, op “Clone or download” klikken en de broncode als ZIP downloaden. Zodra u het hebt geïnstalleerd, kunt u uw opdrachtregel/Terminal openen en navigeren naar de map waarin u de Harvester hebt geïnstalleerd en typ python theHarvester.py om het hulpscherm te krijgen.
figuur 1: het hulpscherm van de Harvester moet er ongeveer zo uitzien
nu, als we naar e-mails in het domein willen zoeken dimoff.biz we kunnen een query als deze uitvoeren:
python theHarvester.py -d dimoff.biz -l 100-b google
Dit zal zoeken naar e-mails in Google in dimoff.biz en zal de zoekopdracht beperken tot de eerste 100 query resultaten in Google.
Figuur 2: geen e-mails gevonden in mijn domein omdat ik ze heb verduisterd
laten we proberen te zoeken naar e-mails op de website van het InfoSec Instituut. We typen dezelfde query maar veranderen het domein: python theHarvester.py -d infosecinstitute.com -l 100-b google
Figuur 3: De query voor e-mails in InfoSec Institute kwam met vier e-mails die we potentieel kunnen profiteren van
om ons onderzoek te verbeteren, kunnen we proberen de zoekopdracht met verschillende zoekmachines. Als we zoeken naar e-mails binnen de eerste 30 resultaten van de Yahoo ‘ s zoekmachine we eindigen met slechts één e-mail, maar het is anders dan de vier die we hebben verzameld met Google. We typen python theHarvester.py -d infosecinstitute.com -l 20-B yahoo en eindigen met de volgende uitvoer:
Figuur 4: Harvester search met Yahoo leverde een ander resultaat op
zoals u misschien hebt opgemerkt, geeft de Harvester naast het uitspugen van de e-mails binnen dat domein alle subdomeinen weer die het wist te vinden in verband met het gegeven domein en koppelt ze aan hun respectievelijke IP-adres. Deze informatie is nuttig, evenals de verschillende subdomeinen kunnen worden met behulp van verschillende server software, software development frameworks en kan zelfs op verschillende machines, wat zou betekenen dat deze subdomeinen kunnen gevoelig zijn voor verschillende kwetsbaarheden en kunnen verschillende niveaus van exploiteerbaarheid hebben.
Netcraft
Netcraft is een webapplicatie die ons in staat stelt om gedetailleerde informatie te zien over de software, de webserver en de webhost die betrokken is bij een willekeurige website. Netcraft maakt het verzamelen van deze informatie pijnloos als het duurt milliseconden om de software achter de website te leren kennen. Bijvoorbeeld, weten wie de web hosting provider van de website is kan nuttig zijn als u besluit om een social engineering aanval te lanceren. Dan, kunt u een e-mail te schrijven naar een beheerder verschijnen om afkomstig te zijn van hun web hosting bedrijf, hem/haar te vragen om een link te openen en een instelling te wijzigen. Bovendien, de verschillende software development frameworks die de website gebruikt die u kunt vinden met Netcraft kunnen hun eigen kwetsbaarheden die u vervolgens kunt proberen te exploiteren. De afbeelding hieronder toont een lookup op InfoSec Institute in http://www.netcraft.com/
Figuur 5: Op zoek naar informatie over InfoSec Institute in Netcraft
kunnen we zien dat de hostingprovider van InfoSec Institute Digital Ocean is, dus we kunnen dat ergens opmerken. We kunnen ook zien dat de website gebruik maakt van een Content Management Systeem (CMS) genaamd Expression Engine, een software development framework genaamd CodeIgniter, dat de back-end taal is PHP en ga zo maar door. We kunnen op zoek gaan naar gebreken in die technologieën die de website aan kwetsbaarheden zouden onderwerpen. We kunnen ook zien dat de webserver software onlangs is gewijzigd van Apache/2.2.31. Het kennen van de exacte versie van de server software is handig als kwetsbaarheden voor verschillende server software worden gepubliceerd online regelmatig en gepatcht met nieuwere versies van de software die vaak niet op tijd door de meeste websites worden geïmplementeerd. Bovendien, het kennen van de server software vernauwt de reikwijdte van het onderzoek. Als we weten dat de Server Apache draait, zouden we niet zoeken naar kwetsbaarheden voor de Microsoft IIS-Server. Hoewel, soms de server informatie die door de website kan een aas / honeypot.
Maltego
Maltego is een data mining tool die ons kan helpen om inlichtingen te verzamelen en te visualiseren. Het heeft verschillende versies, waarvan er één gratis is om mee te spelen. De gratis versie is de zogenaamde “Community Edition”en u kunt deze downloaden van https://www.paterva.com/web7/downloads.php#tab-3. Het enige wat je hoeft te doen om het uit te voeren is een account registreren bij Paterva. De gratis versie echter beperkt het aantal gewonnen resultaten die kunnen worden getoond aan u.
Figuur 6: Maltego ‘ s pre-built machines beperken resultaten tot 12 entiteiten in de gratis versie
Maltego Primer
zodra u Maltego hebt geïnstalleerd, uw account hebt ingesteld en bent ingelogd, ziet u een laatste stap zoals hieronder getoond:
Figuur 7: succesvol geïnstalleerde Maltego
klik op “Open een lege grafiek en laat me spelen in de buurt.”
in het palet aan de linkerkant kunt u de verschillende entiteiten zien die u in uw zoekopdrachten kunt opnemen. Sleep de domeinentiteit in het palet naar de grafiek. Je zou een enkel Earth icoon met de site moeten zien paterva.com als label.
Figuur 8: een domein-entiteit toevoegen aan de grafiek
verander nu de domeinnaam naar het domein waarvoor u nieuwe informatie wilt verkrijgen. Om dit te doen, moet u dubbelklikken op de domeinnaam en typ uw gewenste domeinnaam.
nadat u het domein hebt voorbereid om te verkennen, kunt u transformaties of query ‘ s uitvoeren voor verschillende informatie voor het domein door met de rechtermuisknop op de domeinentiteit te klikken en de gewenste query te kiezen.
figuur 9: Een deel van de verschillende transformaties die beschikbaar zijn in Maltego
om te illustreren hoe deze transformaties werken, als u ervoor kiest om de entiteit te transformeren naar telefoonnummers met behulp van zoekmachines, krijgt u een paar telefoonnummers voor InfoSec Institute. U kunt deze telefoonnummers gebruiken om uw social engineering-aanval overtuigender te maken, vishing in dienst te nemen, pretexting en ga zo maar door.
Figuur 10: de transformatie naar telefoonnummers met behulp van zoekmachines wordt toegepast op InfoSec Institute en vijf telefoonnummers worden gevisualiseerd.
nu, als we een andere transformatie toepassen – zullen onze resultaten Alleen maar toenemen. Nog beter, we kunnen nieuwe transformaties toepassen op de resultaten die zich voordoen van onze vorige transformaties.
om dit te illustreren, als we met de rechtermuisknop op het eerste geretourneerde telefoonnummer klikken – zouden we verschillende transformaties krijgen die we erop kunnen toepassen. Laten we zeggen dat we ervoor kiezen om het telefoonnummer te transformeren naar url ’s (wat betekent, krijgen de URL’ s waar het telefoonnummer wordt vermeld). Dat zou ons een niveau dieper in de hiërarchie/relatie van de resultaten en zal ons laten zien een paar URL ‘ s waar handmatig kan controleren wie het telefoonnummer beantwoordt en ga zo maar door.
Figuur 11: Een niveau dieper gaan in Maltego. Het verkrijgen van de URL ‘ s waar een van de telefoonnummers geassocieerd met InfoSec Institute wordt genoemd
zoals u kunt zien, zijn er heel veel entiteiten en transformaties om te verkennen.
actieve hulpmiddelen voor het verzamelen van informatie
Nmap maakt het mogelijk om scans uit te voeren op gerichte machines om te zien welke poorten er op open zijn en dus welke toepassingen er op draaien. Het verschil met de hierboven genoemde tools is dat je actief interageert met de gegeven machine door er speciaal gemaakte pakketten naar te sturen. Bovendien, het ontdekken van open poorten Nmap stelt ons in staat om het besturingssysteem van de machine te detecteren en de services te ontdekken die op de geopende poorten worden uitgevoerd.
U kunt Nmap downloaden van https://nmap.org/download.html of http://nmap.en.softonic.com/. U kunt Nmap gebruiken vanuit uw CLI of vanuit een GUI-toepassing.
na de installatie, om de verschillende manieren te zien waarop u nmap kunt gebruiken, hoeft u alleen maar nmap te typen en op Enter te drukken.
Figuur 12: Nmap ‘ s help screen
een eenvoudige controle op open poorten en de bijbehorende diensten is nmap-sS-Pn <IP adres>. Dit zal proberen een stealth ontdekking en behandelen de machine als levend.
om het besturingssysteem te detecteren waarop de machine draait, kunt u de vlag-O gebruiken enzovoort.
als Nmap lijkt op een hulpmiddel dat u meer wilt verkennen, bezoek dan Irfan Shakeel ‘ s artikel over Nmap.
conclusie
we hebben de basisprincipes van het penetratietestproces aangetoond, de rol van het verzamelen van informatie in dit proces en we hebben enkele van de meest populaire hulpmiddelen voor het verzamelen van informatie aangetoond. Het gebruik van deze tools kan u niet alleen helpen om voldoende informatie te verzamelen voor een vruchtbare informatieverzameling, maar ze kunnen u ook helpen om de efficiëntie en effectiviteit van het hele penetratietestproces te verhogen.