Monday, August 31, 2009

Sistema Operacional à prova de falhas?

Recentemente, o NICTA (Centro de Pesquisa Australiano) apresentou um kernel de sistema operacional que, a princípio, é resistente a falhas de segurança sendo, portanto, ideal para operações de missão crítica.

É importante ressaltar que o kernel é a alma de um sistema operacional. Todos os sistemas  operacionais conhecidos (Linux, FreeBSD, OpenBSD, Mac OS X, Windows, enfim, todos) são compostos por kernels. É lógico que existem diferenças conceituais na implementação destes kernels, mas o objetivo principal é sempre o mesmo:  Ser o ponto central do sistema operacional que controla os aspectos principais como acesso a disco, uso de memória, processamento simultâneo de aplicativos, entre outras funções (maiores detalhes aqui).

Não é a primeira vez que se tenta criar um Sistema Operacional seguro. Várias alternativas já foram especificadas. Alguns exemplos: http://en.wikipedia.org/wiki/Security-focused_operating_system

Certamente o caso mais conhecido é o do OpenBSD. É um sistema operacional pensado desde o início sob a ótica da segurança e tem tido excelentes resultados. Basicamente, o código-fonte é auditado frequentemente a procura de erros de programação que possam levar  ao comprometimento do ambiente.

É importante reforçar que só a segurança do sistema operacional não é suficiente para garantir a proteção. De que adianta uma base robusta se ainda temos casos de vulnerabilidades de SQL Injection tão comuns?

Mas voltando ao caso do sistema operacional desenvolvido pela NICTA, tomara que seja uma alternativa viável para sistemas de missão crítica.

Aliás, para encerrar, aí vão alguns exemplos de "missão crítica":
  1. Já pensou naquele carro último modelo, com sistema operacional {Fiat/GM/Ford}OS, que permite acesso via bluetooth, e que possui uma senha padrão para acesso ao sistema de gerência (senha tipo: fiat, gm2009, ford123...)? Já imaginou este sistema vulnerável a um Buffer Overflow? E que, uma vez explorado, o atacante consiga travar todo o sistema (embreagem, freio, computador de bordo, tudo integrado!) e o motorista perca o controle? Aliás, já pensou na exploração desta mesma vulnerabilidade a partir da rede bluetooth (tipo uns 200 metros de distância)?
  2. Sistemas de Controle de  hidrelétricas, usinas nucleares, e outros brinquedinhos? Você sabia que os sistemas operacionais onde estas aplicações estão instaladas são os Solaris/Windows/Linux da vida?
  3. Sistemas que controlam equipamentos médicos. Já pensou na tela azul justamente no momento mais crítico?
  4. Sistemas de controle de tráfego aéreo; Sistemas de controle de semáforos "inteligentes"; Sistemas dos Caixas Eletrônicos (ATM's); entre outros...
Todos os sistemas  acima citados são de "missão crítica" e certamente se beneficiariam muito de sistemas operacionais robustos à prova de bugs (é possível isso afinal de contas?) e à prova de falhas de segurança.

Thursday, August 27, 2009

Links Interessantes - Parte 2

Continuando a série de links legais sobre Segurança da Informação, aí vai mais uma lista interessante. Enjoy it!

Pentest/Análise de Vulnerabilidades:

OWASP
Pentest Framework
milw0rm
caughq
Default Password List
Security Vulns
Infosec Institute

Quer treinar um pouco?

Fatetek
Bright Shadows
hack this site
hackquest
hackergames

Outros sites com temática geral:

Security Focus
Securitydocs
Dark Reading
New Order
Midnight Research
phrack magazine
Wireless Lan Security

Gosta de Matrix, Bladerunner, Neuromancer, Snow Crash, etc? Que tal alguns sites cyberpunks?

Cyberpunk Review
Plausible Futures
boingboing
Pesquisacyberpunkscifibr
Kr3st0

Dobradinha WPA/TKIP: Game Over...

Os pesquisadores Toshihiro Ohigashi e Masakatu Morii, respectivamente das universidades de Hiroshima e Kobe, do Japão, demonstraram a viabilidade de ataques contra o padrão WPA (Wi-Fi Protected Access) em conjunto com o TKIP (Temporal Key Integrity Protocol). Esta dobradinha só consegue ser um pouco melhor que o famigerado padrão WEP (Wired Equivalent Privacy). Na realidade se tratava de uma solução paliativa enquanto não surgia um padrão mais robusto, que é o WPA2 (bom, pelo menos até descobrirem uma forma de quebrar este também).

Maiores detalhes sobre a técnica podem ser obtidos neste endereço: http://jwis2009.nsysu.edu.tw/location/paper/A%20Practical%20Message%20Falsification%20Attack%20on%20WPA.pdf

Wednesday, August 26, 2009

Neurônios Filosóficos - Parte 3: Pode deixar que eu sei qual é o nosso Perímetro Externo!

Pense rapidamente: Você sabe exatamente qual é o perímetro externo da rede de sua empresa?

Se a resposta imediata foi o firewall de borda, talvez seja necessário rever seus conceitos. Vamos tentar então definir o que é um perímetro externo nos dias de hoje:
  • Firewall de borda (bom, logicamente não dá pra ignorá-lo!);
  • Rede wireless. Hum, até onde vai o sinal? Será que dois quarteirões depois é possível pegar o sinal? Essa rede é segura? Criptografia? WEP (argh!)? Será que algum usuário instalou uma rede wireless "local" só para os manos do departamento? Afinal de contas, todos precisam de mobilidade dentro do departamento e o sinal não alcança os andares de cima e de baixo (portanto é seguro). Só esqueceram que aquele Access Point grudado na  janela manda o sinal até o estacionamento ao lado do prédio (o que? pagar o mensal do estacionamento durante um mês até quebrar a chave WEP?).
  • Hosting no datacenter baratinho... Será que é seguro? Ah, mas tudo bem, afinal de contas o Service Level Agreement está muito bem costurado...
  • Filiais que se conectam diretamente à sua rede corporativa. Parece mais uma teia de aranha de tantas conexões espúrias. Aliás, quantas são mesmo? Não se preocupe, alguém tem uma planilha com todos os ativos.
  • VPN (Virtual Private Network). Afinal de contas, criptografia é a pedra filosofal. O Serra uma vez criticou a Marta Suplicy dizendo que um túnel serve para ligar um ponto congestionado a outro ponto congestionado, de forma rápida. Alguém que está em um helicóptero não consegue ver os carros dentro do túnel, certo? Então, no túnel de uma VPN também não é possível saber o que trafega ali. Alguém se lembrou de monitorar as pontas do túnel?
  • E o Cloud Computing (http://en.wikipedia.org/wiki/Cloud_computing)? O conceito é tão abstrato que dá até preguiça só de pensar na sua extensão...
Alguém tem mais alguma sugestão?

Abs.

Tuesday, August 25, 2009

Neurônios Filosóficos - Parte 2: Meu site é 100% seguro!

Opa, isso é sério!

Como é possível afirmar que um site é 100% seguro? E pior, ainda colocam um selo no site para indicar que está livre de hackers. Parece até provocação, do tipo: Eu duvido que vocês consigam me invadir!

Trocando em miúdos, vamos aos fatos:
  1. Não é possível afirmar que um site é totalmente seguro. E ponto. Exemplo? Vamos supor que todos os testes possíveis e imagináveis sobre as vulnerabilidades CONHECIDAS tenham sido realizados e o site está limpo. E as vulnerabilidades DESCONHECIDAS? Quem garante que, neste exato momento, alguém (ou um grupo) saiba de uma vulnerabilidade específica do Apache (não vou falar IIS para não ficar a impressão que só cito a Microsoft...) e que esta vulnerabilidade permita a exploração remota e posterior vazamento de informações? Acho que este exemplo já é suficiente para desqualificar este tipo de afirmação.
  2. E digo mais.  Colocar um selo no site dizendo que ele é livre de hackers só estimula ainda mais a curiosidade e motivação dos caras. Imagine só: "Nós do grupo Silver Forevis conseguimos invadir o site da Mercearia da Dona Genoveva!". Ainda vira motivo de piada no underground...
Parece surreal? Acredite, é só procurar no Google. Dica: Combine as palavras selo e hacker.

Confiança comprometida

Recentemente saiu uma notícia a respeito de um comportamento interessante de um determinado vírus (Win32.Induc): http://www.securityfocus.com/brief/999. Este virus infecta o compilador Delphi e todos os programas compilados por ele são automaticamente infectados, criando assim exércitos de programas maliciosos a partir de uma atividade aparentemente inocente.

Isto levanta uma questão importante que é a possibilidade de uso de outros vetores de propagação de códigos maliciosos. O código-fonte de uma aplicação desenvolvida caseiramente, teoricamente, é um porto seguro onde os desenvolvedores possuem controle sobre os riscos (não vou entrar no mérito do desenvolvimento seguro). Só que mesmo neste caso, ainda deve existir a preocupação a respeito do compilador que, uma vez contaminado (ou propositalmente modificado por alguém que não tenha uma intenção muito ortodoxa), pode ser usado para criar aplicações contaminadas por trojans/cavalos de tróia/e outras pragas virtuais. Quem quiser se aprofundar mais neste assunto pode consultar este excelente documento: http://www.ece.cmu.edu/~ganger/712.fall02/papers/p761-thompson.pdf.

Outro vetor importante é a própria substituição de partes do código-fonte, de tal forma a produzir versões "trojanizadas" de aplicações, fato que já ocorreu em aplicativos como o Sendmail (http://www.cert.org/advisories/CA-2002-28.html), tcpdump (http://www.cert.org/advisories/CA-2002-30.html), ruby (http://www.derkeiler.com/Mailing-Lists/Full-Disclosure/2006-03/msg00138.html).

Para finalizar, mais um vetor interessante de propagação que é o comprometimento de repositórios de pacotes de aplicativos como aqueles utilizados para update dos sistemas. Alguns exemplos "básicos":
Resumindo, precisamos sempre pensar "fora da caixa" em relação a Segurança da Informação. As ameaças nem sempre são óbvias...

Neurônios Filosóficos - Parte 1: Minha empresa está segura, afinal de contas usamos firewall e antivírus!

O objetivo da série "Neurônios Filosóficos" é discutir algumas questões relacionadas a Segurança da Informação que incomodam a humanidade desde a época de Platão e Sócrates...

Uma delas diz respeito à crença de que uma empresa está segura devido ao fato  de utilizar a dupla de ferramentas Pelé/Coutinho (ops, firewall e antivírus). Ainda é possível ouvir este tipo de comentário. Bom, só para provocar um pouco, seguem alguns exemplos de ameaças para as quais estes equipamentos teoricamente deveriam proteger as empresas mas na prática não protegem (note que são somente alguns exemplos porque o resto não dá para citar todas as possibilidades):
  • spyware, ransomware, adware, backdoor, trojan horse, keylogger, sniffer, vírus, worm, spam, phishing (ah, mas o meu antivírus pega um monte dessas pragas! Sim, em alguns casos pega uma boa parte, mas normalmente é necessária uma combinação de ferramentas e nós estamos falando somente de firewall e antivírus, certo?);
  • SQL Injection, Cross Site Scripting, LDAP Injection, XML Injection, e outros "injections em geral". Para listas mais completas de ataques contra aplicações WEB, consulte os seguintes endereços: OWASP e Pentest Framework. Lembre-se que todos os ataques utilizam a porta 80/tcp que estará obviamente liberada no firewall (afinal de contas, a empresa precisa divulgar o site de e-commerce, certo?). Pior ainda quando for via 443/tcp (hum, criptografia. Isso significa que o firewall nem consegue "ler" os pacotes...);
  • Vamos tentar abstrair as questões puramente técnicas. Imaginemos um mundo onde o usuário clica naquele executável que chegou via e-mail (alguns ataques nem precisam da intervenção do usuário, basta o Outlook ou o Internet Explorer estarem vulneráveis). Supondo (só supondo, é claro) que o antivírus ainda não tenha uma assinatura para a nova praga e a máquina do usuário seja "grampeada". De repente, a máquina dele passa a enviar sinais para o malfeitor (temos um bom cardápio de protocolos a disposição: ftp, irc, http, dns, https, icmp. Ixi, são tantos que é melhor parar por aqui). Mas o firewall não bloqueia? Então, sabe como é... Tivemos que liberar TODAS as portas/protocolos porque o pessoal precisava acessar aquela aplicação da faculdade, o site da receita, o programa da Ana Maria Braga, etc...
Obviamente que firewall e antivírus são importantes! Mas certamente não são suficientes. Hoje em dia há um verdadeiro arsenal de ferramentas a nossa disposição para combater estas pragas e ataques como IPS (Intrusion Prevention System), AntiSPAM, Filtros de Conteúdo (lá vem ele querendo proibir o acesso àqueles sites "firmeza"!), além de ferramentas anti-spyware, bloqueios de USB/CDROM, etc.

Só não podemos esquecer obviamente do elo mais fraco da segurança: o ser humano. Não adianta gastar fortunas com todos os equipamentos citados acima se os usuários continuarem clicando naquele link para as fotos do flagra da esposa ou marido, ou até mesmo se continuarem com o sonho de ficar ricos e quiserem ajudar aquele príncipe nigeriano, herdeiro de uma família de barões do petróleo que precisa de uma pequena ajuda para tirar sua fortuna do país...

Sunday, August 23, 2009

Conscientização de usuários: Uma batalha perdida?

Empresas que tenham implantado um sistema de gerenciamento de segurança (SGSI), segundo os preceitos da norma ISO 27001 sabem, ou pelo menos deveriam saber, que não adianta nada investir verdadeiras fortunas em equipamentos e softwares de segurança e não conscientizar seus colaboradores quanto aos riscos do uso irresponsável dos recursos computacionais e boas práticas de segurança.

De que adianta um bom sistema de gestão de senhas se o diretor da empresa é o primeiro a compartilhar sua senha com a secretária? E o que dizer então daquele firewall caríssimo adquirido recentemente enquanto há usuários que instalam placas Fax Modem (prática em extinção, eu reconheço) ou redes wireless "privadas"?

Sim, é uma batalha diária onde, de um lado, temos os administradores "chatos" de segurança que tentam alertar quanto aos riscos de tais práticas e, de outro, os usuários sedentos por descobrir uma nova maneira de "evitar" os sistemas de segurança (Firewalls, IPS, Filtros de Conteúdo, etc) para poder utilizar o MSN, o Emule, o rádio via web, Webmail, e tantas outras "facilidades" da vida moderna 2.0.

Um bom programa de conscientização de usuários deveria cobrir, pelo menos, os seguintes aspectos:
  • Apresentações dinâmicas, quase teatrais (cuidado com o famigerado powerpoint!);
  • Inclusão de temas relacionados ao dia-a-dia das pessoas. Definitivamente, usuários comuns que encaram o computador muitas vezes como um "mal necessário", não se interessam por estatísticas de invasões de sites, ou sobre quais são os principais tipos de ataques. Deve-se fornecer aos usuários informações que estejam mais próximas ao seu dia-a-dia, como exemplos extraídos do Orkut, do Facebook, Twitter, etc, que contenham dados interessantes como detalhes de família, fotos, números de telefones, entre outros. Estas informações servem como alerta e costumam deixar as pessoas preocupadas. É muito interessante ver a reação das pessoas quando estas olham para a tela e visualizam dados extraídos do Orkut, etc. Novamente, o fato de se relacionar à realidade das pessoas, facilita a conscientização;
  • Sempre que possível, inclua trechos de filmes, gravações do Youtube, gravações de conversas (autorizadas e devidamente sanitizadas) onde ataques de engenharia social são exemplificados;
  • Incluir também exemplos de e-mails de phishing e, se possível, dados coletados através de trojans (os famosos screenshots contendo a mãozinha sobre o teclado virtual dos Internet Bankings e as conversas do MSN - há casos de Don Juans com mais de 3 namoradinhas simultâneas sendo "enganadas" no MSN!);
  • É interessante  também criar canais de divulgação do assunto Segurança da Informação. Pode-se criar um jornal temático que pode incluir notícias, informações sobre o que a área de SI tem realizado para aumentar a segurança da organização, dicas de segurança, entre outros assuntos. A periodicidade deste jornal pode ser mensal;
  • Não se deve esquecer também de medir a efetividade destes programas, através da realização de pesquisas internas, que incluam a possibilidade de obter feedback dos participantes. Até mesmo a realização de testes de engenharia social, onde pessoas "estranhas" à organização poderiam testar a segurança física ou a resistência dos usuários a ataques telefônicos (o que? o diretor Fulaninho da Silva está com um problema de acesso e precisa trocar a senha imediatamente? Você sabe com quem está falando?);
É claro que as dicas acima não esgotam o assunto mas são um bom começo para quem deseja implantar um programa de conscientização de usuários.

Links Interessantes

Há muitos sites e blogs com conteúdo interessante para quem trabalha na área de Segurança da Informação. A lista abaixo é apenas uma pequena fração mas já permite obter conhecimentos valiosos para o dia-a-dia daqueles que trabalham nesta área.

Have fun!

Brazucas:

Nelson Brito - FLDPI/FNSTENV/POP/ADD
Wagner Elias - Think Security First
Negócio de Risco
Hack Proofing - Pensando fora da caixa
Anderson Ramos
Augusto Paes de Barros
Infoaux
Felipe Prado - Segurança e Tecnologia BR
Eduardo Neves
Anchiseslândia

Gringos:

IBM ISS
TaoSecurity
Anton Chuvakin
Security Sauce
Security Monkey
Windows Incident Response
ADD/XOR/ROL
Cipherdyne
Dancho Danchev
Internet Cases
Invisible Things
Network Security blog
When {Puffy} meets ^REDDEVIL^
Honeypots
Clearnet Security
Errata Security
LogBlog
Jeremiah Grossman
Zen 2.0
Schneier on Security
SynFul Packet
Digital Bond
root labs rdist
Gene Spafford
ID Theft Secrets
An Information Security Place - Podcasts
Andy ITGuy
Amrit Williams
IT Security: The view from here
Layer 8
Risk Analys.is
Jon's Network
Spire Security Viewpoint
Veracode
nCircle
The Security Shoggoth
Offensive Computing

Saturday, August 22, 2009

Livro Recomendado: The TAO of Network Security Monitoring

Há livros que realmente fazem a diferença e nos permitem aumentar ou mesmo aperfeiçoar nosso conhecimento. Este certamente é o caso do livro "The TAO of Network Security Monitoring", do brilhante Richard Bejtlich.
Esta obra aborda questões importantes e práticas para detecção de intrusos, através do uso de ferramentas open source como tcpdump, snort, tcpreplay, tcpflow, argus, entre outros, e principalmente o sguil, desenvolvido em linguagem tcl que proporciona uma interface intuitiva para realização de queries e análise de tentativa de intrusão.

O bacana deste livro é que são apresentadas técnicas de análise de pacotes capturados via sniffers ou Network IDS (snort e bro), de forma bastante intuitiva e detalhada. São apresentados os comandos, parâmetros específicos e resultados esperados e há um ótimo encadeamento dos assuntos ao longo do livro.

É dividido em 5 partes:

Parte 1 - Introdução ao monitoramento de segurança de rede, composta por 3 capítulos que abordam as definições do que é um Monitoramento de Segurança de Rede (NSM) e questões de implementação deste tipo de solução (arquitetura, equipamentos, formas de obtenção dos dados, etc).

Parte 2 - Produtos a serem utilizados em um NSM, composta por 7 capítulos dedicados a mostrar as ferramentas e seu modo de utilização. São abordadas técnicas para obtenção de dados completos (Full Content Data), dados de sessão (Session Data), dados estatísticos (Statistical Data), além do uso de ferramentas para visualização dos eventos.

Parte 3 - Processos de monitoramento de segurança de rede, composta por 2 capítulos relacionados a melhores práticas para a análise de dados de intrusão e alguns estudos de caso.

Parte 4 - Dedicada ao aperfeiçoamento de pessoas (isto mesmo, não existe solução perfeita de detecção/prevenção de intrusos, ao contrário do que muita gente pensa quando adquire este tipo de solução). É composta por 4 capítulos.

Parte 5 - Demonstra técnicas utilizadas por invasores para evitar/iludir os sistemas de detecção de intrusos. É composta por 2 capítulos.

Resumindo, este livro é altamente recomendado tanto para aqueles profissionais que estejam iniciando na área de análise de eventos de segurança quanto para profissionais experientes que precisem aperfeiçoar alguns conhecimentos específicos de análise de dados.

Já pode ser considerado um livro relativamente antigo (foi lançado em 2004 e não teve novas edições), mas ainda assim é uma fonte valiosa de conhecimento e seus conceitos e técnicas ainda hoje podem ser utilizadas sem medo. Até onde eu sei, não existe uma versão traduzida para nossa língua, mas isso não chega a ser um problema para quem trabalha na área, certo??

Para maiores detalhes e informações sobre este e outros livros do autor, visite este link: http://www.taosecurity.com/books.html.

Friday, August 21, 2009

Primeiro post!

Olá! Bem vindo ao Cyber Neurons! O objetivo deste blog é discutir temas relacionados a TI e, principalmente, Segurança da Informação. Vários temas relacionados a Segurança da Informação serão abordados como, por exemplo: Técnicas de tuning de IDS/IPS, dicas de análise de regras de firewall, Engenharia Social, Conscientização de usuários, Análise de Vulnerabilidades e Teste de Invasão, além de assuntos diversos como robótica, movimento cyberpunk, questões filosóficas (aplicadas ao dia-a-dia da área), entre outros.

Abraços e seja muito bem vindo!