it-swarm-eu.dev

Jaký je rozdíl mezi SSL a SSH? Který je bezpečnější?

Jaký je rozdíl mezi SSH a SSL? Který z nich je bezpečnější, pokud je můžete je porovnat dohromady?
Která má více potenciálních zranitelností?

212
Am1rr3zA

SSL i SSH poskytují kryptografické prvky pro vybudování tunelu pro přenos důvěrných dat s kontrolovanou integritou. Pro tuto část používají podobné techniky a mohou trpět stejným druhem útoků, takže by měli poskytovat podobnou bezpečnost (tj. Dobrou bezpečnost) za předpokladu, že jsou oba řádně implementováni. To, že oba existují, je druhem syndromu NIH : vývojáři SSH měli znovu použít SSL pro část tunelu (protokol SSL je dostatečně flexibilní, aby vyhověl mnoha variacím, včetně nepoužívání certifikátů).

Liší se ve věcech kolem tunelu. SSL tradičně používá certifikáty X.509 pro oznamování veřejných klíčů serveru a klienta; SSH má svůj vlastní formát. SSH také přichází se sadou protokolů pro to, co se děje uvnitř tunelu (multiplexování několika přenosů, provádění ověřování na základě hesla v tunelu, správa terminálů). ..) zatímco v SSL neexistuje žádná taková věc, nebo přesněji řečeno, pokud se takové věci používají v SSL, nejsou považovány za součást SSL (například při ověřování HTTP založeném na heslech v tunelu SSL jsme říkají, že je součástí "HTTPS", ale ve skutečnosti funguje podobným způsobem, jaký se děje s SSH).

Koncepčně byste mohli vzít SSH a nahradit část tunelu částí z SSL. Můžete také vzít protokol HTTPS a nahradit věc SSL protokolem SSH s přenosem dat a háčkem a extrahovat veřejný klíč serveru z jeho certifikátu. Neexistuje žádná vědecká nemožnost a pokud by byla provedena správně, bezpečnost by zůstala stejná. Neexistuje však žádná rozšířená sada konvencí nebo existujících nástrojů.

Proto SSL a SSH nepoužíváme pro stejné věci, ale kvůli tomu, jaké nástroje historicky přicházely s implementacemi těchto protokolů, ne kvůli rozdíl související se zabezpečením. A kdo implementuje SSL nebo SSH, bylo by dobré se podívat, jaké útoky byly vyzkoušeny na obou protokolech.

199
Thomas Pornin

To není rozumné srovnání. SSL je obecný způsob ochrany dat přenášených po síti, zatímco SSH je síťová aplikace pro přihlášení a sdílení dat se vzdáleným počítačem.

Ochrana transportní vrstvy v SSH je podobná ve schopnosti SSL, takže která je „bezpečnější“ závisí na tom, co váš konkrétní model hrozby vyžaduje, a zda implementace každé adresy řeší problémy, které se snažíte řešit.

SSH pak má vrstvu autentizace uživatele, kterou SSL postrádá (protože to nepotřebuje - SSL potřebuje pouze k ověření dvou propojovacích rozhraní, která může SSH také udělat). V umění UTF-8:

      SSL              SSH
+-------------+ +-----------------+
| Nothing     | | RFC4254         | Connection multiplexing
+-------------+ +-----------------+
| Nothing     | | RFC4252         | User authentication
+-------------+ +-----------------+
| RFC5246     | | RFC4253         | Encrypted data transport
+-------------+ +-----------------+

Pokud jde o otázku, proti níž existuje více potenciálních útoků proti, zdá se jasné, že SSH má větší útočný povrch. Ale to je jen proto, že SSH má v sobě zabudovanou celou aplikaci: povrch útoku SSL + jakákoli aplikace, kterou potřebujete poskytnout nelze srovnávat, protože nemáme dostatek informací.

87
user185

Z přísného kryptografického hlediska poskytují oba ověřené šifrování, ale dvěma různými způsoby.

SSH používá tzv. Encrypt-and-MAC, tj. Šifrovaná zpráva je juxtaposed na autentizační kód zprávy (MAC) jasné zprávy pro zvýšení integrity. Toto není prokázáno, že je to vždy plně bezpečné (i když v praktických případech by to mělo stačit).

SSL používá MAC-then-Encrypt: MAC je postaven vedle čistého textu, pak jsou oba šifrovány. To není také nejlepší, protože u některých režimů blokové šifry lze části MAC uhodnout a něco odhalit na šifře. To vedlo k zranitelnostem v TLS 1.0 (útok BEAST).

Takže mají oba potenciální teoretické slabosti. Nejsilnější metodou je Encrypt-then-MAC (přidejte MAC šifrované zprávy), která je implementována např. V IPsec ESP.

12
Halberdier

Myslím, že existuje jeden aspekt tohoto srovnání, který byl přehlížen. user185 se přiblížil, ale úplně se tam nedostal. Souhlasím s tím, že se jedná o jablka a pomeranče a cítím se lépe mezi jablky a jablky ve srovnání s HTTPS a SSH. HTTPS a SSH používají různé vrstvy modelu OSI, a proto šifrují data v různých časech přenosu. Skutečné otázky, na které by se člověk měl ptát, by tedy odpovídaly tomu, kdy jsou tato data během přenosu šifrována a nezašifrována. To odhalí vaše potenciální povrchy útoku. U protokolu HTTPS, jakmile je paket přijat zařízením v cílové síti (webový server, Border Router, load balancer atd.), Není šifrován a zbytek své cesty tráví prostým textem. Mnozí by argumentovali, že to není velký problém, protože provoz je v tuto chvíli interní, ale pokud užitečné zatížení obsahuje citlivá data, je uloženo nešifrované v logovacích souborech každého síťového zařízení, kterým prochází, dokud se nedostane k jeho cílová stanice. U SSH je obvykle určeno cílové zařízení a přenos je šifrován, dokud nedosáhne tohoto zařízení. Existují způsoby, jak překódovat data HTTPS, ale jsou to další kroky, které nejvíce zapomínáte při implementaci řešení HTTPS ve svém prostředí.

3
Sam Moore

ssh je jako klíč (soukromý) a zámek (veřejný)

ssl je jako dveře a cihly.

ssl poskytuje zabezpečené spojení mezi dvěma počítačovými servery. např. Vy a ten, ke kterému se připojujete.

ssh je způsob, jakým se připojující počítač může sám ověřit a získat přístup.

2
datsusarachris

Problém je dvojí, není to jen síla a slabost šifrování. Ale je to snadné a pohodlné doručení. Z obchodního hlediska je tedy SSL/TLS pohodlnější a jednodušší, protože vyžaduje pouze prohlížeč a buď veřejný nebo soukromý Cert.

A SSH vyžaduje použití aplikace nebo tenkého klienta nainstalovaného. To je více problém z pohledu internetového klienta a jeho podpory.

Ne všichni uživatelé jsou jasní, zejména uživatelé vyzývající k technologii.

moje 2 centy.

0
Stanley Hutchinson

SSL je vrstva protokolu, která je odebrána z tunelovaného obsahu. SSH je bezpečná verze Shell (SH), nebyla navržena tak, aby obsahovala abstraktní vrstvu pod ní, byla navržena speciálně pro přenos Shell provozu. Takže i když krypto operace jsou používány v obou, a ty krypto operace by mohly být dokonce stejné, účel a proto celkový design je zcela odlišný.

Mějte na paměti, že existují konkrétní rozdíly (jak byly uvedeny výše), ale většina, pokud ne všechny tyto rozdíly, jsou zakořeněny v účelu různých protokolů.

0
Gobbly