Shodan startades 2009 som ett hobbyprojekt av utvecklaren John Matherly som redan 2003 började fundera på att bygga en sökmotor som indexerar enheter (servrar) som är kopplade mot internet. Namnet Shodan kommer från en karaktär i spelet System Shock. Med servrar menar vi vilka apparater som helst som kommunicerar med omvärlden över tcp/ip eller upd/ip – någonting till vilken man kan skicka en förfrågan och få ett svar.

Det sökmotorn Shodan tar fasta på är den så kallade service banner som en server skickar tillbaka på en förfrågan. Detta är den metadata om servern som används för att identifiera den och dess tjänster. Shodan söker ständigt av internet och lägger till nya servrar när den hittar dem. För att göra effektiva sökningar bör man utgå från den information som finns i dessa metadata. En typisk service banner kan se ut så här.

shodan
En typisk service banner från en Apache webbserver.

Utifrån informationen i service bannern samlar Shodan dessutom in annan publik information som är relaterad till informationen i service bannern. Om exempelvis en enhet kör en server som är av en äldre version än den senaste, kan Shodan hämta in de sårbarheter som finns listade i CVE-databasen för den äldre versionen, vilket är väldigt nyttig information för dem som administrerar servern och vill hålla den uppdaterad och säker.

– Omvärldsbevakning är alltid bra tycker jag, det hjälper oss att förstå vilka hot som finns där ute och hur vi kan prioritera vårt säkerhetsarbete. Problemet är att samma information kan också användas för att planera attacker och prioritera måltavlor. Denna typ av information är väldigt värdefull för cyberkriminella; de kan väldigt enkelt hitta maskiner som är exponerade mot internet och sårbara för en specifik attack, säger David Jacoby, säkerhetsexpert på Kaspersky Lab.

– Shodan kan ge ett företag insikt i vilka tjänster de faktiskt exponerar ut på internet, och även versionsnummer och annan information. Förutom att veta vad man exponerar utåt kan det vara bra att granska om det man faktiskt exponerar utåt behöver säkras upp på något vis, till exempel att man ska byta standardlösenord, eller installera säkerhetspatchar.

Det är viktigt att komma ihåg att Shodan egentligen inte gör något ljusskyggt; samma information som Shodan samlar in och presenterar kan samlas in med automatiserade portskanningsverktyg och till och med med Google, även om det senare kräver lite trixande för att få till. Det John Matherly har skapat med Shodan är ett användarvänligt gränssnitt ovanpå att antal tekniker som funnits sen länge.

– Shodan har en infrastruktur som inte många har, och har lyckats samla in information som inte alla har. Informationen finns där ute, och egentligen är det bara att man måste portskanna alla maskiner på hela internet och lagra information om vilka tjänster de kör, och vilka banners de har. Det shodan har lyckats med är att implementera olika protokoll som kanske är svåra att skanna annars, vissa udp-tjänster och så vidare, säger David Jacoby.

Shodan är fri att använda, men om du inte registrerar ett konto är möjligheterna begränsade. Att skapa konto är gratis och ger framför allt möjligheter att filtrera sökningar samt Shodan visar de 20 högst rankade sökresultaten per sökning. Shodan ger även en möjlighet att integrera deras api i andra tjänster, men det kostar en månads- eller årsavgift. Lika så kostar det pengar om du vill få tillgång till alla sökresultat för en sökning.

Shodan söker bara fram enheter som av en eller annan anledning är exponerade mot internet. Det är omöjligt att avgöra om dessa enheter är exponerade av misstag eller i full vetskap om att de ska vara exponerade för att kunna fjärrstyra olika tekniska system, eller huruvida de är lämpligt skyddade eller inte. Att som obehörig försöka logga in, eller på annat sätt sätta sig i kontroll över dessa uppkopplade enheter är antagligen brottsligt, oavsett hur åtkomliga de är.

När du skapat ett konto är du redo för sökningar. Och det mest effektiva är att göra filtrerade sökningar. Sökfältet fungerar i stort sett som Google, men man använder ofta ett (eller flera) sökord som ”webcam” eller ”server” i kombination med ett filter-nyckelord och tillhörande värde separerat av ett kolon, till exempel ”server axis country:SE”. Man kan exempelvis filtrera på följande kategorier:

  • city: hittar enheter i en specifik stad
  • country: hittar enheter i ett specifikt land
  • geo: hittar enheter inom specifika koordinater
  • org: hittar enheter baserat på organisationsnamn
  • hostname: hittar värden baserat på värdnamn
  • net: hittar enheter baserat på ip-adress eller ip-prefix (CIDR)
  • os: hittar enheter baserat på operativsystem
  • port: hittar enheter baserat på tcp-port
  • before/after: hittar värden inom en tidsram

En bra start är att börja söka på dina ip-adresser, gärna i kombination med den tcp-port din enhet använder. Men egentligen går det att filtrera på vad som helst som kan tänkas finnas i en servers metadata. Om man till exempel söker på ”plc siemens country:SE” får vi fram en lista på 16 stycken plc:er (programmerbara styrsystem) i Sverige tillverkade av Siemens. Här är en av dem.

Shodan
En PLC (Programmerbart styrsystem) från Siemens.

Bilden visar den metadata som finns tillgänglig för just den här typen av apparat, och varje del av informationen är sökbar på Shodan. Vi kan till exempel sätta in strängen ”Basic Firmware: v.3.2.3” i sökningen eller "Module type: CPU 315-2 PN/DP”. På detta sätt kan du förfina dina sökningar i Shodan.

Shodan
Hit men inte längre. Landskrona Energi har skyddat sina styrssytem med lösenord.

Sårbarheter och attacker som fått mycket uppmärksamhet på senare år rör just styrsystem för infrastruktur som vattenförsörjning eller kraftnät, Stuxnet kanske är det mest ökända hacket i dessa sammanhang. I det fallet var det just plc:er från Siemens som hackades. Plc:er eller så kallade Scada-system tillverkas även av Schneider Electric, och även dessa är enkla att hitta med hjälp av Shodan. Testa att söka på ”Schneider Electric”, och titta i sökstatistiken till vänster, under kartan.

Här ser vi att de vanligaste protokollen är Modbus (tcp-post 502) och BACnet (fastighetsautomation) och att de vanligaste modellerna är TM221CE16R, SAS TSXETY4103, TM251MESE, TM241CE40T_U och TM241CE24R. Testa sedan att söka på dessa och begränsa sökningen till Sverige.

shodan
En service banner från ett SCADA-system från Schneider Electric.

Cyberkriminella vet förstås vad de letar efter; de gör en grundlig research och söker efter specifika enheter med en viss inbyggd mjukvara. Deras aktiviteter kan resultera i dels att dina enheter kan utsättas för attacker om de inte är tillräckligt skyddade, dels kan de komprometteras för att i smyg användas ddos-attacker mot andra system. I bägge fall vill du förhindra detta genom att skydda enheterna med starka lösenord och liknande, och skydda kommunikationen med enheterna med krypterade sessioner.

Shodan är därför ett ypperligt verktyg för att du själv ska kunna bilda dig en uppfattning om skyddade eller sårbara dina enheter är. Om du anser att det är enkelt att komma åt dem, kommer det vara en barnlek för de cyberkriminella. Om du inte på egen hand kan ta reda på bästa sätt att skydda dina enheter bör du konsultera leverantören av enheterna.

Sökresultaten i Shodan är enkla att förstå. till vänster visas en karta med fördelningen av sökresultatet över världen. Under kartan visas övergripande statistik, och till höger de specifika sökresultaten. Vill man kan man klicka på ”Maps” för att dyka in i geografin, eller klicka på de enskilda sökresultaten för att få fram mer information om dem. Man kan även ladda ned sökresultaten på fil eller skapa rapporter.

shodan
Ett typiskt sökresultat i Shodan: karta och övergripande statistik till vänster och listan med sökresultat till höger.

En omåttligt populär funktion på Shodan är givetvis att hitta öppna webbkameror; dessa behöver förstås inte vara öppna av misstag, det finns gott om publika webbkameror. För att hitta dessa kan man förstås söka på ”webcam”, men det ger också en väldigt bred sökbild med tusentals träffar. Prova istället att specificera en viss stad. Ett annat sätt är att specificera en typ av server, till exempel ”webcamxp", eller en tillverkare som ”axis”.

Shodan
En webbkamera från Axis i ett garage någonstans i Sverige.

Om man bara vill kolla runt bland populära sökningar kan man klicka på länken ”Explore” till höger om sökfältet. Om du vill lära dig mer om hur Shodan fungerar finns det en utmärkta instruktioner och hjälp på denna sida.

Läs också:
2,7 miljoner inspelade samtal till 1177 Vårdguiden helt oskyddade på internet
Enkelt stänga av kylarna på Ica – ligger vidöppna på internet