Ataques na aplicação
.Interpretação de HTTP request, SQL querys, Mensagens da aplicação
.Difícil de identificar e replciar
.Ataques efitos com códigos simples e com ferramentas gráficas (Paros, Netcat)
.Mais perigosos que ataques de infra (servidores), pois vai no core da empresa e para o conserto haverá necessidade de re-design
www.owasp.org 10 top list
1. XSS (cross site scripting)
Eum script no browser da vitima para roubar as informações de sessão, desfigurar sites, inserir conteúdo, fazer pishing
No exemplo o cara mostrou que podia inserir um código javascript no textbox, com isso ele pegou os dados da sessao do cara e inseriu código dele na página dando um redirect pra outro site.
Quando for mostrar o conteúdo inserido pelo usuário usar a função HTMLEditFormat() para desabilitar os códigos inseridos. Isso tb ajuda a resolver o ataque seguinte.
2. Input Validation
O cara pode mudar atributos passados em atributos hidden (ex. preço de uma mercadoria)
Validar o código no cliente e no servidor. Usar os validadores do próprio CF isNumber(), maxLength(), etc,,,
Especificar o encoding
Usar regexs no neo-security.xml para remover [object] etc...
CF_XSSBLOCK
3. Injection Flaws
SQL Injection e HTML Injection
Dá pra visualizar todos os dados do banco de dados inserindo código em uma consulta.
O html eh muito semelhante.
Ex. colocar um comentario no fim de um item de uma lista, e fechar no ultimo item, assim o browser nao vai mostrar os dados corretos, o que pode enganar um administrador que só usa o browser por exemplo.
Dá pra fazer um ataque XSS desta forma tb.
Usar PreserveSingleQuotes, CFQUERYPARAM, permissões de sgbd, desabilitar XP_cmdshell e equivalentes
Em resumo... nunca deixar single quotes ''
tools: wsdigger, sqlmap
4. Remote file Inclusion
execução remota de código, instalação de rootkit
ex. upload de arquivos dos usuários
O camarada passa um arquivo cfm por exemplo com código para execução de código no servidor
Dá pra fazer um terminal via browser do nosso servidor...
Usar no cffile os accepts "image/jpg" JUNTO com isImageFile(), isPdfFile()...
(validacao cliente/servidor)
Upload dos files fora do webroot, limitar o tamanho , mudar o nome quando receber com user_id e data por exemplo
Assinar:
Postar comentários (Atom)
Nenhum comentário:
Postar um comentário