Perché un hacker non può ottenere solo un nuovo certificato SSL per il tuo sito web?

33

SSL ha lo scopo di proteggere il tuo sito web da un attacco man-in-the-middle.

Ma se qualcuno è in grado di farlo, non potrebbe semplicemente richiedere un nuovo certificato da una CA e quindi modificare il traffico inviato dalla CA al server (che ovviamente non può essere crittografato) per passare qualunque test il CA richiede come verifica della proprietà?

    
posta Runemoro 19.12.2016 - 22:53
fonte

4 risposte

42

Essere in grado di MitM un'autorità di certificazione non è forse così banale come si immagina. Non sai quale macchina stanno usando per valutare la proprietà, e speriamo che non lo stiano facendo con il wifi di Starbucks.

I certificati si applicano ai nomi di dominio , non alle macchine o agli indirizzi IP, e quindi la proprietà generalmente non viene verificata testando le risposte fornite da un determinato server HTTP. Ad esempio, dai un'occhiata ai requisiti di Mozilla per le CA ,

We consider verification of certificate signing requests to be acceptable if it meets or exceeds the following requirements:

  • all information that is supplied by the certificate subscriber must be verified by using an independent source of information or an alternative communication channel before it is included in the certificate;
  • for a certificate to be used for digitally signing or encrypting email messages, the CA takes reasonable measures to verify that the entity submitting the request controls the email account associated with the email address referenced in the certificate or has been authorized by the email account holder to act on the account holder’s behalf;
  • for a certificate to be used for SSL-enabled servers, the CA takes reasonable measures to verify that the entity submitting the certificate signing request has registered the domain(s) referenced in the certificate or has been authorized by the domain registrant to act on the registrant’s behalf;
  • for certificates to be used for and marked as Extended Validation, the CA complies with Guidelines for the Issuance and Management of Extended Validation Certificates version 1.4 or later.

Quindi dovresti o MitM la connessione tra la CA e un server DNS, o compromettere il DNS del sito (il più probabile).

    
risposta data 19.12.2016 - 23:10
fonte
7

L'emittente del certificato promette di emettere un certificato per il tuo nome di dominio solo per le persone che possono dimostrare di avere il controllo di quel dominio

Immagino che un uomo nel mezzo dell'attacco contro HTTP e SMTP possa farlo essere utilizzato per ingannare l'emittente e ottenere così un certificato "domain-control validated" a cui l'attacker non ha diritto, questo certificato fraudolento potrebbe quindi essere utilizzato per impersonare il tuo sito in un attacco man-in-the-middle contro il traffico HTTPS. se i server HTTP e SMTP sono diversi, saranno necessari due attacchi MITM.

I certificati di convalida estesi (come quelli utilizzati dalle banche) che visualizzano un messaggio verde lungo nella barra degli indirizzi richiedono più passaggi del semplice controllo del nome di dominio e probabilmente non potrebbero essere acquisiti fraudolentemente con facilità.

    
risposta data 19.12.2016 - 23:14
fonte
3

HPKP (HTTP Public Key Pinning) è una politica di sicurezza fornita tramite una risposta HTTP intestazione che:

  • allows a host to provide information to a user agent about which cryptographic identities it should accept from the host in the future
  • protects a host website from a security compromise at a Certificate Authority where rogue certificates may be issued
  • allows a host to deliver a set of fingerprints to cryptographic identities that the User Agent (UA) should accept for the site going forwards
  • is a Trust On First Use (TOFU) mechanism and the UA must establish at least one secure session with the host to receive the header intact. Once the header has been received, the UA will cache and apply the policy as per the directives included in the header

Rispondere alla tua domanda: un host che implementa HPKP impedisce agli hacker di utilizzare nuovi / certificati SSL canaglia .

HPKP potrebbe essere facile da configurare, ma dovrebbe essere fatto con attenzione ed è "essenziale "per avere backup :

  • the most ideal solution is to include the fingerprint of the current TLS certificate and at least one backup
  • the backup can be the fingerprint of a Certificate Signing Request (CSR), thus avoiding the need to purchase a backup certificate
  • if the private key of the certificate were ever compromised, a CSR could be used in order to request the signing of a new public key (for this to work, the CSR has to be created with a brand new RSA key pair and stored securely offline)
  • as the fingerprint of the CSR was already in the HPKP header, switching out to the new certificate can be accomplished without a problem
  • using this method, if any CA was ever compromised, even your own CA, any rogue certificates that were issued for your domain would not be accepted by a browser that had received the HPKP header
  • because the fingerprint of the rogue certificate has not been received and cached by the browser, it will be rejected and a connection to the site won't be allowed

Questo significa che se tutti i backup sono andati persi, allora:

you only have until your current certificate expires to get a new policy out to all of your visitors!

Forse questo è il motivo per cui molti siti Web non implementano attualmente HPKP (esegui la scansione per alcuni esempi in securityheaders.io e potresti scoprire che la maggior parte delle banche online fa non, ad esempio JP Morgan ), ma risolve specificamente il problema sollevato dalla tua domanda.

    
risposta data 20.12.2016 - 14:33
fonte
0

La base della sicurezza del certificato è che una terza parte (l'emittente) certifica che il certificato è stato consegnato a qualcuno che ha i diritti appropriati sul dominio.

Se come cliente mi fido dell'emittente, posso fidarmi di qualsiasi certificato che ha firmato.

Le possibili frodi sono:

  • qualcuno viene fornito con documenti falsi che mostrano che è proprietario del dominio. Potrebbe essere fatto, ma l'emittente deve essere molto cauto perché quella parte è il loro vero lavoro, e se possono essere facilmente ingannati nessuno si fiderà più di loro

  • qualcuno ha violato un emittente e ottiene una chiave privata valida che consente la firma del certificato. Le regole di sicurezza negli emittenti di certificati seri tendono a rendere questo estremamente difficile, ed è probabile che il certificato rubato sarà presto revocato

In realtà, si presume generalmente che il costo di ottenere un certificato falso non varrà la pena. Ci sono molti altri modi più semplici per rubare informazioni sul web, nella vita reale.
Non dimenticare mai cosa si può fare con una chiave $ 5 ...

Naturalmente le cose potrebbero essere diverse quando pensi alle agenzie governative. Non ho alcuna prova reale se sia vero o no, ma penso che la sicurezza dello stato fosse davvero preoccupata, potevano chiedere a un certificato valido per un dominio di terze parti di fare intercettazioni legali.

    
risposta data 20.12.2016 - 08:30
fonte

Leggi altre domande sui tag