Suas aplicações são seguras?

Conheça a Conviso!

Segurança além da aplicação – Baselines, Hardening e o novo Projeto SANS SCORE

Introdução

Atualmente, os ataques cibernéticos vem crescendo exponencialmente em todo mundo. O Brasil não fica fora dessa estatística, de fato ele é um dos países mais afetados. A Akamai[1], uma empresa especializada em computação em nuvem e content delivery, disponibiliza um aplicativo em seu site onde é possível acompanhar os ataques em tempo real, como pode ser visto na Figura 1 abaixo.


Figura 1 – Ataques cibernéticos acontecem em tempo real. – Imagem feita às 15:16 do dia 20/08/2013


Um exemplo bem comum dos ataques realizados é o Local File Inclusion (LFI). Este ataque possibilita acesso aos arquivos locais no servidor, como por exemplo arquivos sensíveis, arquivos de configuração e arquivos de logs. Em alguns casos esse ataque permite a execução remota de código malicioso. Na Figura 2, é possível ver um exemplo de como este ataque é executado visando acesso não autorizado a um arquivo de log.

Figura 2 – Exemplo de LFI acessando o arquivo /var/log/auth.log do sistema – Fonte: http://lanmaster53.com/images/posts/lfi_rce_orig_auth.png


No exemplo citado, além da falha na aplicação, existe um problema de permissão, pois o servidor web não deveria ter acesso aos arquivos de log, ou seja, além de corrigir a falha é necessário ajustar as permissões do usuário do servidor web para que assim seja possível diminuir a possibilidade de ataque. Isto é o chamado Princípio do Menor Privilégio (ou Least Privilege Principle, em inglês), que diz que cada aplicação, usuário, plugin ou módulo, deve acessar apenas as informações necessárias para o seu funcionamento legítimo.

Como podemos diminuir essa superfície de ataque e aumentar a segurança?

Nosso dia a dia é cercado de regras, e para isso existem leis e pessoas encarregadas de assegurar que tais regras seja seguidas e que existam punições caso contrário. Assim como as leis, os baselines são os requisitos mínimos de configurações e boas práticas que o sistema deve possuir antes de entrar em produção.

Sabemos que para uma Lei funcionar, é necessário que tenha alguém monitorando e garantindo sua aplicação. O hardening é o responsável por isso, monitorando se os baselines estão sendo seguidos ou gerando alertas caso contrário.

No exemplo de LFI apresentado no começo, se o servidor seguisse algum Baseline e fosse aplicado o hardening, a possibilidade de sucesso em um ataque seria reduzida, pois provavelmente o acesso aos arquivos de logs não estaria disponível (a não ser por alguma necessidade especifica), fazendo com quem uma falta de validação dos parâmetros de entrada da aplicação não fosse o único fator determinante para o sucesso na exploração da vulnerabilidade.

Existem diversos Guias com sugestões de configurações de baselines, dentre os quais podemos citar:

Nesse post comentaremos sobre o CIS Bench e a iniciativa do SANS, chamada de SCORE.

O que é o tal do CIS Bench?

Center for Internet Security (CIS)[2] é uma organização sem fins lucrativos que ajuda as empresas a melhorar sua postura de segurança em relação a proteção de suas aplicações na web, o SCORE(Security Consensus Operational Readiness Evaluation)[3] é mais um dos vários recursos de melhoria de segurança que o CIS oferece como ajuda às empresas e governos. Como falado anteriormente, o CIS possui vários outros recursos que podem ser encontrados nesse link: Resources Publications.

Figura 3 – Checklist do CIS – Fonte:
http://benchmarks.cisecurity.org/images/screenshot_CIS-CAT_checklist.png
 

E qual a finalidade do SCORE?

 

O SCORE foi elaborado a partir do consenso de diversos profissionais gabaritados do mercado de segurança com o intuito de definir melhores padrões mínimos e gerar informações sobre melhores práticas de segurança. Ele também debate sobre técnicas já existentes, assim melhorando as mesmas e servindo como mecanismo de melhoria do CIS Bench.

O objetivo geral é demonstrar a importância do hardening tanto para empresas quanto para governos, criando e promovendo listas de discussões, debatendo e melhorando o processo todo, de forma contínua.

Alguns papers do SCORE já foram publicados como exemplo de “Descobrindo intrusos ” tanto para Windows[4] e Linux[5]. O projeto também disponibiliza um guia de estudos e uma serie de livros [6].

 

Conclusão

Problemas e falhas existem em qualquer aplicação. Como profissionais de segurança da informação é nosso dever diminuir essa exposição reduzindo a superfície do ataque e corrigindo falhas, com o objetivo de dificultar uma possível invasão. O trabalho de segurança em uma Aplicação Web ou qualquer outro software está relacionado à segurança da infraestrutura que o suporta, não limitando-se somente à blindagem da aplicação.

Na Conviso possuímos o Armature. Essa extensão do Conviso Security Compliance[7] possibilita a empresa a utilização de Baselines e Aplicação / Monitoramento do hardening. A solução é totalmente flexível, sendo que a empresa poderá utilizar Baselines desenvolvidos pelo Conviso Intelligence ou a criação seus próprios, que serão convertidos em regras para o monitoramento dos agentes em tempo real. Com essa extensão é adicionado mais contexto as falhas, possibilitando priorizar melhor as ações da Gestão de Vulnerabilidades, pois a empresa não só terá a criticidade da falha da aplicação, mas também da infraestrutura que suporta a mesma, correlacionando e gerando métricas com a real criticidade.


Peça uma demonstração https://www.conviso.com.br/contato.php caso tenha interesse.

[1] – http://www.akamai.com

[2]http://www.cisecurity.org
[3]http://www.sans.org/score
[4]http://www.sans.org/score/checklists/ID_Windows.pdf
[5]http://www.sans.org/score/checklists/ID_Linux.pdf
[6]http://www.sans.org/score/studyguides.php
[7] – https://www.conviso.com.br/produtos.php

Originalmente postado no Blog da Conviso Application Security – Siga-nos no Twitter @conviso Google+

Tags

Deixe um comentário

topo
%d blogueiros gostam disto: