Segurança de Aplicações Web
Posts tagged dos
10 principais técnicas de hacking da Web
Jan 22nd
Jeremiah Grossman é o fundador e o CTO da WhiteHat Security, uma empresa responsável por fazer avaliações de risco em sites web e na identificação e correcção de vulnerabilidades nos mesmos. No seu blog, Jeremiah apresentou recentemente dois posts (aqui e aqui) que resumem claramente a actividade em termos de segurança de informação das passadas duas semanas.
Para além desses dois excelentes resumos, o que me despertou mais a atenção no blog do Jeremiah foi a sua listagem que descreve as 10 principais técnicas de hacking da Web – através de apresentações ou de artigos. Tomei a liberdade de reproduzir essa mesma listagem aqui, em português:
- Criação de certificado forjado de CA: uma vulnerabilidade encontrada na actual infra-estrutura de PKI que permite forjar um certificado de uma CA, e com isso gerar certificados digitais forjados para uma série de sites, com o intuito de emitar outros legítimos. Este ataque/vulnerabilidade baseia-se numa fraqueza encontrada na função de hash MD5;
- Poluição de parâmetros HTTP (HPP): este tipo de ataques ocorrem com a possibilidade de ultrapassar ou injectar parâmetros HTTPS POST/GET através da injecção de delimitadores de cadeias de caracteres. Esta vulnerabilidade pode ser usada para ataques do lado do cliente ou do servidor;
- Vulnerabilidade da API do Flickr que permite forjar assinaturas (ataque à extensão MD5): uma vulnerabilidade encontrada na API do Flickr com a chave que permite gerar as assinaturas necessárias para a autenticação das aplicações externas que usam a API do Flickr. Esta vulnerabilidade permite que um utilizador possa gerar assinaturas válidas sem conhecer a parte secreta de uma chave;
- Pesquisa intra-domínios temporizada: um ataque de timing (de temporização) é um ataque em que um atacante tenta comprometer um sistema analisando o tempo que demorar uma determinada operação a ser realizada;
- DoS HTTP Slowloris: o Slowloris é um ataque de DoS HTTP que se aproveita do facto de que é possível manter uma sessão HTTP aberta indefinidamente e de se poder repetir esse mesmo processo por diversas vezes;
- Vulnerabilidade 0-day no parsing de ficheiros do IIS: esta vulnerabilidade surge(ia) pelo facto do ISS executar código ignorando a interpretação de um ‘;’. Por exemplo o script “malicioso.asp;.jpg” seria executado (o ASP) uma vez que o IIS ignorava o ‘;’ e considerava o ficheiro como sendo uma imagem JPEG;
- Explotar XSS inexplorado: mais um conjunto métodos para explorar vulnerabilidades do tipo XSS;
- Os filtros XSS favoritos e como atacá-los
- Problemas de segurança na cache RFC1918: explorar os mecanismos de mapeamento de cache desse mapeamento na Internet, em especial nos endereços IP não-públicos que são passíveis de “routear”;
- Rebinding to DNS: este tipo está divido em três partes distintas, cookies persistentes, scraping e spamming e fixação de sessões.
Ataques de Negação de Serviço ao nível aplicacional
Oct 19th
Como é que se planeia a identificação e a mitigação de um ataque de negação de serviço de uma aplicação web nos site de web que disponibilizamos e gerimos?
É esta a questão que nos deixa Ryan Barnett, autor de “Preventing Web Attacks with Apache“, sobre como identificar condições de ataques de negação de serviço em aplicações, através da monitorização do desempenho das mesmas.
O autor levanta algumas questões sobre quais os aspectos a proteger em aplicações web, que podem ser um alvo fácil de ataques de negação de serviço. Por exemplo, serão muito mais propensas a um ataque deste género, as funcionalidades de uma aplicação web que necessitem de grande interacção com os sistemas de back-end para gerar relatórios, e que como tal consomem mais recursos quer em termos de processamento quer em termos de memória.
Assim, e segundo Ryan Barnett, torna-se importante a utilização de ferramentas (sugerindo o WebDefend 4.0) que analisam o desempenho das aplicações web, e que detectam quais são os pontos mais susceptíveis a sofrerem um ataque de DoS. Por outro lado, é possível analisar o desempenho de uma aplicação web para verificar se a mesma está a sofrer alguma degradação em termos de desempenho que possa indicar um ataque em curso. Como é óbvio, este tipo de ferramentas não são 100% à prova de falhas e podem originar falsos alarmes, decorrendo de outros aspectos que nada têm que ver com um ataque.


