Qual é o benefício de forçar um site a carregar sobre SSL (HTTPS)?

55

Digamos que eu tenha um site grande apenas para conteúdo; sem login ou logout, sem nomes de usuário, sem endereços de e-mail, sem área segura, nada secreto no site, nada. As pessoas simplesmente acessam o site, vão de página em página e olham para o conteúdo.

Além de um pequeno aumento no SEO do Google ( muito pouco, pelo que li), existe algum benefício em forçar o carregamento do site via HTTPS?

Eric
fonte
11
Não acredito que seja uma duplicata do Force Using SSL on Site agora? . Embora algumas respostas possam acabar sendo semelhantes, essa pergunta está solicitando conselhos sobre o uso ou não de SSL, enquanto esta não é. Na verdade, a outra questão deve ser encerrada por se basear em opiniões.
Stephen Ostermiller
4
Vamos reverter: qual é o benefício de NÃO usar SSL? Não há nenhum que eu conheça. Ah, claro, a implementação que seria única e demoraria (comparativamente a todo o resto) sem tempo. Então, se uma abordagem não tem desvantagens e algumas vantagens, a outra não tem vantagens e (de acordo com você) não tem desvantagens, então ... por que ficar com a última?
VLAZ
3
@Vld - desempenho. Atualmente, muitas vezes tentamos otimizar o tempo de carregamento inicial do site para valores de desempenho abaixo de segundos, com uma meta de 1/2 segundo. Em uma conexão à Internet um pouco lenta (latência de pacote em torno de 100ms), o handshake SSL pode levar facilmente 300ms, o que pode levar você a atingir uma meta de desempenho. Para os usuários móveis, é pior: as redes móveis têm latências de pacotes mais longas e o tempo de processamento para a verificação da certificação pode facilmente chegar a outras centenas de ms em um telefone mais lento.
Jules
6
As operadoras de celular sempre violam o tráfego HTTP não criptografado, seja para compactação de imagens (over), injetando Javascript mal ou cabeçalhos de controle de cache mais agressivos. HTTPS impedirá todo esse absurdo.
André Borie
2
@ Josef Não é verdade. O HTTP / 2 também funciona em conexões não criptografadas. Nenhum navegador pode fazer isso, mas isso é uma limitação do navegador, não o HTTP / 2. Dizer que "HTTP / 2 funciona apenas com TLS" é como dizer que "a tecnologia X não funciona porque o Internet Explorer não a implementa". Olhe para onde nos levou.
Agent_L

Respostas:

84

O HTTPS não apenas fornece sigilo (do qual você está duvidando do valor, embora ainda haja boas razões para isso), mas também autenticidade , que sempre é valiosa. Sem ele, um ponto de acesso / roteador / ISP / etc malicioso. pode reescrever qualquer parte do seu site antes de exibi-lo para o usuário. Isso pode incluir:

  • injetando anúncios para seus concorrentes
  • injeção de anúncios ou widgets irritantes que fazem seu site parecer ruim e prejudicar sua reputação
  • injetar explorações para realizar downloads drive-by de malware no computador do visitante, que então (com razão!) o culpa por isso acontecer
  • substituindo downloads de software do seu site por outros que incluíram malware
  • diminuindo a qualidade de suas imagens
  • remover partes do site que eles não querem que você veja, por exemplo, coisas que competem com seus próprios serviços ou as descrevem de maneira ruim
  • etc.

Não proteger seus usuários dessas coisas é irresponsável.

R ..
fonte
27
@ Mike Na verdade não. Há muito software disponível para isso, e tudo lida com descompressão e recompressão.
ceejayoz
3
@ Mike Na verdade não. Um proxy de reescrita completo pode decodificar todo o tráfego e injetar qualquer material novo que desejar de novo.
Nayuki
10
Para sua informação, se não todos, todos os meus exemplos foram realmente vistos na natureza.
R ..
2
@DavidMulder seu primeiro comentário disse que " de centralização [...] não é uma coisa boa"
jiggunjer
3
Não podemos, por favor, transformar os comentários desta resposta em um discurso fora do tópico sobre questões não relacionadas?
R ..
25

"nada secreto no site"

... de acordo com você . Pode haver uma razão perfeita para alguém querer uma conexão segura. (Parcialmente) cria privacidade:

Meu administrador pode ver que estou navegando em algum site de fotos no meu telefone via URL, mas ele não sabe se estou vendo fotos de gatos fofos ou pornô hardcore. Eu diria que é muito boa privacidade. "um conteúdo" e "o conteúdo" podem fazer toda a diferença no mundo. - Agent_L

Você pode pensar que é insignificante, ou talvez não seja grande coisa agora, mas poderia estar em outro momento. Acredito firmemente que ninguém além de mim e do site deve saber exatamente o que estou fazendo.

Isso cria confiança. Ter o cadeado é um sinal de segurança e pode significar algum grau de habilidade em relação ao site e, portanto, aos seus produtos.

Isso o torna menos alvo de, por exemplo, ataques MitM. A segurança aumenta.

Com iniciativas como o Let's Encrypt , que tornam muito mais fácil e gratuito , não há muitas desvantagens. A energia da CPU absorvida pelo SSL é insignificante atualmente.

Martijn
fonte
11
Infelizmente, o SSL não impede que a TI corporativa ou o seu ISP ou as pessoas no café público wifi conheçam os sites que você está visitando. As pesquisas de DNS ainda são feitas de forma clara . Embora eles não consigam ver o conteúdo, nem o URL exato, nem que você esteja usando um navegador da Web, eles podem ver que você está acessando penisland.com (que é, obviamente, um site para entusiastas de caneta, mas pode estar mal interpretado). O uso de um proxy VPN ou SOCKS5 protegerá suas consultas DNS.
Schwern 8/07/16
3
@ Martijn: Com a Indicação do nome do servidor (compatível com todos os navegadores modernos), o próprio nome do host do site é enviado de forma clara como parte do handshake HTTPS. Não se trata apenas de ataques de canal lateral e não pode ser mitigado com, por exemplo, DNSsec.
Kevin
3
@ Schwern Eu nunca entendi o argumento de que o HTTPS não protege o nome do host, porque a pesquisa de DNS e o SNI e o certificado do servidor estão claros. É claro que isso é verdade, como afirmado, mas o HTTP sem texto não é de forma alguma melhor nesse sentido!
a CVn
5
@ Schwern Meu administrador pode ver que estou navegando no Tumblr no meu telefone, mas ele não sabe se estou vendo fotos de gatos fofos ou pornô hardcore. Eu diria que é muito boa privacidade. "um conteúdo" e "o conteúdo" podem fazer toda a diferença no mundo.
Agent_L
2
@ Agent_L Não, mesmo isso não é um bom conselho. Se você for ao https://penisland.tumblr.com/seu navegador, fará uma solicitação de DNS para a penisland.tumblr.comqual, a menos que você tenha protegido suas consultas de DNS, o administrador da rede poderá ver. Em seguida, seu navegador precisa obter imagens, Javascript, CSS e anúncios de vários domínios que geram mais solicitações de DNS. Eles podem ser de qualquer domínio. Os poucos domínios pornôs do Tumblr que eu tentei não têm nada óbvio, o Tumblr tende a hospedar imagens e vídeos internamente, mas você não pode confiar nisso para ter privacidade.
Schwern 11/07
12

Você obtém suporte a HTTP / 2 , o novo padrão da web desenvolvido para melhorar significativamente a velocidade de carregamento do site .

Como os fabricantes de navegadores optaram por oferecer suporte a HTTP / 2 somente por HTTPS, ativar o HTTPS (em um servidor que suporte HTTP / 2) é a única maneira de obter essa atualização de velocidade.

user2428118
fonte
11
Isso é muito grande e precisa ser mais sensacionalista. É um argumento comercial para carregar o HTTPS apenas para a maioria dos gerentes.
Dewi Morgan
10

(Partes retiradas da minha resposta a uma pergunta semelhante.)


HTTPS pode conseguir duas coisas:

  • Autenticação . Verifique se o visitante está se comunicando com o proprietário do domínio real.
  • Criptografia . Certificando-se de que apenas este proprietário do domínio e o visitante possam ler sua comunicação.

Provavelmente todos concordam que o HTTPS deve ser obrigatório na transmissão de segredos (como senhas, dados bancários etc.), mas mesmo que o site não processe esses segredos, existem vários outros casos em que e por que o uso do HTTPS pode ser benéfico.

Os invasores não podem adulterar o conteúdo solicitado.

Ao usar o HTTP, os bisbilhoteiros podem manipular o conteúdo que os visitantes veem no seu site. Por exemplo:

  • Incluindo malware no software que você oferece para download (ou se você não oferece nenhum download de software, os atacantes começam a fazê-lo).
  • Censurando parte do seu conteúdo. Mudando suas expressões de opinião.
  • Injetando anúncios.
  • Substituindo os dados de suas contas de doações pelos deles.

HTTPS pode impedir isso.

Os invasores não podem ler o conteúdo solicitado.

Ao usar HTTP, os bisbilhoteiros podem aprender quais páginas / conteúdo em seu host os visitantes acessam. Embora o conteúdo em si possa ser público, o conhecimento que uma pessoa específica consome pode ser problemático:

  • Ele abre um vetor de ataque para engenharia social .
  • Isso viola a privacidade.
  • Pode levar a vigilância e punição (até prisão, tortura, morte).

Obviamente, isso depende da natureza do seu conteúdo, mas o que parece ser um conteúdo inofensivo para você pode ser interpretado de maneira diferente por outras partes.

Melhor prevenir do que remediar. HTTPS pode impedir isso.

unor
fonte
11
De fato, o HTTPS pode evitá-lo. Em algumas situações, talvez não. Veja o Lenovo Superfish para um exemplo bastante recente.
um CVn 08/07
@ MichaelKjörling: Sim, eu estou ciente disso (é por isso que certifiquei-me de usar "can";)), mas é um problema decorrente do comportamento do visitante, não um problema no próprio HTTPS ou na maneira como o webmaster usa isso né? O visitante deve se preocupar com quais CAs confiar (e o visitante deve se preocupar com qual software instalar, especialmente se tiver permissão para mexer na lista de CAs em que confiar).
unor 8/07/16
De fato; Eu não estou argumentando contra o seu ponto, apenas adicionando a ele!
um CVn 08/07
6

Isso evita ataques intermediários que fazem você pensar que está visitando seu site, mas apresentam uma página que é realmente de outra e podem tentar obter informações de você. Como os dados são criptografados, também torna mais difícil para um invasor manipular a página como você a vê.

Como você precisa de um certificado SSL, que verifique se você é o proprietário do site, no mínimo, dando pelo menos alguma verificação sobre quem você é.

Roubar
fonte
3

Empresas de marketing como a Hitwise pagam aos ISPs para coletar dados sobre o seu site quando você não usa SSL. Os dados sobre o seu site são coletados, os quais você pode preferir que seus concorrentes não conheçam:

  • dados demográficos do usuário
  • estatísticas de visitantes
  • páginas populares
  • palavras-chave do mecanismo de pesquisa (embora com "não fornecido" seja menos problemático atualmente)
Stephen Ostermiller
fonte
3

E, apenas para adicionar mais uma coisa a todas as respostas, falarei sobre latência. Porque, parece que ninguém escreveu aqui sobre isso.

Ter uma baixa latência HTTP de cliente para servidor é fundamental para criar sites responsivos e de carregamento rápido.

Somente o TCP / IP possui handshake de três vias (a configuração inicial da conexão para HTTP simples sobre TCP requer 3 pacotes). Quando SSL / TLS é usado, a configuração da conexão fica mais envolvida, o que significa que a latência para novas conexões HTTPS é inevitavelmente maior que o HTTP em texto sem formatação.

O problema com o HTTP é que ele não é seguro. Portanto, se você tiver dados confidenciais, precisará de alguma forma de segurança. Quando você digita algo no seu navegador começando com "https", você está pedindo ao seu navegador para usar uma camada de criptografia para proteger o tráfego. Isso fornece uma proteção razoável contra os bisbilhoteiros, mas o problema é que será mais lento. Como queremos criptografar nosso tráfego, haverá alguma computação envolvida, o que aumenta o tempo. Isso significa que, se você não projetar seu sistema corretamente, seu site parecerá lento para os usuários.

Concluir:

Eu tenho um site grande apenas para conteúdo; sem login ou logout, sem nomes de usuário, sem endereços de e-mail, sem área segura, nada secreto no site, nada. As pessoas simplesmente acessam o site, vão de página em página e olham para o conteúdo.

Se for esse o caso, não usarei SSL. Eu gostaria de ter minha página quando você clicar nela para abrir em um segundo. Isso é da experiência do usuário. Você faz o que deseja, apenas não coloco certificados em tudo que faço. Nesse caso em particular, eu não usaria nada.

Josip Ivic
fonte
Na IMO, essa é uma resposta correta tanto quanto a que obtém todos os votos.
Michael Yaeger
O youtube.com/watch?v=e6DUrH56g14 menciona algumas técnicas para reduzir o impacto no desempenho, mesmo que você (ou uma grande parte de seus clientes) não consiga usar HTTP / 2 por algum motivo.
um CVn
1

Além dos benefícios mencionados por outras pessoas, há um motivo para você mudar para SSL, a menos que não se importe com os visitantes que usam o Chrome - as novas versões do Chrome (a partir do final do ano, tanto quanto me lembro) são mostrará um aviso (que afastará os usuários do seu site) por padrão para todos os sites que não estiverem usando HTTPS.

//EDITAR:

Aqui estão os links para dois artigos mais detalhados, embora eu não consiga encontrar o que eu li sobre quando eles planejam apresentar oficialmente o recurso:

https://motherboard.vice.com/read/google-will-soon-shame-all-websites-that-are-unencrypted-chrome-https

http://www.pandasecurity.com/mediacenter/security/websites-that-arent-using-https/

Marreta
fonte
Não é uma citação perfeita para a reivindicação feita na resposta, mas sempre há a marcação de HTTP como não seguro .
um CVn
1

A resposta simples é que não há uma boa razão para não fazê-lo . No passado, havia argumentos sobre o uso de SSL apenas quando absolutamente necessário (por exemplo, em sites de comércio eletrônico que coletavam detalhes de pagamento).

Isso estava relacionado ao procedimento de instalação de certificados SSL, custo, carga adicional no servidor da web e limitações de rede - em um momento em que as pessoas não tinham banda larga etc. Nenhum desses motivos realmente se aplica em 2016.

Em termos de SEO, sabemos que o objetivo da maioria dos mecanismos de pesquisa é fornecer os melhores resultados para seus usuários, e isso pode ser feito fornecendo a eles uma conexão segura com o site em que estão navegando. A esse respeito, os mecanismos de pesquisa não se importam se há dados "sensíveis" no site (sendo apresentados ou coletados); é simplesmente o caso de que, se o site for veiculado por HTTPS, todos os riscos potenciais de autenticação e criptografia forem bastante minimizados; portanto, o site seria considerado "melhor" do que o site equivalente sem HTTPS.

Essencialmente, é tão simples e direto de implementar, que é visto como a melhor prática hoje em dia. Como desenvolvedor da Web, considere instalar um certificado SSL e forçar todas as solicitações por HTTPS (muito fácil usar .htaccess ou equivalente) a fazer parte padrão de qualquer site ou aplicativo da Web que eu construa.

Andy
fonte
1

Além das outras respostas, os navegadores devem (como na RFC 2119) enviar o User-Agentcabeçalho. Ele fornece informações suficientes sobre qual plataforma um usuário está usando, se ele enviar o atual User-Agent. Se Eve puder escutar um pedido feito por Alice, e Alice enviar o atual User-Agent, Eve saberá qual plataforma Alice usa sem que Alice faça uma conexão com o servidor de Eve. Será mais fácil invadir o computador de Alice com esse conhecimento.

v7d8dpo4
fonte
É um pouco como dizer que, se Eve pode ver o número VIN do carro de Alice através do pára-brisa do carro, torna mais fácil para Eve entrar no carro de Alice porque o número VIN permite que ela descubra qual carro de marca e modelo possui. Claro, é uma possibilidade, mas existem várias maneiras de obter praticamente as mesmas informações sem que MITM seja exibido, de maneira que mal seria registrada como algo além do ruído de fundo da Internet para um nó folha na rede. Por exemplo: Eve (ou talvez Mallory) poderia enviar a Alice um link para uma página da Web sob seu controle. As pessoas gostam de clicar nos links.
um CVn
1

Você tem duas opções para proteger seu domínio principal (mysite.com) e seus subdomínios (play.mysite.com e test.mysite.com). O SSL não é apenas para sites de comércio eletrônico, comerciantes de pagamentos em que transações financeiras ou credenciais de login são compartilhadas pelo site. É igualmente importante para sites baseados em conteúdo. Os invasores sempre buscam um site HTTP simples ou uma brecha no site. O SSL não apenas fornece segurança, mas também autentica seu site. O principal benefício de ter SSL no site baseado em conteúdo é que,

  • Você pode evitar ataques intermediários que podem alterar o conteúdo do site.

  • Além disso, seu site terá autenticidade que notifica os visitantes de que suas informações serão protegidas se compartilharem com o site.

  • Eles obtêm garantia sobre a autenticidade do site.

  • Além disso, seu site estará livre de injeção de anúncios maliciosos, explorações, widgets indesejados, substituição de software e danos a páginas da web depois que você tiver SSL em seu site.

  • O certificado SSL oferece selo estático do site que pode ser colocado em qualquer página da Web para garantia e os clientes podem clicar no selo para conhecer os detalhes do certificado SSL instalado.

Jason Parms
fonte
1

Outras respostas falaram sobre os benefícios do HTTPS. Por um usuário seria forçado a usar HTTPS? Por duas razões:

  • Se você der aos usuários a opção de não usar HTTPS, eles provavelmente não o farão, principalmente porque a maioria dos navegadores usa como padrão http: // e não https: // ao digitar um domínio na barra de endereços.
  • Ao implementar uma versão segura e uma versão insegura, você aumenta a superfície de ataque da conexão. Você oferece aos atacantes a chance de realizar um ataque de downgrade, mesmo que você pense que está usando a versão segura.
  • Se você redirecionar cada URL http: // para o equivalente https: // um, isso facilita a vida do administrador do servidor e dos mecanismos de pesquisa. Ninguém precisa se preocupar se o http: // e https: // devem ser equivalentes ou apontam para coisas completamente diferentes. Ao redirecionar um para o outro, fica claro para todos que URLs devem ser usados.
Flimm
fonte