Introdução à Segurança da Informação

65
Segurança da Informação Uma breve introdução com uma abordagem técnica Vinícius Henrique Marangoni

Transcript of Introdução à Segurança da Informação

Segurança da InformaçãoUma breve introdução com uma abordagem técnica

Vinícius Henrique Marangoni

Segurança da Informação“A segurança da informação está diretamente relacionada com proteção de um conjunto de informações, no sentido de preservar o valor que possuem para um indivíduo ou uma organização.”

Terminologias“Hacker é do mal, bla bla bla…”“Hacker é do bem, o cracker que é do mal, bla bla bla...”

Quem é do bem e quem é do mal?

● Engenheiro Químico● Chaveiro● Cozinheiro

Resposta: Com as informações dadas não é possível saber

Terminologias● Newbie (noob)● Lammer● Script Kiddie

Vulnerabilidades em Aplicações Web● Remote Code Execution● SQL Injection● Cross-Site Scripting (XSS)● Cross-Site Request Forgery (CSRF)● Authentication Bypass● File Inclusion (RFI e LFI)

Pré-requisitos: conhecimentos em programação web, manipulação de sistemas no modo console, SQL

Mas antes...● De maneira simples, o que é um Servidor?● IP Público? IP Privado? Quê?

Endereços IP Públicos e Privados

Remote Code ExecutionPermite a execução remota de códigos.

Exemplo: Uma funcionalidade que permite a execução do comando “ping” mas não trata corretamente a entrada do usuário.

<?php $ip = $_GET["ip"]; echo system("ping $ip");?>

Entrada maliciosa: “| dir”

SQL InjectionPermite a injeção de instruções SQL

Exemplo: Uma funcionalidade que busca dados de um usuário;

<?php $user = $_GET['usuario']; $sql = "SELECT * FROM usuarios WHERE usuario = '$user'";

$res = mysql_query($sql); print_r($res);?>

Entrada maliciosa: ‘ or ‘1’=’

SQL Injection - DVWA

Permite o carregamento de scripts maliciosos em uma página. Pode ser do tipo Reflected ou Stored. Se for Reflected, o script malicioso deve ser passado na URL. Do tipo Stored é “postado” na página, e afeta todos os outros usuários que a acessarem.

Cross-Site Scripting (XSS)

XSS Reflected - DVWA

Entrada Maliciosa: <script>alert(‘Teste’);</script>

XSS Stored - DVWA

Permite que funcionalidades do sistema sejam acessadas a partir de um outro site com script malicioso.

Exemplo: Imagine um sistema em que caso o endereço http://www.example.com/admin/deletar_conta seja acessado, a conta seja deletada. Um site malicioso poderia, por exemplo

Cross-Site Request Forgery (CSRF)

Cross-Site Request Forgery (CSRF) - DVWA

Cross-Site Request Forgery (CSRF) - DVWAEntrada Maliciosa:

Basta que algum site qualquer tenha uma tag HTML como a mostrada a seguir.

<img src='http://localhost/DVWA/DVWA-1.9/vulnerabilities/csrf/?password_new=444&password_conf=444&Change=Change'></img>

Authentication BypassOcorre quando um atacante não autenticado consegue obter acesso a alguma funcionalidade que só deveria ser acessível para usuários autenticados.

● Validação feita de maneira incorreta● Através de outra vulnerabilidade

○ SQL Injection○ XSS○ CSRF

Authentication Bypass - SQL Injection<?php $usuario = $_POST['usuario']; $senha = $_POST['senha']; $dados_usuario = getUsuario($usuario, $senha); //Método vulnerável

if($dados_usuario != NULL){ echo 'Bem vindo ' . $dados_usuario->nome; }?>

Entrada maliciosa: admin’--

File InclusionPermite carregar um arquivo não planejado pelo desenvolvedor. Por exemplo, ao invés de carregar lib.php, poderia carregar um arquivo como /etc/passwd

Wireless SecurityPergunta: Você se sente seguro quando está conectado no WiFi da sua própria casa?

Pergunta: Como você tem certeza que um vizinho não está conectado?Resposta: “Ah, mas só eu tenho a senha do WiFi“

Pergunta: Alguém mal intencionado poderia descobrir a senha do seu WiFi?Resposta: “Minha senha tem 13 caracteres, com letras maiúsculas, minúsculas e caracteres especiais”

Wireless Security Protocols● Wired Equivalent Privacy (WEP): tentativa de dar segurança durante o

processo de autenticação, proteção e confiabilidade na comunicação entre os dispositivos Wireless.

● Wi-Fi Protected Access (WPA): objetivo de aumentar o nível de segurança das redes sem fio, combatendo algumas das vulnerabilidades do WEP. Utiliza o TKIP (Temporal Key Integrity Protocol), que é um protocolo com algoritmo de criptografia baseado em chaves que se alteram a cada novo envio de pacote.

● Wi-Fi Protected Access II (WPA2): utiliza o algoritmo de criptografia de chave simétrica AES, adotada como padrão de criptografia pelo governo dos Estados Unidos

WEP CrackingProcesso de exploração de uma vulnerabilidade no protocolo WEP a fim de descobrir a senha utilizada durante a autenticação.

Como fazer: suite de ferramentas aircrack-ng

https://www.aircrack-ng.org/doku.php?id=getting_started

WEP Cracking - Demo

Obs: Faça primeiro com o aircrack-ng, somente depois teste ferramentas 100% automatizadas.

WPANão possui vulnerabilidades críticas conhecidas como no caso do protocolo WEP.

Pode-se:● Explorar WPS, quando ativo● Ataque de força bruta (pouco efetivo)

○ Amazon Clustering

● Deauth + FakeAP + Engenharia Social = Sucesso

Network Scanning“Network scanning is a procedure for identifying active hosts on a network, either for the purpose of attacking them or for network security assessment.”

Pré Requisitos: TCP/IP

Network Scanning● Enumeração de hosts ativos● Descobrimento de portas abertas/fechadas/filtradas● Descrição dos serviços executados em cada porta● Nmap Scripting Engine

Network Scanning - Exemplo

Network Scanning - Exemplo

SniffingBuscar informações através do tráfego de rede

● WiFi● Internet Cabeada

Sniffing - Man In The MiddleAltera informações contidas na Tabela ARP do switch, a fim de enganar tanto Gateway quanto o Cliente.

Sniffing - Man In The MiddleAltera informações contidas na Tabela ARP do switch, a fim de enganar tanto Gateway quanto o Cliente.

Nome do ataque: ARP Spoofing ou ARP Poisoning

Sniffing - Man In The MiddleARP Poisoning

Sniffing - Board In The Middle

https://hakshop.com/collections/accessory/products/throwing-star-lan-tap

Sniffing● Sequestro de dados devido ao sniffing

● Sites com conteúdo malicioso devido à injeção de código

● Sites fake devido ao DNS Spoofing

Sniffing● Não confie em redes públicas

● Assegure-se que durante qualquer tipo de transmissão crítica de dados (senhas, dados pessoais, cartão de crédito, etc), você esteja sobre uma conexão segura (HTTPS, por exemplo)

Denial of ServiceAtaques de negação de serviço. Causa indisponibilidade de um serviço.

Denial of ServiceAtaques de negação de serviço. Causa indisponibilidade de um serviço.

Denial of Service - Mirai Botnet● Maior ataque DDoS da história● 1,1 Tbps● Dispositivos de IoT

Denial of Service - Outros tipos● Smurf Attack

○ https://pythoneiro.blogspot.com.br/2015/10/ddos-como-funciona-o-smurf-attack.html

● Ataques locais como o Fork Bomb○ :(){:|:&};:

Scanners de VulnerabilidadesFerramentas automatizadas de busca de vulnerabilidades.

● Nessus● Nexpose● Nikto● OpenVAS● Arachni● Skipfish

Scanners de Vulnerabilidades - Nessus

Lock PickingA arte de abrir cadeados

Lock Picking - Por dentro do cadeado

Lock Picking - Ainda tem dúvidas?Curso: https://www.youtube.com/watch?v=VVSL0liiWoc&list=PL3FCA3B6B90502660

DIY Tools: https://www.youtube.com/watch?v=Q_xcZpmBqx8

DIY Tools 2: https://www.youtube.com/watch?v=jNAhnFAO7Tc

Engenharia Social

Engenharia Social - Phishing“Fotos da última festa…”

“Fatura…”

“Seu nome está no SERASA…”

“Sua conta será cancelada…”

“Você acaba de ganhar um carro zero…”

Engenharia Social - Phishing

Engenharia Social - Phishing

Engenharia Social - PhishingComo educar funcionários contra o phishing?

Phishing Educativo: https://www.elpescador.com.br/sobre-elpescador.html

Hardware para Hacking

Hardware para Hacking● Raspberry Pi (https://www.raspberrypi.org/)

● Orange Pi (http://www.orangepi.org/)

● Omega2 (https://www.kickstarter.com/projects/onion/omega2-5-iot-computer-with-wi-fi-powered-by-linux)

● C.H.I.P (https://getchip.com/pages/chip)

● ESP8266 (http://www.filipeflop.com/pd-1f55ad-modulo-wifi-esp8266-esp-01.html)

● Arduino (https://www.arduino.cc/)

Hardware para Hacking● WiFi Pineapple (https://hakshop.com/products/wifi-pineapple)● USB Rubber Ducky (https://hakshop.com/products/usb-rubber-ducky-deluxe)

○ https://pythoneiro.blogspot.com.br/2015/04/transformando-seu-arduino-uno-em-um-usb.html

● LAN Turtle (https://hakshop.com/products/lan-turtle)● SDR (https://hakshop.com/collections/wireless-gear/products/hackrf)● Network Tap

(https://hakshop.com/collections/accessory/products/throwing-star-lan-tap)○ https://pythoneiro.blogspot.com.br/2015/05/criando-um-network-tap-grampo-de-rede.html

● Keylogger Físico (https://www.keelog.com/pt/)

Como aprender gratuitamente?Inglês:● https://www.cybrary.it/● http://www.securitytube.net/ (Megaprimers)● http://opensecuritytraining.info/● https://pt.coursera.org/● https://github.com/enaqx/awesome-pentest● Magazines (Ex: http://www.phrack.org)

Português:● https://www.h2hc.com.br/revista/● http://securitycast.com.br/● http://xtremesec.com.br/● Blogs (https://pythoneiro.blogspot.com)● Eventos de segurança gratuitos, hackerspaces e comunidade em geral

(Security BSides, Garoa Hacker Clube, Fóruns, etc)

Como aprender pagando?Inglês:● http://www.pentesteracademy.com/● http://www.securitytube-training.com/● Eventos de segurança internacionais (Black Hat, DEFCON)● Livros

Português:● http://www.clavis.com.br/● https://www.4linux.com.br/● http://www.mentebinaria.com.br/index.php/reversing-from-scratch/● Eventos de segurança (H2HC, Roadsec, Mind The Sec, You Shot The Sheriff)● Livros (Novatec)

Como testar meus conhecimentos?“Ahh, mas pra testar eu tenho que invadir alguém…”

● https://www.vulnhub.com/● http://overthewire.org/wargames/● https://information.rapid7.com/metasploitable-download.html● http://www.dvwa.co.uk/● http://www.100security.com.br/wargame/● Criar seus próprios laboratórios para Wireless Hacking, Sniffing e até para

testar exploits. Utilize máquinas virtuais quando for possível

E depois?

Dúvidas?

Onde me encontrar?Blog: https://pythoneiro.blogspot.com.br/Lattes: http://lattes.cnpq.br/7707349031849734Pastebin: http://pastebin.com/u/viniciusmarangoniGithub: http://github.com/viniciusmarangoniLinkedin: https://br.linkedin.com/in/vinícius-henrique-marangoni-4118a6a3

Obrigado