Modul 3 · 3.2
Lese domener og lenker
Modul 3: Gjenkjenne phishing · Lesetid: 13 minutter
Læringsmål: Etter denne leksjonen kan du finne det virkelige målet til enhver lenke: du finner det registrerbare domenet med den offentlige suffikslisten, og du gjenkjenner subdomene-, sti- og @-triks, lookalikes, punycode, forkortere og open redirects.
Nøkkelbegreper: URL, skjema, host, registrerbart domene, offentlig suffiks, subdomene, sti, lookalike, typosquatting, homograf, punycode (xn--), URL-forkorter, open redirect
Delene av en lenke
En nettadresse kalles en URL. Den består av faste deler:
https://inlog.mijnbank.example:443/klant/overzicht?taal=nl#saldo| Del | I dette eksempelet | Hva den gjør |
|---|---|---|
| Skjema | https | Hvordan nettleseren kobler til |
| Host | inlog.mijnbank.example | Hvilken server du snakker med |
| Port (sjelden synlig) | 443 | «Dørnummeret» på den serveren |
| Sti (Path) | /klant/overzicht | Hvilken side på den serveren |
| Spørring | ?taal=nl | Ekstra data til siden |
| Fragment | #saldo | Et sted på siden |
Hosten er den eneste delen som avgjør hvem nettstedet tilhører. Sti, spørring og fragment bestemmer eieren av den hosten selv. Der kan det altså stå hva som helst, også navnet på en annen organisasjon.
Du leser hosten fra høyre mot venstre, ledd for ledd. Slutten er det viktigste.
Det registrerbare domenet og den offentlige suffikslisten
Det er ikke hele hosten som forteller hvem eieren er, men én del av den: det registrerbare domenet. Det er navnet noen har registrert hos en registrar. Alt til venstre for det er subdomener, og dem lager eieren selv, så mange han vil.
For å finne det registrerbare domenet må du vite hvor du faktisk kan registrere et eget navn. En slik del kalles et offentlig suffiks. Eksempler er com, no og example, men også co.uk: i Storbritannia registrerer du som bedrift et navn under co.uk. Det registrerbare domenet er da det offentlige suffikset pluss ett ledd foran det.
| Host | Offentlig suffiks | Registrerbart domene |
|---|---|---|
www.example.com | com | example.com |
inlog.mijnbank.example | example | mijnbank.example |
www.shop.[navn].co.uk | co.uk | [navn].co.uk |
mijnbank.co.uk.example | example | uk.example |
Tommelfingerregelen «ta de to siste bitene» slår altså feil. Ved www.shop.[navn].co.uk ville du fått co.uk, og det tilhører ingen spesielt. Og det siste eksempelet viser at co.uk midt i et navn ikke betyr noe: der er uk.example eieren.
Hvilke suffikser som er offentlige, står i Public Suffix List (publicsuffix.org), en liste Mozilla startet og som nå vedlikeholdes av fellesskapet. Nettlesere bruker den blant annet til å avgjøre hvilke nettsteder som kan dele informasjonskapsler, og til å fremheve den viktige delen av en adresse. Listen har også en del med «private» suffikser: tjenester der kunder får et eget subdomene, som enkelte vertstjenester for blogger og prosjektsider. Hver kunde under det telles som en egen eier.
Står et suffiks ikke i listen, gjelder standardregelen: det siste leddet er suffikset. Derfor er det registrerbare domenet ved .example alltid de to siste leddene.
Triks med subdomene, sti og @
Nå som du vet hvor eieren står, ser du hvordan angripere lurer øynene dine. De plasserer navnet du forventer et annet sted i lenken.
Subdomene-triks.
https://mijnbank.example.inlog-check.example/loginDu ser mijnbank.example fremst. Men les fra høyre: suffikset er example, det registrerbare domenet er inlog-check.example, og det tilhører angriperen. Angriperen har kjøpt det domenet og selv satt subdomenet mijnbank.example foran det.
Sti-triks.
https://inlog.example/mijnbank.example/klant/loginHosten er inlog.example og ikke noe mer. Alt etter den første enkle / er stien, og det velger eieren av inlog.example selv.
@-triks.
https://mijnbank.example@aanvaller.example/inloggenEn URL kan ha en brukerdel foran hosten, avsluttet med @ (standarden for URL-er, RFC 3986, kaller dette userinfo). Alt før @ er altså ikke host. Nettleseren går til aanvaller.example og ingen andre steder. Noen nettlesere advarer om eller fjerner brukerdelen, men stol ikke på det.
En nyttig fast fremgangsmåte: finn den første / etter https://. Det som står foran er hosten (eventuelt med en brukerdel og @). Står det en @, begynner hosten først etter den. Les hosten fra høyre mot venstre til du har det registrerbare domenet.
Lookalikes, typosquatting og punycode
En lookalike er et eget domene som ligner på et annet:
| Lookalike | Triks |
|---|---|
rnijnbank.example | rn ligner i mange skrifttyper på m |
mijnbnak.example | to bokstaver byttet om (typosquatting: satser på en skrivefeil) |
mijnbank-veilig.example | et ekstra ord med bindestrek: et helt annet domene |
mijnbank-example.example | punktet byttet ut med en bindestrek |
mijnbank.example.inlog-check.example | det ekte domenet som subdomene (se over) |
Et skritt videre er homografen: et domene med bokstaver fra et annet skriftsystem som ser like ut. Den kyrilliske а ser ut som den latinske a, men er et annet tegn for datamaskinen. Domenenavn med slike tegn kalles internasjonale domenenavn. DNS kjenner bare bokstavene a til z, tall og bindestrek, så et slikt navn omgjøres til punycode (RFC 3492): en form som begynner med xn--.
mijnbаnk.example (med en kyrillisk а)
xn--mijnbnk-6fg.example (samme navn i punycode)Ser du xn-- i en adresse, inneholder det navnet tegn utenfor a til z. Det kan være helt normalt (mange språk har aksenter eller et eget skriftsystem), men i et navn som ellers ser norsk eller engelsk ut, er det et sterkt signal. Nettlesere har regler for å vise mistenkelige kombinasjoner som punycode; Chrome viser for eksempel en etikett med blandet latinsk og kyrillisk skrift som xn--. Men disse reglene fanger ikke opp alt, og i en e-post eller chat ser du ofte bare de pene bokstavene.
Forkortere og open redirects
URL-forkortere gjør en lang lenke kort, som https://kort.example/a8Xk2. Praktisk, men du ser ikke målet. Det registrerbare domenet til lenken tilhører forkorteren, ikke organisasjonen du forventer. En bank eller leverandør som ber deg logge inn via en forkortet lenke: ikke gjør det.
En open redirect er en side på et ekte nettsted som sender besøkende videre til hvilken som helst adresse som står i lenken:
https://mijnbank.example/doorsturen?naar=https://aanvaller.example/inloggenHosten er virkelig mijnbank.example, men etter ett klikk er du på aanvaller.example uten å merke det. Også med en forkorter eller en sporingslenke fra en nyhetsbrevtjeneste havner du et annet sted enn det første domenet. Lærdommen: se på adressefeltet på nytt etter at du har klikket, før du fyller inn noe. Og hengelåsen? Den sier bare at forbindelsen er kryptert. Også falske nettsteder har et gyldig sertifikat.
I praksis: slik ser det ut
På en datamaskin holder du musepekeren over en lenke uten å klikke; det ekte målet vises nederst til venstre i vinduet eller i en boble. I de fleste e-postprogrammer og nettbaserte e-postløsninger fungerer dette også. På en mobil holder du fingeren på lenken: du får en meny med adressen over. Velg da ikke «åpne».
Pass på to fallgruver:
- Den synlige teksten er ikke målet. I en e-post kan det stå
https://mijnbank.examplepå knappen eller i teksten, mens lenken under går til en helt annen adresse. Bare det du ser når du holder musepekeren over eller trykker lenge, teller. - Lange adresser blir avkortet. Mobiler viser ofte bare starten. Nettopp den viktige slutten faller da bort. Bla eller trykk i adressen for å se den helt ut.
Er du i tvil, skriv selv inn adressen du kjenner, eller bruk bokmerket ditt.
Oppsummering
- Bare hosten avgjør hvem et nettsted tilhører. Sti, spørring og alt foran en
@velger angriperen selv. - Det registrerbare domenet er det offentlige suffikset pluss ett ledd. Bruk Public Suffix List, ikke «de to siste bitene» (tenk på
co.uk). - Les hosten fra høyre mot venstre. Det ekte domenet fremst som subdomene er et klassisk triks.
- Lookalikes: bokstavbytte, ekstra ord, homografer.
xn--betyr tegn utenfor a til z. - Forkortere skjuler målet, open redirects sender deg videre. Se på adressefeltet på nytt etter et klikk.
Quiz
Oppgave
Oppgave A3.2: Finne det registrerbare domenet. Du får åtte lenker. Fyll inn det registrerbare domenet for hver lenke, og angi om lenken stemmer med den ekte organisasjonen. Programmet retter svaret ditt med Public Suffix List.
Oppgave A3.2b: Lumske lenker. Åtte lenker med @-triks, punycode, forkortere og viderekoblingssider. Fyll inn per lenke hvilket domene du havner på, eller velg «kan ikke ses».
Les mer
Trinnene i WebOké-artiklene gjelder for miljøet til WebOké; hos andre leverandører fungerer det på lignende måte.
- Er denne e-posten virkelig fra WebOké? Gjenkjenne phishing og bruke aksjonskoden
- DNS-kurs, om domenenavn og hvordan du leser dem: https://www.weboke.no/dns-cursus
- Nasjonal sikkerhetsmyndighet (NSM), om spoofing: https://nsm.no/
- Public Suffix List: https://publicsuffix.org/
- RFC 3986, oppbygningen av en URL (blant annet userinfo): https://www.rfc-editor.org/rfc/rfc3986
- RFC 3492, Punycode: https://www.rfc-editor.org/rfc/rfc3492
- Chromium, når nettleseren viser et internasjonalt navn som punycode: https://chromium.googlesource.com/chromium/src/+/main/docs/idn.md
