Permalänk

Självsignerade certifikat?

Är de säkra eller ska man helst köra CA Certifikat? Och hur får man tag på sådana? Jag har en produkt som default kör ett certifikat krypterat med SHA1. Och vi vet ju alla att det är ett osäker kryptering idag.

Permalänk
Medlem

Ja de kan till och med anses säkrare då ingen tredjepart är involverad. Har du kontroll på både klient och server?

Permalänk
Medlem

Vad är det du ska använda certifikatet till? För FTP-servrar är det vanligt med självsignerade certifikat men nej, det är normalt inte att rekommendera då det är svårt för slutanvändaren att verifiera dem. För saker som bara är nåbara lokalt i ditt nätverk spelar det mindre roll dock. Om man kontrollerar enheterna som ska ansluta till produkten du pratar om kan man sätta upp en egen CA och installera det CA-certifikatet på alla enheter för att sedan utfärda ett certifikat från den CA:n. För att kunna säga vilken lösning som är bäst vore det bra att veta lite mer detaljer dock.

För att vara petig är SHA1 en hash-algoritm som i detta fallet används för signaturen, inte kryptering.

Visa signatur

Antec P280 | Corsair RM750x | ASUS ROG Crosshair VIII Dark Hero | Ryzen 9 5900X | G.Skill Trident Z RGB 3200MHz CL14 @3600MHz CL16 2x16GB | ASUS RTX 3080 TUF OC | WD SN850 1TB | Samsung 970 Pro 1TB | Samsung 860 Pro 1TB | Samsung 850 Pro 1TB | Samsung PM863a 3.84TB | Sound Blaster Z | 2x ASUS PG279Q

Permalänk
Hedersmedlem

Ett självsignerat certifikat är lika säkert som ett signerat, men vad du bör använda handlar ju mycket om HUR du använder certifikatet. Är det för att sätta upp en säker länk mellan två datorer på ditt interna nätverk kvittar det ju lika, vänder man sig mot kunder så ska du ha ett signerat.

Du kan ju kolla in om https://letsencrypt.org/sv/ har något för dig.

Visa signatur

Använd gilla för att markera nyttiga inlägg!

Permalänk
Medlem

Beror på vilken aspekt av säkerhet du är intresserad av.
Som skydd mot tredje-parts angripare så spelar det inte så stor roll vem som signerat ett certifikat - krypteringen är lika svår att knäcka oavsett.
Det principiella problemet med självsignerade certifikat är att besökare inte kan verifiera vem som ligger bakom certifikatet. Är det istället signerat av en CA (Certificate Authority) så garanterar de (i teorin) att ägaren till certifikatet är den de utger sig för att vara.
I praktiken så är en del CA så pass slarviga med att verifiera vems certifikat de signerar att man inte riktigt kan lita på dessa garantier.

För den som äger certifikatet är det alltså samma säkerhet oavsett - det är utomstående som kan (ska) vara misstänksamma mot självsignerade certifikat.

Permalänk
Medlem

För att vara pedantisk, SHA är inte kryptering utan hashfunktioner.
https://en.wikipedia.org/wiki/Secure_Hash_Algorithms

Permalänk
Skrivet av blunden:

Vad är det du ska använda certifikatet till? För FTP-servrar är det vanligt med självsignerade certifikat men nej, det är normalt inte att rekommendera då det är svårt för slutanvändaren att verifiera dem. För saker som bara är nåbara lokalt i ditt nätverk spelar det mindre roll dock. Om man kontrollerar enheterna som ska ansluta till produkten du pratar om kan man sätta upp en egen CA och installera det CA-certifikatet på alla enheter för att sedan utfärda ett certifikat från den CA:n. För att kunna säga vilken lösning som är bäst vore det bra att veta lite mer detaljer dock.

För att vara petig är SHA1 en hash-algoritm som i detta fallet används för signaturen, inte kryptering.

Vet inte om jag vågar gå in på mer detaljer men en produkt som jag använder i det lokala nätverket använder ett certifikat med SHA1 hashfunktion. Den använder fortarande RSA krypto på 2048 men just SHA1 delen är inte säker idag. Det är alltså den förvalda CA Certifikatet på produkten. Tyvärr så får denna produkt inga uppdateringar mer så den kommer aldrig få ett bättre nya utfärdat CA Certifikat.

Skrivet av giplet:

Ett självsignerat certifikat är lika säkert som ett signerat, men vad du bör använda handlar ju mycket om HUR du använder certifikatet. Är det för att sätta upp en säker länk mellan två datorer på ditt interna nätverk kvittar det ju lika, vänder man sig mot kunder så ska du ha ett signerat.

Du kan ju kolla in om https://letsencrypt.org/sv/ har något för dig.

Lokala nätverk i detta fallet.

Skrivet av Erik_T:

Beror på vilken aspekt av säkerhet du är intresserad av.
Som skydd mot tredje-parts angripare så spelar det inte så stor roll vem som signerat ett certifikat - krypteringen är lika svår att knäcka oavsett.
Det principiella problemet med självsignerade certifikat är att besökare inte kan verifiera vem som ligger bakom certifikatet. Är det istället signerat av en CA (Certificate Authority) så garanterar de (i teorin) att ägaren till certifikatet är den de utger sig för att vara.
I praktiken så är en del CA så pass slarviga med att verifiera vems certifikat de signerar att man inte riktigt kan lita på dessa garantier.

För den som äger certifikatet är det alltså samma säkerhet oavsett - det är utomstående som kan (ska) vara misstänksamma mot självsignerade certifikat.

Detta certifikat är inte tänkts att användas av tredjepart utan endast av mig själv. Ett lokalt nätverk.

Skrivet av iXam:

För att vara pedantisk, SHA är inte kryptering utan hashfunktioner.
https://en.wikipedia.org/wiki/Secure_Hash_Algorithms

Tack! Jag är inte helt bevandrad i denna djungel. Men RSA är kryptograferingen och SHA1 är haschfunktionen av denna kryptografering?

Permalänk
Medlem
Skrivet av Dinkefing:

Vet inte om jag vågar gå in på mer detaljer men en produkt som jag använder i det lokala nätverket använder ett certifikat med SHA1 hashfunktion. Den använder fortarande RSA krypto på 2048 men just SHA1 delen är inte säker idag. Det är alltså den förvalda CA Certifikatet på produkten. Tyvärr så får denna produkt inga uppdateringar mer så den kommer aldrig få ett bättre nya utfärdat CA Certifikat.

Jag menade inte att du behövde ange exakt vilken produkt det var utan mer hur certifikatet används. Används det bara för något webbgränssnitt man sällan går in i eller något annat?

Skrivet av Dinkefing:

Detta certifikat är inte tänkts att användas av tredjepart utan endast av mig själv. Ett lokalt nätverk.

Om det bara handlar om ett internt webbgränssnitt eller liknande är det troligen inte värt att bry sig.

Skrivet av Dinkefing:

Tack! Jag är inte helt bevandrad i denna djungel. Men RSA är kryptograferingen och SHA1 är haschfunktionen av denna kryptografering?

Jag förklarade detta lite kort i mitt tidigare inlägg. Digitala signaturer fungerar generellt så att man hashar innehållet man vill signera för att få ut ett värde som fungerar som en checksumma. Det är sedan denna man signerar. Genom att beräkna checksumman för certifikatet och jämföra mot den signerade checksumman kan man validera att certifikatet matchar det som signerades. Problemet med SHA-1 är att man visat att det är praktiskt möjligt att finna block av data som resulterar i samma checksumma. Därmed går det inte fullt ut att lita på signaturer som använder SHA-1. Krypteringen sköts med andra algoritmer.

Ordet "kryptografering" har du hittat på själv. Du tänkte nog på "kryptering".

Visa signatur

Antec P280 | Corsair RM750x | ASUS ROG Crosshair VIII Dark Hero | Ryzen 9 5900X | G.Skill Trident Z RGB 3200MHz CL14 @3600MHz CL16 2x16GB | ASUS RTX 3080 TUF OC | WD SN850 1TB | Samsung 970 Pro 1TB | Samsung 860 Pro 1TB | Samsung 850 Pro 1TB | Samsung PM863a 3.84TB | Sound Blaster Z | 2x ASUS PG279Q

Permalänk
Medlem
Skrivet av Haladria:

Ja de kan till och med anses säkrare då ingen tredjepart är involverad.

Just så gör BankID och dom upptäcker hos t.ex. arbetsgivare som utfärdar certifikat för varje sajt man försöker surfa in på för att se all krypterad data men utan att webbläsaren/e-postklienten gnäller eftersom arbetsgivaren har utfärdat ett CA till alla klienter som säger att mellanhanden är OK,

men BankID gnäller direkt eftersom dom kör självsignerat och kräver att servern har en viss exakt privat nyckel tillgänglig.

Visa signatur

Grundregel för felsökning: Bryt och begränsa.

Permalänk
Medlem
Skrivet av Veni:

Just så gör BankID och dom upptäcker hos t.ex. arbetsgivare som utfärdar certifikat för varje sajt man försöker surfa in på för att se all krypterad data men utan att webbläsaren/e-postklienten gnäller eftersom arbetsgivaren har utfärdat ett CA till alla klienter som säger att mellanhanden är OK,

men BankID gnäller direkt eftersom dom kör självsignerat och kräver att servern har en viss exakt privat nyckel tillgänglig.

Det där skulle jag kalla ”certificate pinning” och inget annat. Det i sig har inget att göra med vem som signerat certet. Man hårdkokar helt enkelt applikationen till att bara acceptera en viss publik nyckel eller något man entydigt kan derivera från den publika nyckeln.

Jag är rätt säker på att bank-id inte alls använder sig av självsignerade cert i strikt mening, varken vid serverkommunikationen eller i de signaturer och inloggningar man kan göra med Bank-id.

Ett självsignerat cert är ett cert signerat av sig självt, inte av en CA.

Även om man skapar sina egna cert kan man vilja skapa en rot-CA som har ett självsignerat cert och sedan skapa cert som man faktiskt använder, som är signerade av rot-CA-certet. Eventuellt med ”intermediate CAs” mellan dessa. Sedan räcker det att man litar på den egenskapade CA:n för att alla dess utfärdade cert ska betraktas som pålitliga.

Det är så middleboxes som knäcker HTTPS på företag fungerar, ett rot-CA-cert distribueras i AD:t och läggs in på varje maskin för att betraktas som pålitlig. Middleboxen utfärdar falska cert on the fly och signerar dessa med rot-CA-certet. Ovanstående fungerar inte rakt av med Firefox, som har sin egen cert store. Framtida Chrome kommer sluta använda Windows cert store.