com Ruby on Rails
Segurança
+
Segurança"A web foi projetada com pouca ou quase nenhuma preocupação com segurança.”
• Integridade
• Confidenciabilidade
• Negação de Serviço
• Autenticação
Ameaças
Ruby on RailsFramework WEB
• Foco na produtividade
• Criado para facilitar a vida do desenvolvedor
• Utiliza a linguagem de programação Ruby
Tipos de Ataques
Sessões
Cross-Site Request Forgery (CSRF)
Redirecionamento
Arquivos
Gerenciamento do usuário
Injeção
Headers
Geração de query inseguras
Segurança de ambiente
Replay Attach
Sessões
Alterar o valor de uma sessão
Replay Attach
Sessões
Como ?
document.cookie = "saldo=200"
Replay Attach
Sessões
Solução
Guardar valores importantes no banco de dados, dados em sessões somente genéricos.
Dados que deverão ser checados a cada atualização.
Cross-Site Request Forgery CSRF
Insere código ou link malioso no código que acredita estar numa página autenticada.
Como ?Pessoa está autenticada no site 1 e clica em algum link que requer autenticação.
Exemplo: pessoa está no facebook e recebe o link de deletar a conta camuflado em uma imagem “fofa”.
Cross-Site Request Forgery CSRF
Cross-Site Request Forgery CSRF
Solução
Pedir usuário/senha para ações importantes
Redirect
Redirecionamento explicito na url, é perigoso pois pode redirecionar para um site fake exatamente igual ao original podendo obter usuário/senha do usuário.
Como ?
Basta aplicar um script que muda a página de redirecionamento, como esse:
<!-- $('.redirect').attr('href',"http://localhost:3000/users/app_details?url=http://terra.com.br") -->
Redirect
Como ?
Basta aplicar um script que muda a página de redirecionamento, como esse:
<!-- $('.redirect').attr('href',"http://localhost:3000/users/app_details?url=http://terra.com.br") -->
Redirect
E muito mais..
Ferramenta estática de checagem de código para detecção de vulnerabilidades de segurança
Para instalar: gem install brakeman
Demonstração
Perguntas
?