HTTP pela porta 443 vs HTTPS pela porta 80

21

Qual é a diferença entre

http://serverfault.com:443 e /server/:80

Qual deles é mais seguro teoricamente?

mohsinulhaq
fonte
3
O HTTPS pela porta 80 pode acontecer, mas somente na comunicação servidor a servidor, os navegadores não suportam isso. A segurança não é sobre a porta, é sobre um protocolo.
Anatoly
4
Os navegadores @Anatoly oferecem suporte a HTTPS na porta 80, mas eles não são o padrão. A porta padrão para HTTPS nos navegadores é 443, mas você pode substituí-la em praticamente qualquer navegador. Acho que foi isso que você quis dizer, mas queria esclarecer para mais alguém.
Hurricane Development
@HurricaneDevelopment meu comentário foi essencialmente o que os engenheiros do Nginx disseram no fórum do Nginx na época, sem saber como as coisas podem ter mudado ao longo do tempo.
Anatoly
@Anatoly Fari, basta adicionar mais algumas informações.
Hurricane Development

Respostas:

26

http e https referem-se ao protocolo em uso.

http é usado para comunicação de texto não criptografado, o que significa que os dados transferidos podem ser interceptados e lidos por um humano. Os campos de nome de usuário / senha podem, por exemplo, ser capturados e lidos.

https refere-se à comunicação criptografada SSL / TLS. Deve ser descriptografado para ser lido. Normalmente / idealmente, apenas os terminais são capazes de criptografar / descriptografar os dados, embora essa seja uma declaração com ressalvas ( veja a edição abaixo ).

Portanto, https pode ser considerado mais seguro que http.

: 80 e: 443 referem-se apenas à porta do servidor em uso (ou seja, é "apenas um número") e não tem significado algum em relação à segurança.

No entanto, existe uma convenção forte para enviar http pela porta 80 e https pela porta 443, o que torna as combinações na pergunta mais do que pouco ortodoxas. No entanto, eles são tecnicamente perfeitamente utilizáveis, desde que os pontos de extremidade estejam de acordo e sem objetos de filtro intermediários.

Portanto, para responder, http://example.com:443 é menos seguro que https://example.com:80 e a diferença é prática (mesmo que possa ser compensada de várias maneiras) e não apenas teórica.

Você pode testar facilmente a validade dessas instruções usando um servidor da Web e um cliente em que manipula a porta do servidor e o status da criptografia, enquanto captura e compara cada sessão com um decodificador de protocolo como o wireshark.

[ EDIT - advertências sobre a segurança do caminho cliente / servidor ]

O que basicamente equivale a um ataque https do homem no meio pode ser realizado para fins de espionagem ou representação. Isso pode ser feito como um ato de malevolência, benevolência ou, até mesmo, devido à ignorância, dependendo das circunstâncias.

O ataque pode ser feito através da exploração de uma fraqueza do protocolo, como o bug com defeito ou a vulnerabilidade do Poodle , ou através da instanciação de um proxy https entre o cliente e o servidor no caminho da rede ou diretamente no cliente .

O uso malévolo não precisa de muita explicação, eu acho. O uso benevolente seria, por exemplo, uma organização que proxyiza conexões https de entrada para fins de registro / IDs ou conexões https de saída para filtrar aplicativos permitidos / negados . Um exemplo de uso ignorante seria o exemplo do Lenovo Superfish vinculado acima ou a variação recente da Dell da mesma falha .

EDIT 2

Já reparou como o mundo mantém as surpresas chegando? Um escândalo acabou de eclodir na Suécia, onde três organizações de saúde do conselho do condado usaram a mesma cadeia de suprimentos para registrar eventos de saúde através de telefonemas de pacientes.

Por assim dizer, a pergunta obtém uma resposta na grande escala das coisas. Se ao menos fosse uma piada prática e não um evento real ...

Vou simplesmente colar dois trechos traduzidos do texto de notícias na Computer Sweden :

Hoje, a Computer Sweden pode revelar um dos maiores desastres de todos os tempos em relação à segurança do paciente e à integridade pessoal. Em um servidor da web aberto, sem qualquer forma de proteção por senha ou outro método de segurança, encontramos 2,7 milhões de chamadas gravadas de pacientes para a saúde através do número de aconselhamento médico 1177. As chamadas remontam a 2013 e contêm 170.000 horas de voz sensível chamar arquivos que qualquer pessoa possa baixar e ouvir.

[...]

As chamadas foram salvas no servidor de armazenamento Voice Integrated Nordics no endereço IP http://188.92.248.19:443/medicall/ . A porta TCP 443 indica que o tráfego foi passado por https, mas a sessão não está criptografada.

Não consigo decidir se esse é mais um exemplo de ignorância ou se estamos vendo uma categoria totalmente nova. Conselho por favor.

ErikE
fonte
O que você quis dizer com dizer que a declaração sobre criptografar / descriptografar os dados tem advertências? Por favor, explique
Oleg
@Curious Editei minha resposta para refletir sobre sua pergunta.
ErikE
11
Obrigado @ErikE. Há alguns dias, notei que a maioria dos sites https que visito (exceto os com SSL EV) são verificados por avast! Web/Mail Shield Root(eu uso o antivírus Avast), o que me deixou um pouco confuso. Agora está tudo claro, graças a você
Oleg
11
possivelmente, o avast usa seus próprios certificados para descriptografar o tráfego SSL. Dependendo da sua configuração de segurança, isso pode ser um problema para você. Veja fe blog.avast.com/tag/man-in-the-middle
Dennis Nolte