ATScan
Een nieuwe post, een nieuwe tool. Deze keer bespreken we een AlisamTechnology tool, de “ATScan” toolkit. ATScan is een “Advanced Dork Search & Mass Exploit Scanner”. ATScan is geschreven in Perl door Ali Mehdioui. ATScan wordt ingezet om specifieke vulnerabilities te vinden in websites en voor het vinden van zogenaamde “dorks”. Ik gebruik deze tool een aantal maal per jaar en meestal verbaas ik me over de resultaten. ATScan is niet de enige tool in het genre maar doet absoluut fantastisch zijn werk en is bovendien gratis en dus dubbel zo leuk.
ATScan is momenteel een Linux-only tool verkrijgbaar v.a. de AlisamTechnology GitHub pagina waar ook DarkArch Linux en DracOS Linux te downloaden zijn. Laten we meteen ATScan downloaden en installeren. Het Downloaden van ATScan is relatief simpel… it’s a GitHub repository en dus:
git clone https://github.com/AlisamTechnology/ATSCAN cd ATSCAN chmod +x install.sh install.sh |
Nadat de installatie compleet is start ATScan automatisch. Je kunt ATScan ook starten met het volgende commando:
atscan |

Om ATScan te updaten gebruik je de update flag:
atscan –update |
En wil e meer hulp, dan is de –help flag je vriend:
atscan --help |
Zoals je ziet zijn er nogal wat opties om de tool te gebruiken. Laten we eens bij de basis beginnen. Aangezien we Shodan bevragingen willen doen hebben we een Shodan API nodig Hiervoor moet je inloggen bij “https://developer.shodan.io” en een API key aanmaken. Wanneer je de API hebt regstreer je deze in ATScan:
atscan --shodan --apikey vEHhh3QdNPrevBs2Sd1ePlG2x9EfZmaSF |
Tijdens het registreren al je gevraagd worden om additionele modules te installeren zoals JSON. Dit moet je uiteraard even doen:

Nu dat klaar is kunnen we een Shodan search uitvoeren (waar we ook de API key op moeten geven):
atscan --shodan --apikey vEHhh3QdNPrevBs2Sd1ePlG2x9EfZmaSF --target jarnobaselier.nl |
Of zoek op dorks, honeypot scores of andere zaken op dezelfde manier:
atscan --shodan --apikey vEHhh3QdNPrevBs2Sd1ePlG2x9EfZmaSF --dork joomla |
atscan --shodan --apikey vEHhh3QdNPrevBs2Sd1ePlG2x9EfZmaSF --honeyscor jarnobaselier.nl |

Op dezelfde manier kunnen we ook een Google search uitvoeren. Ook hier hebben we een API en een API ID (–cx) voor nodig.
atscan --apikey vEHhh3QdNPrevBs2Sd1ePlG2x9EfZmaSF --cx 9044392110 --dork joomla |
Ook kunnen we zoeken naar exploits. Dit doen we met de “bugtraq” zoekoptie:
atscan --bugtraq --dork joomla |
Bovenstaande commando zoekt op exploits waar de naam “Joomla” in voorkomt. Dit zijn zoveel resultaten dat de zoekopdracht na een tijdje zichzelf zal afbreken. Om dit te voorkomen kun je de “-l” ofwel “ level” flag meegeven. Een level is een pagina waar 30 resultaten op getoond worden. Om 60 resultaten te zien (2 pagina’s) gebruik je:
atscan --bugtraq --dork joomla --l 2 |
En om alle resultaten te zien die te maken hebben met een SQL injection gebruik je de “–sql” flag:
atscan --bugtraq --dork joomla --l 2 --sql |

De repeater functie maakt het doorzoeken van verschillende numerieke ID’s een stuk gemakkelijker door de URL te herhalen met wisselende ID’s of andere nummerieke waardes welke tussen haakjes aangegeven worden.
Onderstaande commando doet een scan op alle ID’s van 1 t.m 10 (range 1 tot 10):
atscan -t “https://jarnobaselier.nl/index.php?id=rang(1-10)” |

Het volgende commando zal het ID nummer invullen met de waarde 1 op 3 posities, dus 1, 11 en 111.
atscan -t “https://jarnobaselier.nl/index.php?id=repeat(1-3)” |
Maar dit kun je ook gebruiken om Directory Traversal toe te passen. Wil je 5 directories proberen (../ – ../../ – ../../../ – ../../../../ en ../../../../../) dan kun je het volgende gebruiken:
atscan -t “https://jarnobaselier.nl/repeat(../-5)passwd” |
Ook poorten scannen is een makkelijke klus. Geef je target op, de poort en het protocol en scan de services die hierop draaien:
atscan -t 8.8.8.8 --port 21 --tcp |
Of scan een hele range poorten op zowel TCP als UDP:
atscan -t 8.8.8.8 --port 21-80 --udp --tcp |

Je kunt zelfs een range IP adressen scannen:
atscan -t 192.168.1.1-192.168.1.254 --port 21-80 --udp --tcp |
Maar de echte kracht zit hem wat mij betreft in het doeltreffend zoeken naar dorks. Wil je sites zoeken die vatbaar zijn voor de dork “site:*/request-password-reset” dan gebruik je:
atscan --dork request-password-reset --level 2 |

Standaard zoekt ATScan via de Bing zoekmachine naar dorks. Het is echter ook mogelijk om de zoekmachines “Google, ASK, Yandex, Sogou, Exalead, Googleapis en Googlecache” te gebruiken. Om Google te gebruiken kies je:
atscan --dork request-password-reset --level 2 –m google |
Om alle zoekmachines te gebruiken gebruik je de “all” tag of specificeer je deze separaat. Ik kies hier voor de laatste optie omdat ik geen Google API key heb en dus sluit ik die engines uit:
atscan --dork request-password-reset --level 2 –m bing,google,ask,yandex,sogou,exalead |
Je kunt ook zoeken naar meerdere dorks door de ze met een spatie van elkaar te scheiden.
Hopelijk geeft deze post wat meer inzicht in het gebruik van ATScan en het gemak waarmee deze zoekopdrachten kunnen worden uitgevoerd. We hebben lang niet alle mogelijkheden van ATScan bekeken. Zo kun je proxy servers gebruiken, regex gebruiken in zoekopdrachten, zoeken op basis van input tekstfiles en een poortscan uitvoeren zoals b.v.
atscan -t 192.168.1.1 --port 1-1024 --tcp |
Mocht je deze post leuk vinden of geïnspireerd zijn om nu zelf aan de slag te gaan met ATScan geef hem vooral een like of deel hem op je eigen website of social media kanalen (wel even mijn linkje erbij plaatsen s.v.p.). Thanks!