Brakeman - Rails Security Scanner

Publicado por Roberto Soares (3spreto) em 24/09/2014

[ Hits: 3.402 ]

Blog: http://codesec.blogspot.com

 


Brakeman - Rails Security Scanner



Brakeman[1] é uma ferramenta de segurança, utilizada para escanear códigos escritos em Ruby on Rails por meio de análise estática à procura de vulnerabilidades.

Instalação

Você precisa ter o RubyGems[2] instalado em sua máquina, sendo assim, basta o comando abaixo para que a ferramenta seja instalada:

gem install brakeman

Utilização

Após sua instalação, você pode utilizar o Brakeman de duas formas. A primeira é especificando o diretório que contém a aplicação a ser analisada:

brakeman railsgoat/

Ou então, acessar o diretório e apenas executar o Brakeman:

cd railsgoat/
brakeman

E na prática, como fica?

Vamos a um exemplo de código Rails vulnerável, utilizando uma aplicação desenvolvida especialmente para fins didáticos, que é o RailsGoat[3].

Utilize o Git para fazer o download de todo o código:

git clone https://github.com/OWASP/railsgoat.git

Agora, basta executar o Brakeman no código em questão:

brakeman railsgoat/

Você terá uma saída similar a esta abaixo:
Linux: Brakeman - Rails Security Scanner

Como podemos ver, foi gerado alguns avisos sobre possíveis vulnerabilidades:

  +-------------------------------+-------+
  | Warning Type..................| Total |
  +-------------------------------+-------+
  | Attribute Restriction.........|   1   |
  | Command Injection.............|   1   |
  | Cross Site Scripting..........|   1   |
  | Cross-Site Request Forgery....|   1   |
  | Dangerous Send................|   1   |
  | File Access...................|   1   |
  | Format Validation.............|   1   |
  | Mass Assignment...............|   5   |
  | Remote Code Execution.........|   4   |
  | SQL Injection.................|   2   |
  | Session Setting...............|   2   |
  +-------------------------------+-------+


Lembrando que nos resultados de ferramentas deste tipo, podemos obter falsos positivos e falsos negativos, sendo assim, é altamente recomendado a análise manual por algum analista e/ou empresa[4] com experiência no assunto, para que todas a falhas presentes sejam mitigadas.

Referências


See you in the next tip. :)
@espreto

Outras dicas deste autor

Proteção contra vulnerabilidade POODLE SSLv3

DuckDNS - Simples solução para DNS dinâmico

Descobrindo informações variadas do alvo pelo BackTrack 4

VirusZoo - Um zoológico diferente

F1 = Fórmula 1? NÃO! Mais uma vulnerabilidade do IE

Leitura recomendada

Inserir comentários em regras do iptables

Filtrando porcarias com Squid III

Criptografia de arquivos

Funcionamento e bloqueio do MSN - Squid + Iptables

Limitar acesso de mais de um usuário via SSH

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts