security - Le intestazioni HTTPS sono crittografate?





post encryption get (8)


Nuova risposta alla vecchia domanda, mi dispiace. Ho pensato di aggiungere il mio $ 0,02

L'OP ha chiesto se le intestazioni fossero crittografate.

Sono: in transito.

NON sono: quando non sono in transito.

Quindi, l'URL del tuo browser (e il titolo, in alcuni casi) possono visualizzare la querystring (che di solito contiene i dettagli più sensibili) e alcuni dettagli nell'intestazione; il browser conosce alcune informazioni di intestazione (tipo di contenuto, unicode, ecc.); e la cronologia del browser, la gestione delle password, i preferiti / i segnalibri e le pagine memorizzate nella cache conterranno tutti la Querystring. I registri del server sul terminale remoto possono contenere anche la Querystring e alcuni dettagli del contenuto.

Inoltre, l'URL non è sempre sicuro: il dominio, il protocollo e la porta sono visibili, altrimenti i router non sanno dove inviare le richieste.

Inoltre, se hai un proxy HTTP, il server proxy conosce l'indirizzo, di solito non conosce la querystring completa.

Quindi, se i dati si stanno muovendo, è generalmente protetto. Se non è in transito, non è crittografato.

Non scegliere nit, ma i dati alla fine sono anche decifrati, e possono essere analizzati, letti, salvati, inoltrati o scartati a volontà. Inoltre, il malware alle due estremità può acquisire istantanee di dati che entrano (o escono) dal protocollo SSL, come JavaScript (cattivo) all'interno di una pagina all'interno di HTTPS che può fare in modo surrettizio chiamate http (o https) ai siti Web di registrazione (dall'accesso all'hard disk locale è spesso limitato e non utile).

Inoltre, i cookie non sono crittografati con il protocollo HTTPS. Gli sviluppatori che desiderano archiviare dati sensibili nei cookie (o in qualsiasi altro posto) devono utilizzare il proprio meccanismo di crittografia.

Per quanto riguarda la cache, la maggior parte dei browser moderni non memorizza nella cache le pagine HTTPS, ma tale fatto non è definito dal protocollo HTTPS, dipende interamente dallo sviluppatore di un browser per essere sicuro di non memorizzare nella cache le pagine ricevute tramite HTTPS.

Quindi se sei preoccupato di sniffare i pacchetti, probabilmente stai bene. Ma se sei preoccupato per malware o qualcuno che cerca nella tua cronologia, segnalibri, cookie o cache, non sei ancora fuori dall'acqua.

Quando invii i dati su HTTPS, so che il contenuto è crittografato, tuttavia sento risposte miste sul fatto che le intestazioni siano crittografate o sulla quantità di intestazione crittografata.

Quante delle intestazioni HTTPS sono crittografate?

Inclusi URL di richiesta GET / POST, cookie, ecc.




HTTPS (HTTP su SSL) invia tutto il contenuto HTTP su un tunel SSL, quindi anche i contenuti e le intestazioni HTTP vengono crittografati.




Le intestazioni sono interamente crittografate. L'unica informazione che passa attraverso la rete 'in chiaro' è legata alla configurazione SSL e allo scambio di chiavi D / H. Questo scambio è attentamente progettato per non fornire alcuna informazione utile agli intercettatori e una volta che è stato effettuato, tutti i dati sono crittografati.




Sì, le intestazioni sono crittografate. È scritto here .

Tutto nel messaggio HTTPS è crittografato, comprese le intestazioni e il carico di richiesta / risposta.




L'intero lotto è crittografato - tutte le intestazioni. Ecco perché SSL su vhost non funziona troppo bene: hai bisogno di un indirizzo IP dedicato perché l'intestazione Host è crittografata.

Lo standard SNI (Server Name Identification) indica che il nome host non può essere crittografato se si utilizza TLS. Inoltre, se stai usando SNI o no, le intestazioni TCP e IP non vengono mai crittografate. (Se lo fossero, i tuoi pacchetti non sarebbero instradabili).




Con SSL la crittografia è a livello di trasporto, quindi avviene prima che venga inviata una richiesta.

Quindi tutto nella richiesta è crittografato.




La versione HTTP 1.1 ha aggiunto un metodo HTTP speciale, CONNECT - destinato a creare il tunnel SSL, incluso l'handshake di protocollo necessario e l'impostazione crittografica.
Le richieste regolari successive vengono inviate tutte racchiuse nel tunnel SSL, intestazioni e corpo inclusi.




Angolare

  var payload = $.param({ jobId: 2 });

                this.$http({
                    method: 'POST',
                    url: 'web/api/ResourceAction/processfile',
                    data: payload,
                    headers: { 'Content-Type': 'application/x-www-form-urlencoded' }
                });

WebAPI 2

public class AcceptJobParams
        {
            public int jobId { get; set; }
        }

        public IHttpActionResult ProcessFile([FromBody]AcceptJobParams thing)
        {
            // do something with fileName parameter

            return Ok();
        }






security post encryption https get