Weekend Prosjekt: Sikre Instant Messaging med Off The Record

Instant messaging, akkurat som e-post eller VoIP-trafikk, må være sikret mot uvedkommende, man-in-the-middle angripere, og andre sikkerhetstrusler. Mange IM-klienter kan tunnel meldinger over Transport Layer Security (TLS) for å gi kryptering, inkludert XMPP (aka Jabber), IRC, og OSCAR protokoll som brukes av AIM. TLS gir autentisering og kryptering på et lavt nivå, men en betydelig sikker løsning for IM er en protokoll som heter Off The Record (OTR). Trekke opp en stol og sikre direktemeldinger i dag.

Hva OTR gjør og hvorfor du bryr

Selv om det ikke er noe galt i seg selv med TLS-kryptering, det fungerer best for en forbindelsesorientert , kontinuerlig strøm av data. OTR gir bedre sikkerhet ved å montere inn i asynkron, single-melding-at-a-time kommunikasjon modellen brukes av IM. I motsetning til PGP, krever det ikke brukerne å allerede ha et offentlig /privat nøkkelpar som skal hentes og verifisert i en utvendig kanal.

Med OTR protokollen, når begge deltakere i en samtale er enige om å starte en OTR sesjon, klientene satt opp en kryptert kanal med Diffie-Hellman nøkkelutveksling, deretter utføre en gjensidig godkjennings rutine inne som kanal for å kontrollere hverandres identitet. Etter at oppsettet blir en ny nøkkelutveksling utført på hver melding som sendes, basert på økes den tidligere erkjent nøkkelen. Deltakerne kan uavhengig bekrefte hverandres identitet ved hjelp av " sosialistiske Millionaires 'Protocol " (SMP) som tillater gjensidig bekreftelse uten å utveksle private data

De flere viktige børser gi ". Perfect Forward Secrecy " – noe som betyr at at det går en nøkkel gjør ikke
la en angriper dekryptere dine tidligere samtaler. Dette er en av OTR sin store fordeler over TLS-aktig kryptering alene. Den andre fordelen er ". Deniable autentisering " Fordi en delt hemmelighet sendes med hver melding i tillegg til tastene, en angriper som stjeler en nøkkel og dekrypterer en melding kunne bruke informasjonen i å fake hele meldingen.

Som kanskje ikke virke som en sikkerhet funksjonen ved første øyekast, men tenk hvordan det ville fungere i praksis: noen angriper kunngjør at han eller hun har mottatt og dekrypteres en melding mellom deg og din hemmelige kontakt. Men fordi den dekrypterte meldingen selv inneholder nok informasjon til å smi meldingen, er det ingen måte for angriperen å bevise det er ekte og ikke en fullstendig fabrikasjon fra grunnen av. Du kan bli liggende når du fornekter sin autentisitet, selvfølgelig, men poenget er at den påståtte dekrypterte meldingen ikke noen gang kan bli vist seg å være autentisk -. Motsetning til, si, en e-post som du signerte med din PGP-nøkkel

OTR støtte under Linux

Det beste med OTR, skjønt, er at det store flertallet av den kryptografiske oppsettet gjøres automatisk, uten behov for brukeren å ta en nøye sekvens av trinn. OTR prosjektet utgivelser bibliotek libotr, at IM-klienter kan bruke til å kryptere meldinger som sendes over alle
protokoll: AIM, XMPP, ICQ; hva som helst. Videre signal at en OTR klienten bruker å våkne opp en annen er en sekvens av blanke tegn som vil gå ubemerket av chat klienter som ikke støtter OTR i det hele tatt, men kan starte en OTR samtale sømløst mellom klienter som gjør.
< p> Det er to desktop Linux IM-klienter som har innebygd støtte for OTR: multiprotokoll KDE program Kopete, og konsollen XMPP klient mcabber. Begge er vanlige pakker som sendes med stasjonære Linux-distribusjoner. Kopete er OTR støtte er gitt av en plugin som følger med standardpakken, men må være slått på i Innstillinger - > Konfigurer dialog. Du kan velge mellom å kreve OTR, initiere OTR når den andre parten støtter det, manuelt initiere OTR bare, eller aldri bruker OTR.

mcabber klienten kjører i tekstmodus, men er et fullverdig XMPP klient i hver respekt. Du kan starte en OTR forbindelse med kommandoen /OTR starte CONTACT
, og angi OTR politikk med /otrpolicy standard etterfulgt av enten vanlig, manuell, opportunistisk, eller alltid. Du kan angi en bestemt politikk for en bestemt kontakt ved å erstatte at kontaktens navn i stedet for ". Standard "

I tillegg til disse desktop Linux-klienter, Android-brukere kan ta en titt på OtRChat, en spesiell XMPP klient bygget spesielt for OTR bruk.

OTR for Pidgin

I tillegg til libotr, OTR prosjektet i seg selv opprettholder OTR-muliggjør plugin for de mest populære Linux-desktop klient, Pidgin. Det kan eller ikke kan være tilgjengelig gjennom offisielle Apt eller RPM pakke repositories, men hvis det ikke er, kan du alltid hente den nyeste utgivelsen fra OTR nettstedet, som er vert bygger for Pidgin Windows port i tillegg til Linux. Den Pidgin OTR plugin integrerer litt dypere enn noen av de andre, så det er verdt en nærmere titt

Du aktiverer OTR plugin fra Tools - >.; Plugins dialogboksen. Når den er aktivert, velger " Konfigurer Plugin " nederst i vinduet for å få opp OTR innstillinger. Som med Kopete, kan du velge OTR politikk med enkle boksene; den Pidgin plugin etiketter er litt klarere med hensyn til hva innstillingene gjør, f.eks
, " initiere private meldinger " automatisk; snarere enn " Opportunistic ". Config skjermen kan du generere private nøkler for hver Pidgin konto, men gjør det ikke er nødvendig, fordi programtillegget vil generere nøkler på en etter behov. Du kan også undersøke en liste over tastene du har sett fra OTR samtaler med vennene dine, må du kontrollere dem med SMP, eller glemmer dem hvis du frykter at de kan ha blitt kompromittert.

Når aktivert, legger plugin en OTR meny til Pidgin samtalevindu. &Quot; starte privat samtale " alternativ, selvsagt, starter en OTR økt forespørsel med den andre parten. Under en chat-økt, viser menyen en av fire mulige OTR tilstander: " Ikke private " – betyr OTR ikke pågår, " Privat " – som betyr en OTR økten er i full gang, " Ubekreftet " – noe som betyr at du har startet en OTR session med den andre parten, men har ikke utført en SMP-godkjenning, og " Ferdig " – betyr den andre parten har lukket OTR økten, og du må gjøre det så godt å komme tilbake til normal chat-modus. Det siste er viktig; ved å blokkere deg fra å sende meldinger til du deaktiverer OTR på slutten din, hindrer systemet deg fra søl bønner på en kanal som du feilaktig tror er sikret.

Pidgin plugin legger også et høyreklikk kontekstmenyen elementet til vennelisten, slik at du kan sette per-kompis OTR preferanser. Vær forsiktig, skjønt, fordi utvalget du gjør ikke er oppført noe annet sted i grensesnittet, slik at det er mulig å glemme per-kompis politikk hvis du tilpasser for mange av dem. Både dialogen plugin konfigurasjon og per-kompis OTR innstillingsvinduet kan du angi at OTR samtaler ikke
være logget inn. Hvis dette er valgt, vil dette overstyre alle andre Pidgin loggingsinnstillinger som kan gjelde for samtalen.

OTR for IRC

Når det offentlige for øvrig mener om IM, de sannsynligvis tenker på tjenester som er drevet av store korporative aktører, for eksempel AIM eller Google Talk. I geek samfunnet, er imidlertid IRC fortsatt en kommunikasjons standby – faktisk, kan du neppe kalle deg selv en åpen kildekode-prosjekt med hodet holdes høyt hvis du ikke
ha en IRC-kanal.

Så det burde ikke komme som noen overraskelse at det er åpent kilde OTR verktøy bygget for bruk med IRC. Fordi OTR protokollen håndterer bare en-til-en-kommunikasjon, kan det bare brukes til å sikre en privat chat, ikke en hel kanal, men de private meldinger kan bli pålitelig kryptert akkurat som alt sendes over XMPP eller et annet system.

IRC OTR er gjort mulig av utviklerne av Bitlbee åpen kildekode IRC-to-IM gateway program, men det krever ikke kjører Bitlbee å fungere. På irssi-otr.tuxfamily.org finner du OTR plugins for både Irssi og for XChat. Den XChat plugin lastes inn ved oppstart automatisk; i Irssi må du skrive /belastning OTR å laste den i stedet.

I begge programmene, ikke plugin ikke legge menyer eller andre grafiske elementer til klienten, bare ekstra IRC kommandoer. Du kan starte en OTR samtale ved å skrive? OTR? til kompisen din. Den første gangen du så gjør, vil plugin generere en nøkkel for deg, noe som kan ta litt tid, men på påfølgende løp som ikke er en bekymring. IRC plugin er semi-manual i sin OTR politikken; den? OTR? kommandoen sender den spesielle mellomrom sekvensen til den andre parten, så du må kjøre den for å starte en samtale. På den annen side, når du mottar mellomrom OTR trigger, svarer IRC plugin automatisk.

Mens du chatter, kan du skrive /OTR auth å utløse en SMP autentisering sekvens, og /OTR mål å avslutte økten. Du kan også sette per-kontakt OTR politikk med en liste over " nick @ server politikk " parene bruker otr_policy variable

Den eneste virkelige påminnelse til å bruke OTR løpet IRC er at noen IRC-servere har stygg vane stripping ut mellomrom fra meldinger, noe som undergraver den automatiske OTR oppsett ".. håndtrykk " De IRC plugin utviklere forsikre brukerne om at dette er bare et problem når du bruker " opportunistisk " policyinnstillingen, og at manuelle OTR triggere håndteres riktig

Extra credit:.! andre klienter

nevnt ovenfor er bare fem Linux direktemeldingsklienter, og som rett og slett ikke er nok. Dessverre ser det ut som om utviklerne av Empati klient, som er planlagt å erstatte Pidgin som standard IM program i fremtiden Ubuntu utgivelser, har lenge vært uvillige til å legge til støtte for OTR til koden fordi de tror kryptering bør bygges inn i IM protokoll selv, og fordi Empati har ingen plugin system, en tredjeparts add-on er uaktuelt. Heldigvis, kan arbeidet med dette har endelig begynt progresjon, så det er håp.

I mellomtiden, er det fortsatt flere andre IM og chat-programmer som kan bruke en OTR plugin av sine egne. Det inkluderer XChat-GNOME, som per nå ikke kan kjøre eksisterende XChat OTR plugin, mange av de enkelt protokollen IM-klienter (Gajim, Emesene, KMess, etc.), og de fleste om ikke alle av de stemme-chat programmer som inkluderer SIP chat funksjonalitet som andre kommunikasjons alternativ.

Hvorfor ikke plukke opp din favoritt IM app, og se om integrering off-the-record sikkerhet gjennom libotr? Husk, til tross for hva navnet antyder, OTR gir trygghet for alle chat-brukere, ikke bare journalister bryte neste banebrytende historie. Anmeldelser