Server Name Indication (SNI) är den del av TLS som berättar för servern till vilken webbserver du vill besöka. Detta behövs om din webbserver bara har en IP-adress men flertalet certifikat. Detta fält går i klartext och gör att någon som kan se din nätverkstrafik också kan se vilken webbserver du besöker.
För att göra det svårare har bl.a. Domain Fronting används av såväl Tor som skadlig kod för att försvåra analys av nätverkstrafik men detta är något som flertalet leverantörer såsom CloudFlare nu stängt ner.
Följande bild förevisar bra där server_name skickas i klartext under handskakningsprocessen:
Firefox släppte precis stöd för ESNI (encrypted SNI) i sin nightly build. Du kan testa att ESNI fungerar genom att surfa till följande URL. Och glöm inte att slå på DoH:
Att ta fram en lösning som krypterar SNI var inte helt trivialt eftersom det rör sig om ett ”hönan eller ägget”-problem. Men för att lösa detta problem så används en ny nyckel hos klienten samt en ESNIKeys-structure som placeras i DNS:
Givetvis bör krypterad DNS också användas:
Moreover, as noted in the introduction, SNI encryption is
less useful without encryption of DNS queries in transit via DoH or DPRIVE mechanisms.
För mer matnyttig läsning rekommenderas följande IETF-draft:
DNS över HTTPS eller DoH som det även kallas är en relativt ny IETF-draft som är skriven av Paul Hoffman på ICANN samt Patrick McManus på Mozilla. Målet med DoH är att skicka DNS-förfrågningar som vanligtvis går i klartext över internet i en krypterad tunnel över https. DoH är ett alternativ till DNSCrypt samt DNS över TLS.
Än så länge finns det stöd i webbläsarna Firefox och Chrome(?), dock inte aktiverat som standard.
Om du gillar risker i livet så kan du redan nu vill testa DoH. Har du en relativt ny version i Firefox kan du göra enligt följande:
Skriv about:config i adressraden
Godkänn ett eventuellt varningsmeddelande
Sök efter network.trr som prefix i inställningsnamnet. TRR står för Trusted Recursive Resolver
Ändra följande inställningar:
Sätt network.trr.bootstrapAddress till 1.1.1.1
Sätt network.trr.confirmationNS till kryptera.se
Sätt network.trr.mode till 3
Sätt network.trr.uri till https://mozilla.cloudflare-dns.com/dns-query
Sedan är det klart. Du måste eventuellt starta om Firefox.
Skärmdump:
Och för att verifiera att DoH/TRR används så kan du göra enligt följande:
Skriv about:networking i adressraden
Godkänn eventuellt varningsmeddelande
Tryck på DNS till vänster
Titta på kolumnen där det står TRR. Där bör det stå true på majoriteten av genomförda uppslagningar:
Alternativt titta direkt på nätverkstrafiken med Wireshark eller tcpdump.
Skärmdump:
Några förklaringar: network.trr.mode kan sättas till något av följande lägen:
0 – Av (standard). Använd vanlig DNS
1 – Race native against TRR. Kör vanlig DNS och TRR och ta den som hinner först
2 – TRR first. Använd TRR enbart och använd DNS som backup
3 – TRR only. Kör bara TRR, använder enbart DNS för bootstrap (dvs hitta till DoH-servern)
4 – Shadowmode. Kör TRR hela tiden i bakgrunden men använd DNS. Bra för att undersöka svarstider etc
5 – Explicitly off. Välj att stänga av TRR
Funkar det dåligt med att köra mode 3 så kan du ändra till 2.
Även om DNS krypteras enligt ovan så läcker https klartext fortfarande om vart du surfar med fältet Server Name Indication (SNI). Men det finns hopp om kryperad SNI också.
Och för mer information om Firefox implementation av DoH kan jag rekommendera Daniel Stenbergs blogginlägg.
Daniel har även skrivit ett testprogram i C för att ställa doh-förfrågningar direkt från kommandotolken:
Det kan även vara bra att läsa Cloudflares privacy policy.
Google meddelade för ett tag sedan att de favoriserar sajter som går att nå över https. Och igår så meddelade även de även att de nu kommer att välja https-urler före http-urlen om ett antal kriterier uppfylls:
Sidan inte innehåller osäkra beroenden (dvs innehåll över http)
Sidan inte är blockerad i robots.txt
Sidan inte gör ompekningar till http-versionen
Sidan inte innehåller rel=”canonical” länkar till http-version
Sidan inte innehåller noindex robots meta tagg.
Sidan inte har on-host utlänkar till HTTP URLer.
Sitemapen innehåller HTTPS URLer, eller att den ej listar HTTP URLen
Sidan har ett fungerande TLS-certifikat
Även intressant är att Google crawlern nu även fångar upp HSTS-headers.
Läs mer om HTTP Strict Transport Security (HSTS) här:
Vår systemsajt https.se har nu öppnat upp möjligheten att köpa SSL-Certifikat med hjälp av Bitcoin. Bitcoin har blivit otroligt populärt i Sverige och nyligen så hade bl.a. DN en artikel om en taxi i Sverige där det är möjligt att betala med Bitcoin.
1 BTC är cirka 3100 SEK med dagens kurs.
Vill du ha koll på svenska Bitcoin-nyheter? Se då till att följa Bitcoin.se där finns även en lista med handlare som tar Bitcoin.
Verktyget mitmproxy som används för att genomföra man-i-mitten attacker (man-in-the-middle) angrepp finns nu ute i en ny version. Verktyget kan exempelvis användas för att analysera trafik till och från datorer, iPhone, iPads eller andra enheter.
* New built-in key/value editor. This lets you interactively edit URL query
strings, headers and URL-encoded form data.
* Extend script API to allow duplication and replay of flows.
* API for easy manipulation of URL-encoded forms and query strings.
* Add ”D” shortcut in mitmproxy to duplicate a flow.
* Reverse proxy mode. In this mode mitmproxy acts as an HTTP server,
forwarding all traffic to a specified upstream server.
* UI improvements – use unicode characters to make GUI more compact,
improve spacing and layout throughout.
* Add support for filtering by HTTP method.
* Add the ability to specify an HTTP body size limit.
* Move to typed netstrings for serialization format – this makes 0.7
backwards-incompatible with serialized data from 0.6!
* Many minor bugfixes and improvements.
Här kommer en kortare länksammanfattning om det som vi twittrat om på sistone:
McAfee släpper topp 10 säkerhetstips för iPhone. Ladda hem PDF här.
Säkerhetsföretaget Immunity med före detta NSA-anställde Dave Aitel som grundare släpper ett verktyg som underlättar angrepp via WiFi med hjälp av WEP. Video hittar du här.
Google börjar att använda elliptiska kurvor för att skydda trafik via HTTPS. Mer specifikt så använder de ECDHE och RC4 vilket också möjliggör PFS eller (perfect) forward secrecy. Google har även bidragit till att OpenSSL-biblioteket stöder detta, se här.
Bruce Schneier som talade på konferensen Internetdagarna i veckan tipsar även om en gratis kryptokurs på Stanford.
Slashdot tipsar om att OpenPGP nu finns implementerat i JavaScript vilket gör det möjligt att köra i webbläsaren på godtycklig webbsida. Ett bra exempel är att använda tillsammans med webbmail såsom Google Mail. Implementationen går under namnet GPG4Browsers. Även så har SecWorks skrivit utförligare om detta.
Den populära mikroblogg-tjänsten Twitter börjar successivt med att slå på https för samtliga avändare. Vi rapporterade i Mars att Twitter slagit på https och valet att nu gå över helt till https beror troligtvis på attacker såsom Firesheep.
Webbläsarverktyget HTTPS Everywhere finns nu ute i version 1.0. HTTPS Everywhere är ett verktyg som gör att många av de vanligaste webbsajterna vi surfar till dagligen använder den krypterade versionen av webbsurf dvs https. I dagsläget så ligger runt 1000 sajter inlagda i verktyget att automatiskt gå över till https istället för http.
Tyvärr så fungerar HTTPS Everywhere enbart till Firefox i dagsläget. Begränsningar i API:t hos Safari och Chrome gör att det ej är möjligt att göra ett verktyg som HTTPS Everywhere. Vi hoppas så klart att både Apple och Google kommer att införa förändringar i dess webbläsare som gör det möjligt att tvinga fram https.
HTTPS Everywhere kommer från frihetskämparorganisationen EFF som även står bakom verktyg såsom Tor.
Vi kan nu erbjuda 200 kr rabatt vid beställning av SSL-certifikat från https.se. Https.se säljer Geotrust-certifikat och har svensk support. Använd följande rabattkod:
Skatteverket har missat att kryptera all kommunikation mellan dess iPhone/Android-app och servrar vilket resulterat i att en man-in-the-middle (MITM) attack varit möjlig. Appen är nu uppdaterad och säkerhetsbuggen är åtgärdad.