Quais são os vetores de ataque para senhas enviadas por http?


10

Estou tentando convencer um cliente a pagar por SSL para um site que requer login. Quero ter certeza de que entendi corretamente os principais cenários nos quais alguém pode ver as senhas que estão sendo enviadas.

Meu entendimento é que, em qualquer um dos saltos ao longo do caminho, é possível usar um analisador de pacotes para visualizar o que está sendo enviado. Isso parece exigir que qualquer hacker (ou seu malware / botnet) esteja na mesma sub-rede que qualquer um dos saltos que o pacote leva para chegar ao seu destino. Isso está certo?

Supondo que um certo sabor desse requisito de sub-rede seja verdadeiro, preciso me preocupar com todos os saltos ou apenas com o primeiro? O primeiro com o qual eu obviamente posso me preocupar se eles estiverem em uma rede Wi-Fi pública, já que alguém pode estar ouvindo. Eu deveria estar preocupado com o que está acontecendo nas sub-redes pelas quais os pacotes trafegam fora disso? Não conheço muito o tráfego de rede, mas suponho que ele esteja fluindo pelos datacenters das principais operadoras e que não haja muitos vetores de ataque por lá, mas corrija-me se estiver errado.

Existem outros vetores com os quais se preocupar fora de alguém ouvindo com um analisador de pacotes?

Eu sou um noob de rede e segurança, por isso, sinta-se à vontade para me esclarecer se estiver usando a terminologia errada em algo disso.


se o site contiver detalhes bancários ou financeiros, informações pessoais, o SSL será um pré-requisito para a etapa de login. Se puder ser hackeado facilmente, será.
Mitch Wheat

2
Não vejo razão para fechar isso. Está relacionado à programação.

Qualquer pessoa que visite este site a partir de um ponto de acesso compartilhado receberá seus cliques, mesmo que o AP use a criptografia em si (porque todos os que têm lá também têm a chave). Se as pessoas reutilizarem seus creds em outros sites, isso será um problema.
Aaron

Respostas:


3

Algo para anotar que outros não mencionaram aqui é que alguns navegadores armazenam em cache os dados do seu formulário. O comportamento padrão nos sites SSL geralmente é não armazenar nada em cache, a menos que você tenha escolhido "salvar minha senha". Geralmente, os campos de senha não são armazenados em cache de qualquer maneira, mas já vi algumas esquisitices (normalmente informações de cartão de crédito, que eu sei que não são realmente o assunto da pergunta).

A outra coisa a observar é que a criptografia SSL inicia no handshake TCP. Uma vez sob SSL, você não pode distinguir HTTP sobre SSL de FTP sobre SSL (além de suposições feitas através do número da porta).

Você também não pode distinguir uma solicitação de login de uma solicitação "Estou apenas navegando", isso ofusca o fluxo da página de possíveis hackers e também garante que não apenas seus dados de senha sejam seguros, mas também seu histórico de navegação / dados de cookies e qualquer informações pessoais que acompanham sua conta.

Tudo em tudo, se você eliminar os ataques man-in-the-middle do espectro, reduzirá muitos dos ataques em potencial, isso não quer dizer que seu site seja "seguro". A política de zoneamento também deve ajudar a protegê-lo contra ataques XSS, pois você fará uma alteração de zona se o usuário for redirecionado para fora do site.


"suposições feitas através do número da porta"? A porta normalmente não seria 443 para SSL (HTTP ou FTP)?
Brickner

4

Os dados são vulneráveis ​​em qualquer lugar ao longo da rota, não apenas no primeiro ou no último estágio. É perfeitamente concebível que um sistema envolvido na transferência procure nomes de usuário, senhas e outros dados confidenciais. Conclui-se, portanto, que os dados confidenciais só devem passar por um link protegido por toda a extensão e, é claro, é exatamente para isso que serve o SSL. Dependendo dos dados envolvidos, é possível que haja leis locais que determinam o SSL.


Ele pode atravessar sub-redes às quais os consumidores têm acesso ou apenas atravessar a espinha dorsal das principais operadoras? Nesse caso, teríamos que assumir que o hacker invadiu, digamos, o centro de operações de nível 3 (apenas por exemplo)?
KevinM

Normalmente, eu não esperava que viajasse pelas redes de consumidores, mas lembre-se de que qualquer sistema pode ser comprometido. Embora possamos esperar que os sistemas de ISP e de operadora sejam mais seguros, também sabemos que muitos foram comprometidos no passado. Nenhum sistema ou rede é imune a hackers, daí a necessidade de coisas como SSL. Pode até ser um funcionário do ISP que está coletando as informações que trafegam pela rede. Basta um simples toque passivo.
John Gardeniers

1
Também pode ser sua agência governamental favorita, que instala as torneiras com alguma ajuda do seu ISP ... Se você considera que um ataque ou não depende de você.
pehrs

2

Existem servidores proxy que podem armazenar dados.

Mas também existe a obrigação de manter as senhas dos usuários seguras. Muitos usuários usam um conjunto limitado de senhas; portanto, um site inseguro pode comprometer sua senha do homebank, por exemplo.


1
Sim, seu segundo ponto é importante. Eu acho que é apropriado que sites não ajam como se fossem o centro do mundo dos usuários.

1

Sua análise é razoável, IMHO.

O que deve ser observado, suponho, é que pode haver caches no seu caminho. Portanto, pode ser que a solicitação seja registrada em algum lugar (especialmente se o login for GET, o que seria terrível).

Provavelmente, o que deve ser considerado é que a maioria dos acessos à rede ocorre em uma área onde existem muitas outras pessoas na mesma rede. Trabalho / Uni / Escola são os principais exemplos. Em casa, você pode argumentar que é menos arriscado, porque são apenas caminhos para o qual você precisa se preocupar.

Mas, realmente, não há dúvida aqui. Você usa SSL ao fazer login. Provavelmente, o argumento mais convincente para esse cara é que ele faz com que seu site pareça mais confiável, pois - idealmente - o público em geral nunca faria login em um site que não possui uma tela de login baseada em SSL .

Mas vamos ser realistas. Quase certamente esse vetor de ataque não é o modo como seu sistema ou usuários serão comprometidos.

HTH.


1

Posso concordar com as reflexões de KevinM em responder às suas próprias perguntas, e John Gardeniers está apontando na direção correta. Devo também concordar com o que a seda disse, em "idealmente - o público em geral nunca efetuaria login em um site que não possua uma tela de login baseada em SSL". em absoluto.

Discordo do tom sedoso (provavelmente não intencional), que leva à percepção onipresente de que "o público em geral" é estúpido. O cliente de KevinM claramente não tem o conceito de necessidade de SSL, e essa é uma pessoa comum em poucas palavras. Eles não são estúpidos, eles simplesmente não sabem. Dizer: "você precisa disso" ilicará a resposta: "Eu vivi x anos sem ela e viverei x mais bem", ou talvez até uma resposta pior ", odeio ser informado do que preciso . " Por isso tem cuidado!

Sua preocupação é legítima, Kevin. Seu cliente precisa de um certificado SSL. Eu acho que sua verdadeira preocupação deveria ser como vendê-los um. Não são apenas os logins de usuários com os quais se preocupar, mas os logins de administrador e operador que também se beneficiariam da proteção por SSL.

Sim, há outras coisas com que se preocupar a esse respeito, mais ainda do que cheirar pacotes, como o XSS . Eles são numerosos e bem documentados .


Obrigado Daniel. Eu acho que é importante não apenas ter regras arbitrárias, mas entender o que dá origem aos princípios que temos. Então, eu queria ter certeza de que conseguiria articular isso direito. Consegui convencer o cliente a obter SSL, felizmente!
KevinM

0

em toda a rota seguida pelo pacote, se o seu over HTTP puder ser detectado e os dados puderem ser vistos ... mesmo se você usar HTTP no Proxy como o TOR ... usando o ataque de colheita, etc. pode-se enganar o Proxy para vazar os pacotes de dados ... por isso, se houver algo próximo de confidencial (senhas, detalhes pessoais, imagens privadas, etc.) ... é adequado transferi-los por HTTPS.

Isso também, até o HTTPS é vulnerável à implementação incorreta e há vários ataques SSL aplicáveis ​​a ele ... ainda assim, esses podem ser evitados com uma implementação cuidadosa.

Porém, usar HTTP para texto sem formatação é como convidar até mesmo os novatos com filhos a descobrir as senhas.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.