Google Hacking, även känd som Google Dorks, har blivit ett populärt verktyg för att identifiera sårbarheter och känslig information på internet. En av de mest kända pionjärerna inom detta område är Johnny Long, som var en av de första att förstå och utnyttja Googles sökfunktioner för att hitta data som ofta var oskyddad. Tekniken är baserad på att använda specifika sökoperatorer som gör det möjligt att smalna av resultaten och hitta information som kan vara svår att komma åt på andra sätt. För att verkligen förstå denna teknik måste vi börja med att undersöka hur Google Hacking fungerar och hur det kan användas för att identifiera känslig information.

För att genomföra en sådan sökning, använder vi olika operatörer som tillåter oss att avgränsa sökresultaten efter domän, filtyp, titelvärde och mer. Ett exempel på detta är när vi vet namnet på en känslig katalog som inte bör vara tillgänglig för allmänheten, men som efter installationen av en viss applikation har blivit publik av misstag. Genom att använda en enkel sökning som inurl:/känslig_katalog/ kan vi få en lista över alla webbplatser som inte har ändrat inställningarna för katalogens tillgänglighet. Om vi sedan vill begränsa sökningen till en viss webbplats, kan vi kombinera denna sökning med operatorn site:, exempelvis site:targetdomain.com inurl:/känslig_katalog/.

Förutom att hitta känsliga kataloger, kan denna teknik också användas för att upptäcka sårbarheter på en webbplats. Ett exempel på detta är användningen av Flash för att skapa mer interaktiva webbplatser. SWF-filer (Small Web Format) är en typ av Flash-fil som används för multimedia, och många SWF-spelare är kända för att vara sårbara för Cross-Site Scripting (XSS), en attack som kan leda till att användarkonton blir komprometterade. För att hitta en sådan sårbarhet på en viss webbplats, kan vi använda en sökning som site:targetdomain.com filetype:swf SWFPlayer_signature_keyword och sedan testa de resultat vi får med offentliga payloads för att verifiera om attacken är möjlig.

För att effektivt använda Google Hacking krävs det en omfattande förståelse av olika signaturer och hur de kan användas för att identifiera specifika sårbarheter, som sidor med användarnamn/lösenord, admininloggningssidor och mycket mer. Google Hacking-databasen som skapades av Johnny Long finns på hackersforcharity.org/ghdb, och även om den inte längre uppdateras, är den fortfarande en utmärkt resurs för att förstå hur man kan använda Google för att hitta känslig information. För en mer aktuell version, kan man besöka exploit-db.com/google-dorks.

Förutom Google finns det andra sökmotorer, som Bing och Yahoo, som också erbjuder unika funktioner och operatörer som kan vara användbara när man utför Google Hacking. Bing, till exempel, erbjuder en rad operatorer för att manipulera sökresultaten, såsom +, -, "", site:, och filetype:, som gör det möjligt att utföra mycket specifika sökningar. Bing tillåter också användning av IP-baserade sökningar, vilket gör det möjligt att hitta webbplatser som är värd för en viss IP-adress. Yahoo, å andra sidan, erbjuder också operatorer som + och - för att inkludera eller exkludera specifika ord, samt link:-operatorn för att hitta sidor som länkar till en viss URL.

För att verkligen förstå och utnyttja dessa tekniker effektivt, är det viktigt att ha en god förståelse för hur de olika sökmotorerna fungerar och hur man kan kombinera operatorer för att skapa mer precisa och effektiva sökningar. Det krävs också en god dos av kreativitet och övning för att kunna identifiera de bästa sökfrågorna som leder till relevant information.

Det är också viktigt att komma ihåg att även om Google Hacking och liknande tekniker kan vara användbara för att hitta säkerhetsproblem och känslig information, bör dessa verktyg användas ansvarsfullt och endast i etiska sammanhang, som penetrationstestning eller forskning, för att inte riskera att utnyttja information för skadliga syften. Det är dessutom viktigt att förstå lagar och regler kring användning av sådana tekniker, för att inte överskrida gränserna för vad som är lagligt och etiskt korrekt.

Hur säkerheten kan äventyras genom OSINT och dess påverkan på verkliga situationer

Det var något nytt för våra kunder, och de informerade omedelbart sina kollegor om detta. Trots att vi hade fångat deras uppmärksamhet ville vi visa den verkliga effekten av sådan information. Vi kunde enkelt ha förklarat att det fanns sajter där man kan hitta specifika lösenord relaterade till e-postadresser, som till exempel pastebin, men vi försökte visa på den större bilden.

Steg 6: Vi valde två e-postadresser och körde sedan en annan transformering som vi själva hade skrivit, kallad "Email-Rapportive". Denna transformering är baserad på tjänsten Rapportive: http://www.rapportive.com/ (som bygger på Jordan Wrights kod). Vad den gör är att hitta information om personen baserat på e-postadressen och ge oss resultatet. Resultatet innehåller länkar till LinkedIn, Facebook, Twitter, samt namn och yrkestitel. Den ger oss alltså en översikt över personens sociala existens och några viktiga primära detaljer som fullständigt namn.

Steg 7: Därefter körde vi en Maltego-maskin på den e-postadress vi hade genererat tidigare. En maskin är helt enkelt en samling av en eller flera transformeringar som körs tillsammans. Vi diskuterade detta kort i kapitel 6 och kommer att gå djupare in på det senare i det här kapitlet. Denna maskin hittar andra e-postadresser med samma mönster på e-posttjänster som Gmail, Yahoo, Outlook osv. Vi fick många resultat och förklarade för våra kunder att det finns personer som använder samma lösenord för olika e-postkonton. Så om någon samlar på sig ett lösenord associerat med en kapad e-postadress och kan hitta alla andra e-postadresser och registrerade webbplatsdetaljer, finns det en möjlighet att en angripare kan kompromettera något eller alla konton baserat på den information som samlats. Vi märkte att våra delegater förstod riskerna med denna scenario och de var glada över att vi hade visat dem detta live.

Den enda frågan från deras sida var om deras IDS/IPS och brandväggar i infrastrukturen skulle kunna fånga upp en sådan attack om någon försökte genomföra den. Svaret på detta var att vi använde all öppet tillgänglig information för att visa hur säkerheten kan brytas. De verktyg vi använde skickade inte några skadliga paket till den ursprungliga infrastrukturen, vilket gör det nästan omöjligt att identifiera vem som genomförde en sådan enumeration. Utöver detta finns det olika anonymiseringstekniker som Tor och proxyservrar som vi kan använda för att dölja vår identitet. Detta förändrade deras syn på säkerhet. Säkerhet handlar inte bara om att skydda nätverk eller infrastruktur, utan också om vad vi delar på internet.

Fallstudie 3: En episk intervju

En av våra vänner letade efter ett byte inom säkerhetsområdet. En morgon fick han ett samtal från ett rekryteringsföretag om en tjänst på ett av de ledande säkerhetsföretagen. Första samtalet gick bra och alla parametrar såsom löneförväntningar, plats och uppsägningstid var i hans favör, men problemet var att profilen var lite annorlunda. Vår vän hade tidigare jobbat med pentesting, men denna tjänst var mer inriktad på säkerhetsövervakning, något han hade viss erfarenhet av på egen hand men inte fullt ut. Han var alltså lite orolig inför intervjun och ville verkligen lyckas.

Två dagar senare fick han ett samtal från samma företag som informerade honom om att han hade gått vidare till den tekniska delen av intervjun, och att han skulle bli kontaktad av Mr. John Doe inom kort. Vår vän diskuterade med oss och sa: "Jag vill få mer information om den här personen för att förstå vilken typ av frågor han kan ställa, hans erfarenheter och därmed hans förväntningar." Vi beslutade att använda OSINT för att samla så mycket information som möjligt om Mr. John Doe.

Steg 1: Eftersom vi hade personens namn och företagsnamn började vi med att söka på LinkedIn. Vi hittade hans profil, och där fanns detaljer om hans nuvarande och tidigare arbetslivserfarenheter. Vi såg att han var teknisk ledare på företaget. Hans profil innehöll också artiklar och de senaste prestationerna, inklusive en nyligen erhållen OSCP-certifiering (Offensive Security Certified Professional).

Steg 2: Vi besökte hans GitHub-profil där han hade skrivit alla sina skript för att automatisera tester i Python. Steg 3: En enkel Google-sökning på hans namn gav oss ytterligare länkar och vi hittade en Slideshare-profil med presentationer om hur man skriver egna IDS-regler. I ett äldre inlägg fanns en länk till hans gamla bloggar.

Steg 4: Vi besökte hans gamla blogg som främst handlade om hans motorcykelresor. Steg 5: Vi sökte på hans Twitter och upptäckte ett intressant inlägg om att han nyligen hade deltagit i en populär säkerhetskonferens i Goa, Indien. Steg 6: Vi besökte konferenssidan och såg att han hade hållit ett föredrag om nätverksövervakning. Steg 7: Vi sökte på hans Facebook och fann information om hans hemstad, nuvarande plats och utbildningsbakgrund. Steg 8: En snabb sökning på Yasni gav oss hans telefonnummer, och vi bekräftade det genom Truecaller.

Efter cirka 25-30 minuter stoppade vi vår undersökning. Samtidigt förberedde sig vår vän genom att gå igenom informationen om företaget och hans tjänst. Baserat på det vi samlat in gjorde vi några slutsatser om hur han bäst skulle förbereda sig inför intervjun: Han skulle spara telefonnumret och hälsa honom med namn om han ringde. Första frågan skulle vara om hans föredrag i Goa och han skulle förklara att han ångrade att han missade det. Förväntade tekniska frågor inkluderade skrivande av IDS-regler, automatisering av verktyg i Python, och nätverkspenetreringstester, som Mr. John Doe nyligen hade genomfört via OSCP.

För vår vän blev detta förberedelsearbete en nyckel till framgång. Genom att samla detaljerad information om sin intervjuare och att kombinera den med sin egen kompetens inom pentesting, lyckades han få tjänsten.