WORKSHOP DE SEGURANÇA ANDREIA VEIGA [email protected] RUMOS 2007 PROGRAMA • Enquadramento da segurança em TI • Política de segurança • Estratégias de defesa • Hands-on – instalar e testar um IDS freeware Enquadramento da segurança em TI Andreia Veiga Rumos 2007 Vulnerabilidades na rede? • Penetration Testing Exemplo: um white hat hacker é contratado para entrar numa rede. O objectivo do cliente é perceber o grau de vulnerabilidade da sua infra-estrutura. A única informação é o nome do domínio da companhia: exemplo.com Penetration Testing • Testa vulnerabilidades de máquinas/redes • Análise a partir da posição do potencial atacante • Os resultados podem incluir uma análise do impacto das vulnerabilidades descobertas e uma proposta para mitigação/solução • Objectivo: determinar a possibilidade de um ataque e qual o seu impacto se bem sucedido Penetration Testing • Definir até onde se pretende o teste, black/white/gray box, se é aceitável usarem-se métodos como a engenharia social, instalação de trojans ou session hijacking... • Inventar a roda? Open-Source Security Testing Methodology Manual (OSSTMM) http://www.isecom.org/osstmm/ OSSTMM • A metodologia foca detalhes técnicos, sobre o que testar, o que fazer antes, durante e depois de um teste e como medir resultados • Segurança de informação, processos, tecnologias relacionadas com Internet, comunicações, wireless e segurança física Cada área está dividida em módulos específicos Outras metodologias • Information Systems Security Assessment Framework (ISSAF) by the Open Information Systems Security Group • NIST - Special Publication 800-42, Guideline on Network Security Testing • Aplicações web: Open Web Application Security Projecty (OWASP) Case study 1 Uma empresa pretende determinar o grau de vulnerabilidade da rede perante um ataque interno. • Reconhecimento e enumeração: nmap -sT -T paranoid -v -p T:1-1023 -P0 O 192.168.1.1-254 • O output gerado mostra que o ip 192.168.1.10 é um domain controller 2003 com netbios a correr e que existem máquinas NT – autenticação LANMAN? Case study 1 A seguir usamos a ferramenta Brutus: • Target name: administrator • Target: \\192.168.1.10\IPC$ • Password mode: first dictionary and then brute force Case study 1 Case study 1 • Dependendo da complexidade da password, pode demorar mais tempo Neste caso era password123 • Ligação à máquina: C:/>Net use \\192.168.1.10\ipc$ password123 /u:administrator The command completed successfully. Todas as ligações à máquina a partir de agora são feitas com este user Case study 1 • Gravar os usernames e hashed passwords da SAM para um ficheiro: C:\>pwdump3 192.168.1.10 passwords.txt • Apagar pistas no Event Log Case study 1 Case study 1 • Carregar o ficheiro passwords.txt numa ferramenta como o L0phtcrack ou John the Ripper para obter as passwords a partir dos hashes • Se as passwords forem complexas vale a pena usar o RainbowCrack Case study 1 • Desactivar NetBIOS • Limitar o acesso remoto aos servidores • Utilizar passwords complexas • Renomear a conta de administrador • IDS em todos os segmentos de rede Case study 2 Um cybercafe que oferece acesso à Internet aos seus clientes mediante um pagamento com cartão de crédito pretende saber até que ponto os seus clientes estão seguros quando escolhem aceder através da sua infraestrutura Case study 2 • Instalamos o utilitário SoftAP da PCTEL que permite que o portátil funcione como um AP Case Study 2 • A seguir instalamos o utilitário Airsnarf e alteramos a página index.html que vem por defeito de forma a que fique semelhante à página de login à Internet do cybercafe (podemos usar o utilitário Wget para copiar o site original) • Instalamos a ferramenta TreeWalk para que o portátil funcione como DNS Server para converter os nomes de sites em endereços IP Case Study 2 • Pedimos um café... e aguardamos. É uma questão de sorte (ou azar) o portátil ser o “AP” escolhido por um novo cliente. Assim que conseguimos uma associação recebemos os dados do cartão de crédito. Poderíamos levar o teste mais longe se optássemos por disponibilizar de facto uma ligação à Internet... Case Study 2 • Detectar APs falsos: Airmagnet http://www.airmagnet.com/ Netstumbler http://stumbler.net Desafio da segurança em TI Evolução das ferramentas Quem? Porquê? Como? Anatomia de um ataque • • • • • Reconhecimento Enumeração Ganhar acesso Manutenção do acesso Apagar pistas Reconhecimento e enumeração Reconhecimento e enumeração Ganhar acesso • • • • • • • Session hijacking Ataques a servidores web Ataques a bases de dados Buffer overflows Password cracking Trojans e backdoors Comprometer redes wireless Manutenção de acesso • Backdoors • Rootkits • Contas de utilizador não vigiadas Apagar pistas • Apagar entradas em ficheiros de log • Instalar rootkits • Utilizar proxies Segurança • A infra-estrutura de TI existe para dar suporte ao negócio e não o contrário • A segurança deve ser incorporada de raiz em todos os processos (relacionados ou não com TI) • Quando os processos já estão implementados a segurança deve ser incorporada sem comprometer a eficiência do processo Segurança • Se o processo não consegue ser executado com segurança então a Direcção deverá avaliar o risco associado • A segurança tem de ser transversal e independente em relação aos restantes departamentos • A implementação da segurança tem de ser apoiada pela Direcção Segurança - Objectivos Garantir: • Disponibilidade • Confidencialidade • Integridade • Autenticação • Não-repudiação AAA – Authentication, Authorization, Accountability Segurança Perceber: • quais os riscos • o que é que vale a pena proteger • quanto é que vale a pena investir Resposta: • Análise de risco e gestão do risco Efectuar auditorias de segurança para assegurar conformidade Lei Portuguesa • Lei nº 109/91 - Sobre a criminalidade informática http://www.inst-informatica.pt/ • Protege a integridade e confidencialidade dos sistemas e informação • As tentativas de subversão da lei são puníveis Lei Portuguesa • Outros decretos posteriores: Decreto-Lei n.º 153/2007. DR nº 82 SÉRIE I de 200704-27 Aprova a orgânica da UMIC - Agência para a Sociedade do Conhecimento, I. P Lei n.º 5/2004. DR nº 34 SÉRIE I-A de 2004-02-10 Lei das Comunicações Electrónicas Lei n.º 69/1998. DR nº 249 SÉRIE I-A de 1998-10-28 Regula o tratamento dos dados pessoais e a protecção da privacidade no sector das telecomunicações Necessidade de uma política de segurança Andreia Veiga Rumos 2007 Política de segurança • Não é um documento técnico • Define as actividades permitidas ou proibidas e as responsabilidades no acesso aos recursos de TI • Tipicamente está dividida em vários documentos (Ex: Uso aceitável dos recursos de TI, Configuração de máquinas, Gestão de patches...) • Site Security Handbook (RFC 2196) Política de segurança • Tem de ser apoiada pela direcção • Transversal e independente • Tem de apoiar os processos e não moldá-los. Tem de servir para melhorar e tornar mais eficiente o negócio e não condicioná-lo • Tem de ser consistente • Deve reflectir a filosofia de segurança da empresa (ex: Coca-Cola, McDonald’s) Vantagens • Mais garantia na segurança dos dados • Melhor capacidade de prevenção de DoS • Melhor prevenção da manipulação indevida de dados • Aumento de eficiência • Redução ou enquadramento de problemas “desconhecidos” Objectivos • Guiar a equipa técnica na escolha de equipamentos • Guiar a equipa técnica nas configurações • Definir as responsabilidades dos utilizadores, gestores e administradores • Definir consequências para a violação da política de segurança • Definir respostas a ameaças e quais as hierarquias envolvidas Ciclo de segurança Exemplo Política de segurança com 5 documentos: • • • • • Uso aceitável Acesso remoto Utilização da Internet Passwords Email Política de uso aceitável • Os recursos de TI da empresa só podem ser utilizados para trabalho desenvolvido no contexto da actividade da empresa • Não se podem instalar programas sem autorização prévia do departamento de TI • Não se podem ligar à rede computadores não aprovados pelo departamento de TI • Todos os ficheiros/programas criados são propriedade da empresa pelo que o seu acesso e manipulação são monitorizados • ... Política de acesso remoto • Apenas são permitidos acessos VPN encriptados • Os clientes VPN têm de possuir firewall pessoal, patches e antivirus actualizados • Os clientes VPN não podem ter split tunneling • Só é possível o acesso VPN nos dias úteis das 9h às 19h • ... Política de utilização da Internet • A Internet é um recurso que só pode ser usado no contexto de trabalho • Não é permitido o acesso a páginas com conteúdo inapropriado (pornografia, jogos online, sites de downloads, chats online, etc) ou ilegal. • Os acessos à Internet são registados e guardados e em caso de necessidade poderão ser investigados • ... Política de passwords • As passwords têm de ter pelo menos 8 caracteres • Têm de conter caracteres especiais • São pessoais e intransmissíveis, pelo que não podem ser partilhadas com ninguém, incluindo os técnicos de TI • Não podem ser escritas em papel • Têm de ser mudadas de 90 em 90 dias • ... Política relativa ao email • O correio electrónico da empresa não pode ser usado para correspondência pessoal • Não se podem encaminhar “chain letters” • Não se podem enviar conteúdos inapropriados ou ofensivos • Não se pode enviar informação confidencial, sensível e /ou importante da empresa por correio electrónico • ... Política de segurança • http://www.computer-securitypolicies.com/ • http://www.sans.org/resources/poli cies/#name • http://www.securitydocs.com/Secur ity_Policies • http://www.ruskwig.com/security_p olicies.htm IT Best Practices • ITIL – publicado pelo governo do UK • COBIT – publicado pelo IT Governance Institute • ISO/IEC 17799 (antes BS 7799) publicado pela ISO (International Organisation for Standardisation) e IEC (International Electrotechnical Commission) Comparação: http://isaca.org O crescimento económico deste século dependerá muito da tecnologia. As “best practices” permitem alinhar a infra-estrutura de TI com os requisitos de negócio, tornando-o mais competitivo e eficiente IT Best Practices OGC (Office of Government Commerce) Successful Delivery Toolkit é um repositório de best practices e políticas gratuito que pode ser adaptado: http://www.ogc.gov.uk/resource_tool kit.asp Estratégias de defesa Andreia Veiga Rumos 2007 Estratégias de defesa • Defesa em profundidade • Topologia da rede • Formação e consciencialização Defesa em profundidade Analogia do castelo Tecnologias de defesa Acesso a um ficheiro Routers • Filtragem de pacotes – Ex: RFC 1918 (endereços, protocolos, portos) • Passwords complexas preferencialmente com autenticação centralizada • Tráfego de gestão da rede (syslogs, acessos aos equipamentos, traps SNMP) deve ser cifrado ou separado do tráfego normal Firewall • • • • Stateless, statefull e aplicacional Appliance ou software Pessoal ou de rede Diferentes arquitecturas: bastion host, three-legged, back-to-back Firewall Architectures IDS • NIDS – Network Intrusion Detection System • HIDS – Host Intrusion Detection System (Ex: Tripwire) • Intrusion Prevention System IDS • Reconhecimento de padrões de ataque • Reconhecimento de comportamentos “anormais” • Dificuldade em definir o que é o funcionamento “normal” da rede IDS NEGATIVE POSITIVE TRUE True-Positive An Alarm WAS generated and a present condition should be alarmed. True-Negative An Alarm WAS NOT generated and there is no present condition which should be alarmed. FALSE False-Positive An Alarm WAS generated and there is no present condition which should be alarmed. False-Negative An Alarm WAS NOT generated and a present condition should be alarmed. Máquinas (Servidores e PCs) • • • • Patches em dia Antivirus Anti-spyware Controlo de novas máquinas na rede incluindo em redes wireless • Garantia de conformidade em acessos remotos – redes de quarentena • Desactivar contas de utilizador não usadas ou sem password Aplicação • Seguir boas prácticas de programação (evitar buffer overflows, sql injection, validar inputs e chamadas ao sistema) • Controlo de acessos • Cuidado na manutenção da integridade da informação E ainda... • Garantir segurança nos acessos físicos • Comunicação cifrada • Formação e consciencialização para evitar engenharia social • Política de segurança • Implementação de best practices Sites • • • • • • • • • http://infosec.online.pt/ http://insecure.org/ http://blogs.msdn.com/hackers/ http://www.sans.org/ http://www.windowsecurity.com/whi tepapers/ http://www.phrack.org/ http://cve.mitre.org/ http://csrc.nist.gov/ http://www.zone-h.com/ Hands-On Andreia Veiga Rumos 2007 Hands-on Instalação e teste de um NIDS freeware • LAMP (Linux, Apache, MySQL e PHP) http://lamphowto.com/ • Fedora core • libpcap • Snort • ADOdb • BASE – Basic Analisys and Security Engine • Nmap (para testar) Módulos necessários libpcap, mysql, mysql-server, snort, snort-mysql, php, php-mysql, php-gd, php-pdo, php-pear, php-pear-Image*, php-pear-Number* (nmap apenas para testar) Iniciar serviços • Linha de comando service httpd start service mysqld start Configurações de rede System->Administration->Network->Edit Testar web server Testar php • Copiar ficheiro info.php para /var/www/html Conteúdo <?php phpinfo(); ?> • http://localhost/info.php Testar php Configurar MySQL • Executar comandos do ficheiro mysql_comandos NOTA: estão separados por partes! Snort http://www.snort.org/ Ficheiro de configuração: snort.conf HOME_NET, EXTERNAL_NET, RULE_PATH, output database (tem de estar conforme a BD mysql criada anteriormente) Copiar snort.conf para /etc/snort Copiar pasta rules para /etc/snort Comandos • Executar o comando do ficheiro teste.snort • Executar os comandos do ficheiro comandos_adodb_base • copiar o ficheiro base_conf.php para /var/www/html/base NOTA: este ficheiro tem de estar de acordo com a BD mysql criada Configurar BASE • abrir o browser http://localhost/base/base_main.html (se der erro, fazer restart aos serviços) • Configuração inicial Gerar eventos • C:\>nmap -sS -v 192.168.1.1-2 • C:\>nmap -sX -v 192.168.1.1-2 • http://ip_address/../../bin/sh