Curso MIT "Segurança de sistemas de computadores". Aula 5: “De onde vêm os erros do sistema de segurança”, Parte 2

Instituto de Tecnologia de Massachusetts. Curso de Aula nº 6.858. "Segurança de sistemas de computador". Nikolai Zeldovich, James Mickens. 2014 ano


Computer Systems Security é um curso sobre o desenvolvimento e implementação de sistemas de computador seguros. As palestras abrangem modelos de ameaças, ataques que comprometem a segurança e técnicas de segurança baseadas em trabalhos científicos recentes. Os tópicos incluem segurança do sistema operacional (SO), recursos, gerenciamento de fluxo de informações, segurança de idiomas, protocolos de rede, segurança de hardware e segurança de aplicativos da web.

Palestra 1: “Introdução: modelos de ameaças” Parte 1 / Parte 2 / Parte 3
Palestra 2: “Controle de ataques de hackers” Parte 1 / Parte 2 / Parte 3
Aula 3: “Estouros de Buffer: Explorações e Proteção” Parte 1 / Parte 2 / Parte 3
Palestra 4: “Separação de Privilégios” Parte 1 / Parte 2 / Parte 3
Palestra 5: “De onde vêm os sistemas de segurança?” Parte 1 / Parte 2

O preenchimento de credenciais em iframes aumenta significativamente a escala do ataque e a visita a uma página mal-intencionada pode comprometer muito rapidamente grandes conjuntos de credenciais.



Pesquisadores de segurança descobriram a vulnerabilidade de gerenciadores de senhas não verificados, como extensões do Chrome para Windows , e pesquisas posteriores de pesquisadores, incluindo os do MIT , revelaram a extensão LastPass para o Safari .

Considere consultas entre domínios. Você acha possível que o formulário de autorização preenchido pelo gerenciador de senhas em https: // example.com seja enviado para inserir https: // www.isecpartners.com , o gerenciador de senhas pode transferir dados para terceiros? Sim, pode, e isso torna possível encontrar uma vulnerabilidade ou função que permita que um invasor crie um formulário de login de domínio, após o qual um formulário de login mal-intencionado é enviado ao site autêntico https: // www.isecpartners.com .

Lembre-se de que todos os gerenciadores de senhas confiáveis ​​enviam com segurança senhas para domínios diferentes.

O que é verdadeiro para domínios também é verdadeiro para subdomínios. Uma característica dos subdomínios é que sua "sensibilidade" à segurança pode ser muito diferente das verificações de segurança realizadas pelos domínios. Subdomínios como blog. * , Fórum. * Ou Correio. * Pode ter requisitos de segurança completamente diferentes. O processamento de subdomínios como o equivalente a um domínio aumenta a superfície de ataque. Observe que todos os gerenciadores de senhas confiáveis ​​consideraram subdomínios como equivalentes ao domínio da página.

É necessário ter cuidado na identificação das páginas de login. Os aplicativos da Internet estão mudando e isso faz com que as páginas de login sejam movidas. Portanto, sua autenticidade deve ser verificada com mais cuidado do que a autenticidade dos subdomínios.

Lembre-se de que a maioria dos aplicativos da Web possui um pequeno conjunto de páginas de login. Eles podem ser vinculados entre si para que a aparência da página de login inicie o preenchimento automático ou o envio automático do formulário para um domínio principal. Nesse caso, o gerenciador de senhas preencherá qualquer forma de autorização para qualquer subdomínio encontrado.

O vetor de ataque nesse caso pode ser um email em HTML . Por exemplo, Google , Yahoo e Outlook usam coisas como preencher formulários online. O slide mostra um exemplo com o seguinte texto: "se você estiver com dificuldades para preencher ou enviar este formulário, é possível preenchê-lo on-line usando este link" e é fornecido um link para o formulário que direciona o usuário ao domínio docs.google.com . E mais adiante, na página, diz: "Nunca encaminhe senhas usando o Google Forms!"



Como as pessoas costumam usar o correio para enviar formulários, os atacantes se concentram nos usuários desses três serviços. Você preenche um formulário, por exemplo, respondendo a perguntas de várias pesquisas e usa sua caixa de correio para enviá-lo. Como esses serviços suportam ataques?

Melhor oposição dos hackers do Outlook ( live.com ). Impede a possibilidade de um ataque ao proibir terceiros de fornecer qualquer material original, incluindo formulários do usuário e informações pessoais.

Em segundo lugar, está o Google , que simplesmente alerta os usuários para que tomem essas ações, o que não exclui a possibilidade de roubo de senha.

O Yahoo permite que você roube senhas sem aviso prévio.

O perigo do mecanismo interno de preenchimento automático e a criação de formulários de autenticação reside no fato de que os serviços nem sempre alertam para o risco de enviá-los a terceiros ou o perigo de usar essas funções nas páginas de outros recursos da Internet. Por exemplo, ao passar na pesquisa acima, há uma função de envio suspeita. Respondendo à pergunta de quem é melhor, cães ou gatos, e clicando no botão Enviar , você não apenas confirma a resposta que escolheu, mas também confirma que seu login e senha são enviados ao invasor.

O Yahoo é o pior serviço de segurança, especialmente se você usar o gerenciador de senhas LastPass .

As versões de navegadores móveis são ainda mais protegidas. Não há extensões, mas os pesquisadores de segurança descobriram um plug-in para a versão móvel do navegador Chrome chamada Javascript Bookmarklets . Ele executa um código de segurança falso em sites hostis que você visita. De fato, disfarça o perigo, criando uma sensação de falsa segurança, que pode causar grandes danos.

Você pode visualizar outras extensões do navegador e aprender sobre os resultados da pesquisa de proteção contra ataques e senhas usando os links das organizações de pesquisa de segurança de Berkeley e Joint Stanford .

Quero que você entenda: depois de se familiarizar com o básico dos gerenciadores de senhas, você pode encontrar quase todos os erros de segurança desses aplicativos.

Você precisa entender que funcionalidade o desenvolvedor colocou no aplicativo e como ele funciona na prática. Se você fizer isso, será muito mais fácil encontrar vulnerabilidades.

Considere um ataque TLS chamado CRIME , que é a abreviação de Compression Ratio Info-leak Made Easy . Essa é uma exploração de segurança que permite decodificar sessões HTTPS , incluindo cookies do usuário, interceptando o tráfego criptografado entre o servidor e o navegador. As vulnerabilidades são afetadas por todas as versões do TLS , incluindo o TLS 1.2 .

Durante esse ataque, o hacker intercepta o tráfego do usuário, adiciona seus dados e envia solicitações ao servidor. O algoritmo de compactação ao repetir parte do texto o compacta. Depois de enviar dados para o servidor, o hacker verifica o tamanho da mensagem e, se ela diminuiu, a sequência correta foi selecionada. Assim, você pode selecionar linhas e parâmetros individuais na solicitação, por exemplo, valores de cookie.



Esse ataque é baseado no fato de que seu navegador interage com o site usando a interface interna - o protocolo HTTP. Ao mesmo tempo, se eu for para example.com , o navegador envia meus cookies com todas as informações disponíveis no formulário de autorização preenchido anteriormente, incluindo nome de usuário e senha. Em um formulário HTTP , fica assim:



Mesmo que os dados estejam protegidos por uma conexão SSL / TLS , ainda posso obter algumas informações se eu possuir a rede. Veja como são as informações de SSL :



Aqui eu vejo as seguintes informações: tempo de transmissão, de quem a mensagem é enviada, ou seja, o IP do usuário, para quem a mensagem é enviada, ou seja, o IP do destinatário e o tamanho da mensagem.



Esse é o design da camada de protocolo criptográfico dos soquetes seguros SSL . Se você tiver a capacidade de analisar o tráfego, esses dados fornecerão um campo enorme para atividades maliciosas.

Considere a mensagem que o navegador envia.



Se o navegador permitir que você faça solicitações entre domínios, ele enviará uma solicitação com um cookie contendo os dados do formulário para qualquer site que será redirecionado por um invasor, por exemplo, o site example.com. Se um invasor pegar esses cookies, ele poderá controlar os seguintes parâmetros:



Para adivinhar a senha do usuário, começo a selecionar o parâmetro para a string username = tom & password e, em vez de hunter2, insiro a letra a .



Então eu olho para a descriptografia HTTP e vejo que esse parâmetro ocupa 195 bytes.



Para facilitar seu trabalho, o hacker usa a compactação TLS . O algoritmo de compactação, ao repetir parte do texto, o compacta e a compactação cria marcadores para essas partes e os coloca na forma de uma mensagem HTTP .



Nesse caso, o ID da sessão é equivalente às partes do código marcado com o token correspondente e o tamanho da mensagem compactada é 187 bytes.

O que acontece se eu igualar o ID da sessão = d ?



O tamanho da mensagem é reduzido porque precisa compactar mais bytes. Isso pode ser visto comparando-se o número de argumentos contornados por uma moldura vermelha na 2ª linha do topo.



É isso que o atacante vê. Ele vê que a mensagem está sendo compactada e, graças a isso, ele descobre que adivinhou a primeira letra no ID da sessão . Em seguida, substitui a ID da sessão = da e recebe o tamanho da mensagem de 188 bytes.



Assim, substituindo sucessivamente letras e números e analisando alterações no tamanho da mensagem, ele adivinha o ID da sessão inteira. Ou seja, ele seleciona não a chave de criptografia, mas o conteúdo da própria mensagem criptografada.



Para lidar com o CRIME , você deve impedir o navegador de executar a compactação TLS . Você também deve alterar o protocolo SPDY para que, quando solicitar dados secretos, eles sejam compactados em um contexto separado.

Considere casos de violação de HTTP . As respostas HTTP que chegam ao usuário após acessar o servidor podem conter informações confidenciais, como tokens CSRF ou outras informações confidenciais. Ataques semelhantes ao CRIME requerem conhecimento de pelo menos um prefixo de sessão secreta e a capacidade de inserir seus dados em uma mensagem de resposta.

Você pode impedir um ataque proibindo a compactação de respostas ou suprimindo um ataque CRIME , pois esse ataque usa o princípio do MiTM (a pessoa do meio) e pode derrubar solicitações reais. Este é um ataque "barulhento" satisfeito, que pode ser detectado, pois o invasor geralmente não se comunica diretamente com o servidor, mas usa o acesso ao roteador, e o servidor pode nem mesmo "saber" sobre o ataque.

Você também pode se proteger colocando várias informações confidenciais em vários arquivos, como javascript , mas isso é difícil de implementar na prática e também é difícil modificar aplicativos existentes para isso.

Você pode tentar aleatoriamente informações secretas em solicitações, principalmente tokens de CSRF ; no entanto, esse método causará uma forte queda no desempenho.
Conhecendo os princípios de aplicativos e vulnerabilidades, você é capaz de "derrubar" toda a Internet: SSL / TLS , DNS , DNSSEC / DNSEC , IPv6 , isso é bastante viável.



E agora eu quero falar sobre um grande participante da segurança - NSA , Agência de Segurança Nacional ou NSA. São pessoas que geralmente criam problemas de segurança e os resolvem.

Para algumas coisas, estou pronto para odiá-las. No entanto, os funcionários da NSA não estão em condições de alterar as políticas existentes. Eles contribuem para o desenvolvimento intelectual de tudo relacionado à segurança, e espero que eles acreditem que o resultado de seu trabalho será usado para bons propósitos.

No trabalho deles, existem dois lados da moeda; no entanto, essa é apenas a minha opinião e pode não coincidir com a opinião de meus empregadores. E acho que nem todos os dados de pesquisa sobre os quais falarei são oficialmente desclassificados.

Snowden disse que algumas declarações podem ser provadas como verdadeiras, e outras como falsas. Um exemplo de afirmação falsa é a afirmação da NSA de que "existe acesso direto às redes do Google " , porque o verdadeiro estado das coisas com acesso a essas redes é mostrado na figura a seguir, o que a própria NSA fez.

Atualmente, o Google criptografa todo o tráfego porque teme que alguém possa invadir sua rede. Além disso, todas as notícias são filtradas pela mídia e vemos apenas trechos de documentos.



Você vê um emoticon ao lado da frase " SSLs são adicionados e excluídos aqui no servidor principal do Google " , porque é a partir daqui que a NSA pode recuperar dados. O Google , que possui data centers em todo o mundo, faz uso extensivo de linhas de fibra dedicadas para suas redes. Graças a isso, o tráfego é transmitido em alta velocidade e é muito difícil alcançá-lo.

O governo não possui apenas grandes capacidades técnicas, mas também alavancagem. É muito difícil para algumas empresas resistir à coerção para cooperar com o governo. Um exemplo de confronto com o estado é o serviço de email gratuito Lavabit , criado como uma alternativa ao Gmail , porque este violou a privacidade da correspondência do usuário a pedido de serviços do governo.

O estado também pode forçar as empresas a não reconhecer publicamente que cooperam com os serviços do governo.

Vamos considerar quais ferramentas o estado possui para implementar políticas de segurança.

Primeiro de tudo, é o SIGINT - A Plataforma Criptológica Mundial de Proteção. É baseado em redes de fibra óptica. O site a seguir mostra um diagrama de um documento ultrassecreto publicado pela Snowden. Você vê nele muitos pontos amarelos, designados como CNE. Snowden sugere que esses sites sejam equipados com equipamentos de hackers de rede. Seu número é superior a 50.000 em todo o mundo.

As redes podem ser invadidas de várias maneiras. O governo usa para esse ataque da cadeia de suprimentos - ataques cibernéticos que visam os elementos menos seguros nas redes de várias organizações. Para se proteger de tais ataques, o governo evita qualquer tipo de cooperação, fornecendo apenas acesso direto às suas próprias redes, sem intermediários e terceiros.



De acordo com a organização não governamental EFF (Electronic Frontier Foundation) e os processos iniciados, a NSA gosta de usar os chamados "comutadores ópticos", que permitem interceptar conversas telefônicas, inclusive do MPLS, e impedir o vazamento de informações de destino para os intermediários. A maioria dos intermediários envolvidos na transferência de informações entre usuários, não apenas nos Estados Unidos, mas em todo o mundo, está envolvida nisso.



Espero que o TLS possa suportar esse tipo de interferência.

O governo pode comprometer até a infraestrutura de rede interna usando chaves de criptografia privada Pokemon dos servidores finais. Isso permite que você organize ataques como Heartbleed e ataques de rede padrão. O governo costuma usar o modelo de rede do DOD desenvolvido pelo Departamento de Defesa dos EUA. Esse sistema é usado nas redes google.com .

É possível usar ataques de criptografia contra o TLS . Supõe-se que o worm Stuxnet , que infecta computadores Windows , foi desenvolvido por iniciativa do governo dos EUA. Ele usa um conflito dentro do algoritmo de criptografia MD5 , que possui um certificado válido. Esse worm intercepta dados entre controladores e estações lógicas e pode interferir no processo de controle automatizado de vários complexos industriais. Este é o único vírus que pode destruir a infraestrutura física das redes.

Existe uma organização NIST que desenvolve padrões de criptografia para quase tudo no mundo. Ela recomenda o uso do gerador de números pseudo-aleatórios criptograficamente robustos DUAL_EC_PRNG para criar chaves de criptografia. No entanto, ele ainda tem uma vulnerabilidade. Se você usar os pontos da curva elíptica especificados em seu padrão de criptografia, devido ao grande número de bits de saída em uma rodada de geração, é possível penetrar no código do gerador e decifrá-lo usando força bruta (pesquisa exaustiva). Os criadores do algoritmo conheciam essa vulnerabilidade desde o início. Isso não significa que um backdoor foi originalmente fornecido nesse gerador, mas significa que um backdoor pode ser criado lá a qualquer momento.

Observo que a NSA costuma usar ataques com base em inconsistências nos algoritmos de criptografia MD5 mais recentes.



O estado tem um impacto global na Internet em todo o mundo. A maioria das comunicações globais são realizadas nos Estados Unidos. As chamadas telefônicas, e-mails e bate-papos são realizados das formas mais baratas, nem sempre fisicamente diretas, e você sempre pode seguir esse caminho. A maioria do tráfego global da Internet passa pelos Estados Unidos. De qualquer forma, a maneira pela qual a conexão é feita com o objetivo final do seu contato pode ser facilmente redirecionada para os Estados Unidos, ou seja, o estado pode controlar qualquer fluxo de telecomunicações no mundo.

Vou dar um exemplo do "retorno" de tal atividade. O Estado intervém não apenas na conexão de particulares, mas também no trabalho das empresas. Em novembro de 2013, o Washington Post publicou informações de que a NSA intercepta o tráfego entre os datacenters do Google por meio de um cabo de fibra ótica antes de ser criptografada entre os servidores finais e os computadores dos usuários. Detalhes adicionais sobre o programa governamental MUSCULAR e fragmentos de pacotes roubados da rede interna do Google foram publicados.



Os funcionários do Google confirmaram o fato de que a NSA invadiu sua rede, não com vergonha de expressar expressões - o especialista em segurança do Google Brandon Downey escreveu diretamente: "Foda-se esses caras!", Referindo-se à arrogância sem precedentes da NSA .

Portanto, é difícil para as pessoas confiarem no equipamento de rede dos EUA e nos serviços fornecidos pelos provedores de rede dos EUA. Vou citar as palavras do cardeal Richelieu: "Dê-me seis linhas escritas pela mão do homem mais honesto, e encontrarei nelas algo que pode ser pendurado".

Eu não quero que você fique paranóico no sentido de desconfiança do governo e veja espionagem total e violação da confidencialidade das informações e da privacidade. Mas, como futuros desenvolvedores de software, você precisa saber como um invasor pode agir. Se você trabalha em uma grande empresa, um hacker pode usar ferramentas e técnicas do governo para organizar um ataque. Portanto, você precisa fazer coisas úteis como o Google , criptografando todo o tráfego interno e usando certificados de teste de penetração.

Quero apresentar-lhe vários outros tipos de malware. Um deles é chamado Chama , ou "Chama".



Podemos dizer que esse spyware é primo do worm Stuxnet . É capaz de fazer coisas loucas como:

  • apague todas as etiquetas GPS das suas fotos no seu computador;
  • roube sua lista de contatos através de qualquer telefone conectado ao seu computador ou smartphone via Bluetooth;
  • tire capturas de tela do seu dispositivo, intercepte as teclas digitadas e grave o áudio espião.

Flame MD5 , , . - 2008 , CA -, RapidSSL . Internet Public Key Infrastructure (PKI) , .

4 RapidSSL . 3- , 215 Sony PlayStation 3 . , , MD5 .

, Microsoft Microsoft Terminal Server , MD5 . MD5 , , 1 . Microsoft , , Windows . , MS , Flame , . , , .

– , ? -, , .

, « »? « ?», .



, , . , .

, , , . , .

:

  • « » , ;
  • jailbreakme.com , iOS root- . , , , ;
  • – , , , ;
  • , ;
  • , , .

.

, . , . , . , . , , .

. , , . , , . , , .

, , , . , , , .

, .

— .

, iSEC Partners:

  • 2 -3 20-30 . , , MIT;
  • , ;
  • , ;
  • , ;
  • , !

paul@isecpartners.com . , .



. , , «». , , . , . «» IBM .

, , , . . , , , Facebook , Google Yahoo . , , , .

!


.

Obrigado por ficar conosco. Você gosta dos nossos artigos? Deseja ver materiais mais interessantes? Ajude-nos fazendo um pedido ou recomendando a seus amigos, um desconto de 30% para os usuários da Habr em um análogo exclusivo de servidores básicos que inventamos para você: Toda a verdade sobre o VPS (KVM) E5-2650 v4 (6 núcleos) 10GB DDR4 240GB SSD 1Gbps de US $ 20 ou como dividir o servidor? (as opções estão disponíveis com RAID1 e RAID10, até 24 núcleos e até 40GB DDR4).

Dell R730xd 2 vezes mais barato? Somente nós temos 2 TVs Intel Dodeca-Core Xeon E5-2650v4 128GB DDR4 6x480GB SSD 1Gbps 100 a partir de US $ 249 na Holanda e nos EUA! Leia sobre Como criar um prédio de infraestrutura. classe usando servidores Dell R730xd E5-2650 v4 custando 9.000 euros por um centavo?

Source: https://habr.com/ru/post/pt418215/


All Articles