← Volte para a principal página 'Usando o Fedora'.

Steve, Analista de Segurança da Informação

Steve Milner é um analista de segurança da informação da Carolina do Norte. Ele usa o Fedora para auditoria de aplicações web para as questões de segurança. Steve caminha conosco através de alguns grandes aplicativos no Fedora para análise de segurança e tem algumas dicas para você manter seus sistemas seguros, também!

Steve Milner

De onde você é?

Por todos os EUA. Atualmente vive em Raleigh.

Qual a sua profissão?

Analista/Desenvolvedor de segurança.

Qual é o seu nick no IRC? De onde ele surgiu?

Ashcrow. Quando eu estava no ensino médio eu gosta de verdade de "O Corvo". Eu utilizei muitas referências diferentes ao corvo nos meus apelidos no IRC, mas ashcrow foi aquele com o qual eu acabei ficando.

Quando você começou a aprender sobre o Fedora?

A primeira vez que usei o Fedora foi com o Fedora Core 2. Nessa época eu era usuário muito firme do Debian. Como eu já tinha utilizado o Red Hat Linux no passado eu decidi dar um chance ao Fedora Core 2. Eu honestamente considerei que o Fedora Core 2 era apenas legal nessa época, mas o Fedora Core 3 me impressionou tanto que eu decidi colocá-lo na máquina dos meus pais. Minha mãe gostou muito dele!

Como você se tornou um desenvolvedor?

Lendo código. No ensino médio eu estava muito interessado em código mas a maioria dos livros de programação eram muito caros para mim. Eu lembro de pegar uma cópia de um antigo livro sobre C no meio dos anos 90 que ocupou 5 disquetes de 1/4 que me ensinou um pouco. O que mais me ensinou a programar foi assistir programadores de código livre e aberto trabalhando. A partir daí eu comecei a escrever códigos e enviar patches para projetos e acabei sendo contratado por uma pequena, mas a frente de seu tempo, empresa de desenvolvimento de aplicativos para web em Orlando, na Florida.

Você pode explicar o que significa auditoria de segurança? Como você pode entrar em auditorias de segurança?

Em poucas palavras auditoria de segurança é procurar por problemas de segurança em aplicativos ou sistemas, Uma vez encontrados, os problemas são gravados e enviados para desenvolvedores com informação de como resolver os problemas. Eu faço principalmente auditorias de segurança em aplicativos web e pentests (Testes de Invasão.)

Que tipo de assunto você mais procura quando faz uma auditoria de segurança?

A primeira linha de problemas que eu procuro são as mesmas listadas no Top Dez da OWASP. Dos 10 listados eu começo procurando o que eu encontro de mais comum: injeções, cross-site scripting, solicitações falsas cross-site e redirecionamentos inválidos. Após procurar pelo mais comum eu começo a procurar mais a fundo no aplicativo para encontrar problemas de lógica, mensagens de erro, etc... o que ajudará a descobrir outros problemas de segurança.

Fale de 3 aplicações no Fedora que mais te ajudam no trabalho de auditoria de segurança?

Nmap, ratproxy e python.

Python? Como você usa python para testar a segurança de aplicações web?

Ao efetuar uma auditoria, é importante estar pronto para escrever ataques rápidos de prova-de-conceitos. Python tem uma grande quantidade de módulos que podem tornar os ataques de \"POCS\" uma diversão. Listando algumas:

  • urllib/urllib2
  • BeautifulSoup
  • python-nmap
  • sulley

ipython e bpython também são ótimos ambientes de programação a medida para tentar variações rápidas em ataques POC. Utilizando os módulos do Python assim como ferramentais gerais de segurança controladas por Python facilmente torna a linguagem de programação uma ferramenta indispensável.

Conte-nos um pouco sobre nmap. Como ele funciona? Você pode usá-lo para analisar máquinas que não estão rodando Fedora? É algo que você automaticamente, constantemente roda para verificar problemas, ou você roda manualmente para responder questões específicas?

O Nmap (http://nmap.org/) é uma ferramenta de exploração de rede. O Nmap escaneia uma máquina ou conjunto de máquinas e responde com informação. Ele é normalmente utilizado como scanner de portas geral.

Nmap pode encontrar ou escanear praticamente qualquer máquina na rede. Eu o usei no passado para auditar máquinas baseadas em Windows ou OS X também.

Eu uso Nmap como uma parte das minhas auditorias junto com NSE (Motor de scripts Nmap) scripts, muitos dos quais vêm do próprio projeto Nmap. Eu normalmente o uso para verificar o estado do firewall, serviços abertos de um sistema, junto de suas versões informadas. Ele ajuda a obter uma base de reconhecimento.

O que o ratproxy faz? Ele pode analisar sistemas que não estão rodando Fedora? Ele pode analisar sistemas que não estão rodando Linux? Ele é um programa que você roda manualmente, ou ele roda constantemente em segundo plano?

O Ratproxy (http://code.google.com/p/ratproxy/) é um proxy para auditoria passiva de aplicativos web. Ele se coloca entre o navegador e o aplicativo web que você está auditando e grava as informações conforme você navega pelo site. Ele pode analisar praticamente qualquer aplicativo de internet não importando em qual sistema operacional ele está sendo executado. Como o Ratproxy é passivo ele pode ser utilziado com aplicativos ajax.

Conte-nos sobre personalizações interessantes que você fez ao desktop do seu Fedora para ajudar o seu fluxo de trabalho de auditoria de segurança.

Eu uso uma configuração de duas máquinas/três monitores com GNOME e synergy. Eu realmente estou ansioso para que o GNOME Shell seja considerado estável. Eu o uso nas minhas máquinas pessoais e o amo! Se eu posso, eu tento rodar praticamente tudo através do terminal. Eu acho muito mais fácil usar aplicativos no terminal, uma vez que eu posso rodá-los via byobu/tela.

Você pode nos contar sobre alguma vulnerabilidade de segurança que você recentemente revelou usando Fedora?

Encadeando um redirecionamento inválido e um pedido cruzado falso a sites eu criei um link que faria o seguinte:

  • Permite o usuário efetuar o login normalmente
  • Depois de efetuar o login, o usuário poderia ser direcionado para meu site 'malicioso'
  • O site faria uma função javascript na aplicação original e realizaria ações como o usuário que poderia incluir coisas como adicionar ou modificar contas.
  • O usuário seria então enviado de volta para ao aplicativo original, como se nada tivesse acontecido.

Dada a sua experiência em descobrir falhas de segurança em aplicações, você tem algum truque ou dica para desenvolvedores que estão procurando evitar ter falhas de segurança em seus códigos?

Não confie nos seus usuários! Você deveria escrever código com a expectativa de que pelo menos um usuário malicioso não parará enquanto não encontrar problemas na sua aplicação.

Você tem dicas para os usuários Fedora para manter seus sistemas seguros?

Não esqueça do básico! Se mantenha atualizado, use regras de firewall boas (e use o firewall), desative os serviços que você não precisa e use boas senhas.

Obrigado Steve!

← Leia mais entrevistas com os usuários do Fedora.