Odorik TLS/SRTP

Bez použití šifrování je relativně snadné odposlouchávat hovory, pokud je pro hovor použité Wifi připojení k internetu (útočníkovi se musí dozvědět heslo, to by ale neměl být větší problém), nebo pokud má útočník fyzicky přístup do lokální ethernetové sítě v místě, kudy hovor prochází. Kromě poslechu samotného hovoru bude znát, i komu jste volali. Odposlechnout SIP heslo ale není možné, i když šifrování hovoru není použito, heslo je i v tomto případě dostatečně chráněno.

Pro šifrování hovorů i signalizace tak, aby nemohlo dojít k odposlechu někde po cestě, je možné použít TLS(SIPS)/SRPT. TLS(SIPS) slouží pro šifrování signalizace, SRTP k šifrování hlasových paketů. Přestože to některé telefony umožňují, nemá smysl použít šifrovaní jen pro samotné hovory (SRTP) v situaci, kdy není šifrována signalizace, protože šifrovací klíče se přenáší samotnou signalizaci a útočník by tak k nim měl přístup.

POZOR! V případě použití TLS nesmí být u proxy definován port.

např: sip.odorik.cz:6688 pouze sip.odorik.cz.

Proxy naslouchá TLS na portech 5061 (standardní) nebo 6689. Na portu 6670 je použit jiný certifikát viz níže.

TLS

TLS je způsob šifrování TCP signalizace SIP protokolu. Signalizace není hovor samotný ale pouze informace o tom, kdo komu volá, jakým hlasovým kodekem a pod. TLS se nejčastěji používá spolu se SRTP, ale může být použito i samostatně. V tomto případě nebude možné odposlechnout, kdo komu volá, půjde však odposlechnout samotný hovor. Pokud vám jde jen o to, aby nebylo možné odposlechnout SIP heslo, nedělejte si starosti, o to je postaráno i při použití nešifrovaného SIP protokolu. Předgenerovaná SIP hesla o osmi znacích obsahující jména a číslice by nemělo být možné lousknout v rozumném čase za rozumnou cenu.

SRTP

RTP jsou vlastní hlasová data. SRTP jsou šifrovaná hlasová data. Tato data proudí na jiném portu než signalizace. Pokud šifrujeme samotný hovor pomocí SRTP, je nutné šifrovat i signalizace pomocí TSL. V signalizaci se totiž předávají klíče šifrování, a pokud signalizace nebyla šifrovaná, šifrovat samotný hovor pak postrádá smysl. Bohužel toto nepochopili např. vývojáři telefonu Grandstream GXP 280, který naprosto nesmyslně podporuje SRTP ale ne TLS. http://en.wikipedia.org/wiki/Secure_Real-time_Transport_Protocol

Veřejný klíč certifikační autority

Platny od 19.8.2015 do 16.8.2016

-----BEGIN CERTIFICATE-----
MIIDuzCCAqOgAwIBAgIJAODHGEs+3z6TMA0GCSqGSIb3DQEBBQUAMHUxETAPBgNV
BAMTCE9kb3Jpa0NBMRcwFQYDVQQIEw5DemVjaCBSZXB1YmxpYzELMAkGA1UEBhMC
Q1oxITAfBgkqhkiG9w0BCQEWEmtvbnRha3RAbWluaXRlbC5jejEXMBUGA1UEChMO
bWluaVRFTCBzLnIuby4wHhcNMTUwODE4MDcwNDI0WhcNMTYwODE3MDcwNDI0WjB1
MREwDwYDVQQDEwhPZG9yaWtDQTEXMBUGA1UECBMOQ3plY2ggUmVwdWJsaWMxCzAJ
BgNVBAYTAkNaMSEwHwYJKoZIhvcNAQkBFhJrb250YWt0QG1pbml0ZWwuY3oxFzAV
BgNVBAoTDm1pbmlURUwgcy5yLm8uMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB
CgKCAQEAo+M5liVAX98vB4rTvkh89Q8MFq7sRtsDptqO9dVbDZLFlloGWg2z7jUW
lOKzBRg16ihV+MYasmxK3mDiL9nRGc8FzD+VD6qTxtkNJxHpL0KTHl+QtmpSxd71
8ulFoWQ81yChrHqV2niI/lKnmA903pzCXIyc/0fUsT8rwOdrOaianWD8ig7yLJy/
UEGus51UPKJl5u6/hgTcbsBTJzi/PBhQp3OcKYwmr+G+YU0Z2Fwn9vOAOcx6U/5Q
3s7l4Tx/8Kfu3wf9jLBvUmf0QitnJW/WqPx8u7w/v3TaseDBEIl3dDoDDdcxLtqO
Ir/VmQMlzP7gy6xbENF68JcOph7NAQIDAQABo04wTDAMBgNVHRMEBTADAQH/MB0G
A1UdEQQWMBSBEmtvbnRha3RAbWluaXRlbC5jejAdBgNVHRIEFjAUgRJrb250YWt0
QG1pbml0ZWwuY3owDQYJKoZIhvcNAQEFBQADggEBAFd3jz4kJBBqDFe6usfulDaT
AmcJqUVlxAjY8+XfsX7cl26cvy4rjXHTPDpmLmJRxllH86KF2GT90Q5H6+7e1Hbb
tDEBVIrfCo7mdhZm824yY3L4lU9WEYt0JV1829XX3ckZ3m9bw3WYImEiFxga15zX
f13uSu+Ut4NFs3ZuI40oRCS+ercSSg+QgTtlYN7DLH0nCXyLGfe671AaDxhmIPav
iL8zAyUzC/xD7uUjfJUtt25t4fi/fcc2Cu5J2ZKLeMRuiSxsyBzxz4ZbJPDQhVMR
inOH6XG6pvyUK0MKRZUMnEAkVZLyQf2TuaW7QC6V8kK2iGZ1nZADsEFhGadgFmk=
-----END CERTIFICATE-----

Platny od 16.8.2016 do 29.9.2055

-----BEGIN CERTIFICATE-----
MIIDvTCCAqWgAwIBAgIJAOKH0n9bgybKMA0GCSqGSIb3DQEBBQUAMHUxETAPBgNV
BAMTCE9kb3Jpa0NBMRcwFQYDVQQIEw5DemVjaCBSZXB1YmxpYzELMAkGA1UEBhMC
Q1oxITAfBgkqhkiG9w0BCQEWEmtvbnRha3RAbWluaXRlbC5jejEXMBUGA1UEChMO
bWluaVRFTCBzLnIuby4wIBcNMTYwNDI2MTQyNDMyWhgPMjA1NTA5MjkxNDI0MzJa
MHUxETAPBgNVBAMTCE9kb3Jpa0NBMRcwFQYDVQQIEw5DemVjaCBSZXB1YmxpYzEL
MAkGA1UEBhMCQ1oxITAfBgkqhkiG9w0BCQEWEmtvbnRha3RAbWluaXRlbC5jejEX
MBUGA1UEChMObWluaVRFTCBzLnIuby4wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
ggEKAoIBAQCeVYv84PV4uJ1/CXZTnsxeeCSB5QFxu2894tiVrFiXI3cBMtCEtM7X
jMCLMZZZJPlyRxHkSujsHJiyK61tvs26r/HSmWITWU6gpEIEXXl6j6nHC/NK+Vxi
jl5RC95vZXhaRw70PYmUqNCiEgjIjznLOQZnUFIfI5OIYh5tloy7gk2HMC6FZFbz
6dDrgh6Mnk4adbeITQawnwUC4zs8pBJFJM2nKDKEL+DHaIgJKeLCMcu5EL7IATME
6wG9SjIwmCDI9EQSO1+y3+niDWno12T75M9XzNvib4TEirAke4YPImV7UJtcY9R8
dw0/AaA6JnM3f/tdpPNZw5QZHbOshzRvAgMBAAGjTjBMMAwGA1UdEwQFMAMBAf8w
HQYDVR0RBBYwFIESa29udGFrdEBtaW5pdGVsLmN6MB0GA1UdEgQWMBSBEmtvbnRh
a3RAbWluaXRlbC5jejANBgkqhkiG9w0BAQUFAAOCAQEAhmWpwb0VcSvLsjxiBdQu
y6IaTUoaEXjOKHhfGHkCgbWCG7VVpbR+s2tOQk1VjtXF7PgFSbjFSv0Y0KQ0FByr
cQ4ZFhaO4hvhrCzg7V1u64pISpAhqtdABKGDmWe/FeXsCMI63rgYDx850p98AR9T
61nCr0vPhRfYWHUdccQX2F8BrVSK6n6S2o3tyDN/VijSfLrN4vQ3f6S3VvJ35QcC
psNRN5Bg77LR53L86gLR/u7MMtQ7lnU84HDyeDgCu1xEHXiM+Uba3zilKY2UGUIO
5GyLZR963gXbFIX/SnX23MBiRlTirLC1R9/Av1SpINoHPZA96qxAfx0jrM+P8C4O
Vg==
-----END CERTIFICATE-----

Silnejsi certifikat na portu 6670. Platny do 17.10.2056

-----BEGIN CERTIFICATE-----
MIIDvTCCAqWgAwIBAgIJAIVsPyirYWShMA0GCSqGSIb3DQEBCwUAMHUxETAPBgNV
BAMMCE9kb3Jpa0NBMRcwFQYDVQQIDA5DemVjaCBSZXB1YmxpYzELMAkGA1UEBhMC
Q1oxITAfBgkqhkiG9w0BCQEWEmtvbnRha3RAbWluaXRlbC5jejEXMBUGA1UECgwO
bWluaVRFTCBzLnIuby4wIBcNMTcwNTE1MDg0MzE2WhgPMjA1NjEwMTcwODQzMTZa
MHUxETAPBgNVBAMMCE9kb3Jpa0NBMRcwFQYDVQQIDA5DemVjaCBSZXB1YmxpYzEL
MAkGA1UEBhMCQ1oxITAfBgkqhkiG9w0BCQEWEmtvbnRha3RAbWluaXRlbC5jejEX
MBUGA1UECgwObWluaVRFTCBzLnIuby4wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
ggEKAoIBAQDKtbitbShMOOzZ4y1AmoMcA+L8FgtuDahpL/ZSJHvkLM4/1UgZWVNo
nmSbikQ0a306O++7vrVrJf4NInIpNSCBKrp8PoUGk+v1WJSfpg/dWRRLiujh00PQ
r8HbclW+KzGkb8Nj9E7bLWwMNfFqneuvSOMsXBwZypDEtMNb8UApIL/GEWMEyHZQ
SsPyPLzApjnCs6y8ZymTV4UslLDoMQ+s4V+5Vf98kX92FtSbkTXJpmIpFfqVGF7B
PJZxHF8C0UrbPZKXTH103kIwFdm9J37v6kt6XHwzYhxIQq+5rMmTMwpcKWIOy2Aa
/VEVtm1q7E7TujhrfodKUJ+CTpM0fh+nAgMBAAGjTjBMMAwGA1UdEwQFMAMBAf8w
HQYDVR0RBBYwFIESa29udGFrdEBtaW5pdGVsLmN6MB0GA1UdEgQWMBSBEmtvbnRh
a3RAbWluaXRlbC5jejANBgkqhkiG9w0BAQsFAAOCAQEAL2XLfmwX1Ky4tiCTEbYd
X+YFWH+Nz0AWMqYvU6p5b9Ctgxk21UJ3VWspiGfJMOQicgtL/2okggKN3Ud6GgGb
O5hpLQUPhzKHIBb4IIc+DCcLi7qRaVTk0OG/PWtsamadwJf3d5HIs1ZT6TjMj5ez
3kEOQOpMrhq7pK+jOmkpGkqeTBfSwConfQsMtRY3YpvQ0gqSOmUC+yW4swzFIPgo
xLPl7bJj7yqgfYr4MOlkSYiUc0YMw7mJlTBgHZ3yhh8BV7igUXXF+enPDGhx6ozO
paxiwuPwAfN3XM91mqhBnu+pSqXQpoYJJ1TBfbVS5Oxq51rtJ1ZThBEMdT3v8d6b
Jw==
-----END CERTIFICATE-----

Používat certifikáty je nutné, jen pokud si tuto možnost zapnete (nebo ji máte defaultně zapnutou na svém telefonu). Doporučujeme si do telefonu přidat oba certifikáty (např. u telefonu Yealling/Well), abyste později při změně certifikátů nemuseli nic přidávat či měnit.

Nastavení Grandstream GXP1400

Co se týče příchozích šifrovaných hovorů a vůbec hovorů se signalizaci na TCP, jeví se nám telefony Grandstrem GXP 1400 a GXP 1450 problémové. Můžete ale zkusit tento návod. Doporučujeme na jedné lince používat jen jeden telefon. Postup, jak si nahrát nejnovější firmware, naleznete zde http://www.odorik.cz/w/grandstream_gxp1400

Samotná věta „Protokol pro RTP pakety:“ UDP/TCP/TLS TCP „ je nehorázná chyba překladatele. RTP totiž nikdy přes TCP nechodí. Vždy jde přes UDP. Zjevně tam mělo být protokol SIP signalizace:. V angličtině je tam „SIP Transport“.

Zde zapnete šifrování pro samotný RTP tok, tedy hovor samotný.

Šifrovaný hovor poznáte tak, že je na displeji telefonu zobrazen zámeček během hovoru.

Restart telefonu Grandstream GXP 1400 do továrního nastavení

Pokud telefon záhadně zlobí, nebo si již nevíte rady, můžete začít úplně od začátku restartováním do továrního nastavení:

České menu telefonu:

menu → konfigurace → tovární reset

Anglické menu telefonu:

menu → config → factory reset

Mějte na paměti, že k datu 01.03.2013 není telefon stále dokonale odladěn ani s nejnovějším firmware. Např. zapomíná ručně vložené kontakty při restartu.

Nastavení Well/Yealink SIP-T20

Pokud si telefon kupujete vyloženě kvůli šifrovaným hovorům, dejte v tomto případě přednost telefonu Well. Chová se korektněji než telefony Grandstream GXP 1400.

Zde zapnete šifrování signalizace.

Zde zapnete šifrování samotného hovoru.

Šifrovaný hovor poznáte tak, že je na displeji telefonu zobrazen zámeček během hovoru.

Buď si kontrolu kontrolu certifikátu vypněte, nebo nahrajte naše certifikáty (viz výše) do telefonu jako důvěryhodné

Nastavení Grandstream 701/702

Nastavení na stránkách Odorik.cz

Aby vám fungovalo vynucení šifrování i u příchozích hovorů, zapněte si tuto volbu.

Z výpisu přihlášených zařízení, je zjevné, že se zařízení hlásí přes TLS (sloupeček protokol) na portu 5061, který je vyhrazen pro SIP signalizaci šifrovanou přes TLS.

Nastavení CSipSimple - android

Začněte tím, aby fungovalo nešifrované volání pomocí wizardu najdete odorik.cz a vyplnít jen jméno a heslo linky a pak si TLS a SRTP dodatečně zapněte v expertním režimu. Přepnutí do expertního režimu provedete následovně: Ve výchozí obrazovce s číselníkem stiskněte menu a vyberte ucty, potom dlouhý stisk na Odorik.cz v menu vyberte 'Vybrat pruvodce' (může být nutné zkrolovat) a projeďte nabízené operátory a zvolte Expert.

Podporu TLS, SRTP a případně ZRTP je nutné nečekaně povolit nejen u daného SIP účtu, ale i v celkovém nastavení programu společném pro všechny SIP účty. Najdete to v „nastavení→síť→zabezpečení přenosu“. Další nastavení se provádí logicky u SIP linky, kterou chcete použít. Tedy Přenos na TLS a SRTP mod na povinné. Netradiční port můžete (ale nemusíte - použije se pak automaticky 5061) nastavit v položce která se jmenuje Proxy URI: např. sip:sip.odorik.cz je můžete změnit na sip:sip.odorik.cz:6670 Pokud máte všechno správně, u probíhajícího hovoru pak svítí na žlutém pozadí, že je použit TLS i SRTP. Celá bíle napsaná věta na žlutém pozadí, která je nejspíš špatným překladem z angličtiny, co je vidět během hovoru, zní: „TLS přenos je využíván k okamžitému hopu SRTP“. Obrázky s nastavením na našem fóru: http://forum.odorik.cz/viewtopic.php?f=32&t=4536#p35501, tam ale zapomněli na nastavení SRTP.

Vypadá to, že v CSIPSimple nelze nastavit vlastní certifikační autoritu ani certifikát a program se zaregistruje a volá i s použitím našeho certifikátu podepsaného vlastní nedůvěryhodnou autoritou. Dobrý kompromis by byl, kdyby CSIPsimple varoval alespoň při prvním hovoru. Ale ani to, zdá se se neděje. A nenašel jsem nikde volbu, kde by se tohle ne úplně bezpečné chování dalo vypnout/zapnout. Možná to někdy opraví a pak TLS přestane fungovat nebo se začne při prvním hovoru ptát.

CSipSimple a ZRTP

CSIPSimple podporuje i šifrování přes ZRTP, které si můžete také povolit. ZRTP lze využít jen pro hovory uvnitř sítě Odorik, ale ZRTP má zásadní výhodu, že se jedná o šifrování end to end s tím, že klíče se nepředávají v signalizaci, ale přímo ve zvuku takovým způsobem, že je není možné získat nikde po cestě ani na SIP a RTP proxy. Tedy není možný odposlech nikde po cestě, ani kdyby servery Odoriku obsadilo novodobé gestapo. I když SRTP v případě vytočení dvou hvězdiček před číslem linky proudí také napřímo, klíče jsou posílány pomocí TLS, které je na odorik sip proxy dešifrováno. Ke klíčům má tak teoreticky přístup ten, kdo má přístup k SIP proxy, tedy teoreticky ono novodobé gestapo.

Pro hovory přes ZRTP je nutné volat jen linky v síti, a to se dvěmi hvězdičkami na začátku. Tedy vytočíte číslo např. **300116. ZRTP je vhodné kombinovat s TLS (aby nešlo odposlechnout, kdo komu volá). Pokud ale necháte povoloné obojí, jak SRTP tak ZRTP bohužel přednost dostane „horší“ SRTP. Aby si tedy byly schopny volat dvě linky s využitím ZRTP, je alespoň na jedné z těch linek nutné zakázat SRTP, jinak by bohužel dostalo přednost. Použité šifrování můžete zkontrolovat kdykoli během hovoru ve žlutém pruhu.

Zoiper

U Zoiperu je šifrování jednodušší. Stačí povolit SRTP, čímž bude vyzváni i povolení TLS. Pokud Zoiper používáte na nestandardním portu jako 443 je nutné port smazat, nebo upravit na jeden z portů využívaný pro TLS. Při prvním přihlášení jste varování, že se certifikát na sip.odorik.cz není podepsán důvěryhodnou autoritou, to nechte ignorovat.

 
srtp.txt · Poslední úprava: 2018/10/22 10:07 autor: misa