Google Dorks – Google Hacken en Beveiligen
Google, wie kent hem niet, grote Google, grote Google, onze zoekfavoriet! 🙂 Sorrie…. lame inderdaad maar ik kon het niet laten.
Uiteindelijk is het waar natuurlijk. Wie gebruikt Google niet dagelijks? U ook? Wist u dan ook dat Google gebruikt kan worden als een krachtige hacking tool? Nee? Lees dan het volgende artikel waarin ik u uitleg wat hacken met Google is en hoe u zich kunt beschermen tegen deze zogenaamde Google Dorks.
Principe:
Het principe achter Google hacken is redelijk eenvoudig. Google indexeert webpagina’s en zoveel mogelijk relevante informatie die daarbij hoort. Maar Google indexeert soms meer van uw webpagina dan u weet en wilt. De geïndexeerde informatie kan dus ook gevoelige informatie bevatten. Hackers gebruiken geavanceerde query’s om deze informatie te achterhalen en misbruiken. Deze geavanceerde query’s noemen we “Google Dorks”.
Google zoek operators:
In de zoekbalk van Google kunnen diverse operators gebruikt worden om de zoekopdracht te verfijnen. Een simpele bekende die u wellicht kent is het – (min) teken. Het minteken wordt gebruikt om bepaalde resultaten met zoekwoorden te verwijderen uit het resultaat. Zoekt u op “Tweedehands Opel” dan krijgt u vele resultaten met tweedehands Opels. Maar als u absoluut niet naar een Vectra op zoek bent dan kunt u zoeken op “Tweedehands Opel -Vectra” om alle resultaten met het woord “Vectra” uit te sluiten van het resultaat.
Zo zijn er nog veel meer operators die de Google zoekfunctie ondersteund. Alle Google zoek operators zijn hier te vinden. Een aantal veelgebruikt zal ik kort hieronder uitleggen:
inurl:%zoekwoord%:
Met de inurl operator zal Google resultaten genereren waarbij het opgegeven zoekwoord voorkomt in de URL van de webpagina.
intext:%zoekwoord%:
Met de intext operator zal Google resultaten genereren waarbij het opgegeven zoekwoord voorkomt in de tekst van de webpagina.
intitle:%zoekwoord%:
Met de intitle operator zal Google resultaten genereren waarbij het opgegeven zoekwoord voorkomt in de titel van de webpagina.
filetype:%extensie%:
Met de filetype operator zal Google resultaten genereren waarbij de opgegeven extensie overeenkomt met het doeldocument.
site:%url%:
Met de site operator zoeken we alleen naar resultaten in Google van de URL die opgegeven wordt achter de “site” operator.
cache%url%:
De cache operator zorgt ervoor dat de gevraagde pagina in het zoekresultaat de gecachte (meestal oudere) variant van de webpagina is.
Voorbeeld:
Nu we weten wat zoekoperators zijn kunnen we zelf een Google Dork programmeren. Zie de volgende query:
site:facebook.com inurl:login
Bovenstaande query is redelijk onschuldig. De resultaten van deze query laten de inlogpagina van Facebook zien.
Zouden we de query een beetje aanpassen naar b.v.:
inurl:logon.html
Dan krijgen we een resultaat waar een hacker al veel meer mee kan. De resultaatpagina laat nu alle webpagina’s zien waarvan de inlog URL “login.html” is. Een hacker achterhaald op deze manier dus eenvoudig de login URL van een webpagina. Het resultaat van bovenstaande query somt al duizenden potentiele (gemakkelijke) slachtoffers op.
Scoren op de resultatenpagina van bovenstaande query vormt nog geen direct gevaar maar wel een verhoogd risico. Een Google Dork waarop je niet gevonden wilt worden is b.v.:
intext:phpMyAdmin SQL Dump filetype:sql intext:INSERT INTO `admin` (`id`, `user`, `password`) VALUES
Deze query is opgebouwd uit de volgende waardes:
intext:phpMyAdmin SQL Dump
intext:INSERT INTO `admin` (`id`, `user`, `password`) VALUES
filetype:sql
Er wordt dus gezocht naar geïndexeerde SQL bestanden (dump bestanden van de database) waarbij het dumpbestand de tekst bevat met o.a. user + password. User + password zijn de kolomnamen. Als deze kolomnamen aanwezig zijn dan is de kans groot dat de kolomnamen ook gebruikt zijn en dat het dumpbestand dus ook werkelijke gebruikersnamen en wachtwoorden bevat.
Op deze dork wil je dus niet gevonden worden. Want de kans is groot dat je jou gebruikersnaam + wachtwoord niet hebt aangepast. De hacker kan deze dus gaan gebruiken om in te loggen op jou website.
Tip: zorg ervoor dat je wachtwoord altijd met encryptie opgeslagen wordt in de database (b.v. MD5). Op deze manier voorkom je dat een hacker met deze dork direct een compleet setje login credentials in handen krijgt.
Een andere (gevaarlijke) dork is een dork die zoekt op websites die vatbaar zijn voor “remote file inclusion”. Een hacker weet bijvoorbeeld de bestandsnaam van een veelgebruikte shell. Door te zoeken op deze naam vindt hij websites die deze shellcode bevatten. Deze websites zijn dus vatbaar voor remote file inclusion want iemand heeft hier namelijk al een shellcode geupload. Deze dork zal er b.v. als volgt uitzien:
inurl:r57shell.txt
En zo zijn er nog heel veel andere Google Dorks te vinden. Queries die informatieve foutmeldingen genereren of dorks die configuratiepagina’s van printers e.d. vinden.
Google zoekqueries kunnen heel gevaarlijk zijn en kunnen gebruikt worden om zwakke plekken in een website te vinden.
Alle Google Dorks worden verzameld in de zogenaamde GHDB (Google Hacking Database). Google er maar op ?.
Hoe beveilig ik mezelf tegen Google Dorks?
Uw website beveiligen tegen Google Dorks is relatief eenvoudig.
robots.txt
Een robots.txt bestand is een bestand dat u kunt uploaden in de root van uw website. Dit bestand verteld de zoekmachines (Google) wat hij wel en niet mag indexeren en of hij de pagina mag cachen.
Als een bepaalde directory niet geïndexeerd mag worden specificeert u deze met de “disallow” tag.
User-agent: * Disallow: /veiligenotities/ |
Als u de gehele pagina niet wilt laten indexeren (wat ik niet zou aanraden als u wel bezoek wilt krijgen vanuit de zoekmachines) dan kunt u de volgende tag gebruiken:
User-agent: * Disallow: / |
Directory Listing:
Directory Listing is een functie die een bezoeker de content van een hele directory laat zien. Google kan dus ook bij alle content in de directory en kan deze dus indexeren. Als deze functie uit staat kan Google alleen alle bestanden en files indexeren waar naartoe gelinkt wordt vanuit de webpagina (actief gelinkt of aanwezig zijn in de source code).
Het is dus belangrijk om de directory listing functie uit te schakelen. Er zijn maar weinig doeleinden waarbij deze functie wel specifiek gewenst is.
Om directory listing uit te schakelen kunt u een paar dingen doen:
1. Voeg de volgende toe aan je .htaccess bestand “Options -Indexes”
2. Als u bij de configuratiebestanden van de (Apache) webserver kunt dan kunt u directory listing uitschakelen door een – (min) teken te plaatsen voor het woord “ïndexes” in het httpd.conf bestand.
3. Om directory listing uit te schakelen op een IIS gebaseerde server kunt u dat regelen via de interface of met het volgende commando via de command line “appcmd set config /section:directoryBrowse /enabled:false”.
GHH – Google Hack Honeypot:
De Google Hack Honeypot is gratis software die hier te downloaden is. De Google hack Honeypot plaatst een onzichtbare link in de broncode van je website. Bezoekers zullen deze niet zien maar Google dus wel. Hackers die binnenkomen met verdachte queries zullen via het script naar een “dode” pagina gestuurd worden. Uw website loopt dus geen gevaar maar informatie van de hacker wordt wel gelogd. U kunt deze logs (b.v. het IP adres) weer gebruiken om deze personen te blokkeren in de firewall en dus op uw pagina.
Opruimen:
Simpel toch! Zorg ervoor dat er geen oude files (databases / database dumps, bestanden) op de webserver aanwezig zijn die daar niet noodzakelijk thuishoren. Als de bestanden niet aanwezig zijn kunnen ze nooit geïndexeerd worden. Zeker bestanden met gevoelige informatie mogen nooit geïndexeerd worden. Google indexeert ook b.v. PDF en DOC bestanden. Als deze bestanden echt op de webserver moeten staan plaats deze dan buiten de root op de webserver of in een directory die uitgesloten is van scannen (middels robots.txt en/of een .htaccess bestand).
Test je URL:
Het is altijd goed om zelf te kijken voor welke Google Queries je website vatbaar is. Test daarom je eigen website.
U kunt een Google Dork kopiëren vanuit de GHDB (Google hacking DataBase) met de toevoeging van site:%URL% waarbij de URL de URL van uw webpagina is.
Er zijn ook diverse tools die hiervoor gebruikt kunnen worden. Denk hierbij aan Sitedigger, Wikto en Gooscan. Al deze tools kunt u gebruiken en misbruiken op eigen risico. Gooscan volgt b.v. niet de Google Guidelines (en maakt geen gebruik van de Google API). De kans op een ban van je website is met deze tool dus aanwezig. Als u deze tool wilt gebruiken dan is het aan te raden om dit op een testserver te doen.
Gebruik een firewall:
Door gebruik te maken van een goede firewall kun je DOS, XSS, Brute Force en SQL Injection aanvallen weren. Dus als de aanvaller een tool gebruikt om alle dorks te testen op je website dan zal deze snel geblokkeerd worden omdat dit als een Brute Force aanval gezien wordt. En zelfs als er met een dork belangrijke informatie gevonden wordt dan zal deze nog niet misbruikt kunnen worden voor b.v. een SQL Injection of XSS aanval.
Conclusie:
Ziet u hoe gemakkelijk hacken is met Google? Iedere wannabe hacker kan de Google Hacking DataBase gebruiken om zwakke sites en gevoelige informatie te vinden en misbruiken. Gelukkig is het beveiligen tegen deze Google Dorks ook niet bijzonder ingewikkeld. Belangrijk is wel om directory listing uit te schakelen, nooit geen leesbare backups en gevoelige informatie op de server te bewaren en om een nette robots.txt file aan te maken.
Mooie techniek wordt vaak voor de foute doeleinden misbruikt. Het is aan ons de taak om hier de juiste bescherming tegen te bieden! Dankjewel voor het lezen van deze post over Google Dorks en Beveiliging!