Curso: ESPECIALIZAÇÃO EM ADMINISTRAÇÃO E SEGURANÇA DE SISTEMAS COMPUTACIONAIS Disciplina: SEGURANÇA DE APLICAÇÕES INTERNET E COMÉRCIO ELETRÔNICO
Professor: GARDINI Copyright © 2014
O material utilizado neste curso é de autoria de Leonardo Gardini.
No caso de eventual necessidade o material somente poderá ser utilizado, mesmo que em parte, mediante prévia e explícita anuência do autor.
Segurança de Aplicações
Internet e Comércio Eletrônico
Todos os direitos reservados e protegidos pela
Lei 9.610 de 19/02/1998. É proibida a
reprodução desta obra, mesmo parcial, por
qualquer processo, sem prévia autorização, por
escrito, do autor.
Autor:
GARDINI, Leonardo
Contato:
lgardini@gmail.com
Curso: ESPECIALIZAÇÃO EM ADMINISTRAÇÃO E SEGURANÇA DE SISTEMAS COMPUTACIONAIS Disciplina: SEGURANÇA DE APLICAÇÕES INTERNET E COMÉRCIO ELETRÔNICO
Professor: GARDINI Copyright © 2014
Prof. Gardini
IT Security Leader – Solar/Coca-Cola
Professor convidado nos cursos de Pós graduação UNIFOR, FA7, FAP e FIC
Mestrando em Computação Aplicada (UECE)
MBA em Governança de TI (Estácio/FIC)
Bacharel em Sistemas de Informação (FA7)
Técnico Eletrotécnico (CEFET-PR)
CISM (Certified Information Security Manager)
ISO/IEC 27002 Foundation
CobiT 4.1 Foundation
ITIL v3 Foundation
Perito Forense Computacional em ambiente Windows
CCNA (Cisco Certified Network Associate) - Expirado
Associado ISACA (Information Systems Audit and Control Association)
Apresentação de trabalhos de pesquisa em conferências internacionais (IEEE)
ASSUNTOS QUE SERÃO ABORDADOS NESTA DISCIPLINA
Data
Conteúdo
08.03.2014
Módulo I:
• Apresentação da Disciplina: Objetivos, Metodologia, Conteúdo,
Avaliação, Cronograma;
• Conceitos Gerais de Segurança da Informação na Internet;
• Vulnerabilidades WEB e Conceito Geral de PenTest;
• Hacking Game
22.03.2014
Módulo II:
• Conceitos Gerais sobre Comércio Eletrônico;
• Regulamentações de Segurança para Comércio Eletrônico;
• Segurança no Comércio Eletrônico;
• Conceitos Gerais sobre Bitcoin;
• Protocolo seguro SSL/TLS;
• Prática (SSL/TLS, Nessus e Wireshark)
05.04.2014
Módulo III:
• Protocolo seguro IPSec; Virtual Private Network (VPN); Protocolo
seguro PGP; Padrão seguro S/MIME;
• Seminários;
Curso: ESPECIALIZAÇÃO EM ADMINISTRAÇÃO E SEGURANÇA DE SISTEMAS COMPUTACIONAIS Disciplina: SEGURANÇA DE APLICAÇÕES INTERNET E COMÉRCIO ELETRÔNICO
Professor: GARDINI Copyright © 2014
REGRAS EM SALA DE AULA
Horário das aulas:
08:00h às 11:30h
(Almoço 1½h )
13:00h às 17:00h
As chamadas para verificação das presenças serão efetuadas aleatoriamente
durante as aulas.
REGRAS DAS AVALIAÇÕES E AMBIENTE DA SALA DE AULA
Avaliação: Seminário no dia 05.04.2014
+ participação em sala
*1(um) ponto adicional para a equipe vencedora do Hacking Game
Mínimo de 75% de presença para poder ser aprovado.
Celulares desligados ou no silencioso. Em caso de
urgência, sair da sala para atender o telefone.
Curso: ESPECIALIZAÇÃO EM ADMINISTRAÇÃO E SEGURANÇA DE SISTEMAS COMPUTACIONAIS Disciplina: SEGURANÇA DE APLICAÇÕES INTERNET E COMÉRCIO ELETRÔNICO
Professor: GARDINI Copyright © 2014
PROPÓSITO DESTA DISCIPLINA
Entender a
necessidade de
Segurança nas
Aplicações
Conhecer os
protocolos
seguros no
modelo TCP/IP
Identificar
vulnerabilidades
em aplicações
WEB
Administrar
segurança em
aplicações WEB
Curso: ESPECIALIZAÇÃO EM ADMINISTRAÇÃO E SEGURANÇA DE SISTEMAS COMPUTACIONAIS Disciplina: SEGURANÇA DE APLICAÇÕES INTERNET E COMÉRCIO ELETRÔNICO
Professor: GARDINI Copyright © 2014
Conceitos Gerais de Segurança da
Informação na Internet
INTRODUÇÃO
Os 10 HACKERS mais famosos
Fonte: terra.com.br
1º. Kevin Mitnick. Um dos mais famosos hackers de todos os tempos, ele chegou a
roubar 20 mil números de cartões de crédito e assombrava o sistema telefônico dos
EUA. Foi o primeiro hacker a entrar para a lista dos 10 criminosos mais procurados
pelo FBI.
2º. Adrian Lamo. Na lista de invasões do jovem hacker americano estão os sites da
Microsoft, do Yahoo! e do jornal The New York Times.
3º. Raphael Gray. O hacker britânico Raphael Gray, 19 anos, foi condenado por
roubar 23 mil números de cartões de crédito, entre eles um de Bill Gates.
4º Jonathan James. Preso aos 16 anos, o hacker invadiu uma das agências
Departamento de Defesa americano. Lá, o jovem instalou um backdoor para roubar
senhas de empregados da agência.
5º. Jon Lech Johansen. Conhecido como DVD Jon, o hacker norueguês ganhou fama
após burlar os sistemas de proteção dos DVDs comerciais.
6º. Vladimir Levin. O criminoso russo liderou uma gangue que invadiu computadores
do Citibank e desviou US$ 10 milhões, em 1994.
7º. Onel de Guzman. Com apenas 23 anos, o filipino Onel de Guzman causou um
prejuízo de US$ 10 bilhões com seu vírus “I Love You”, que atingiu sistemas de e-mail
no mundo todo.
8º. Kevin Poulsen. Ganhou um Porsche num concurso realizado por uma rádio
americana. O 102º ouvinte que telefonasse para a emissora, levava o carro. Poulsen
invadiu a central.
9º. Robert Morris. O americano, filho do cientista chefe do Centro Nacional de
Segurança Computacional dos EUA, espalhou o primeiro worm que infectou milhões
de computadores e fez grande parte da Internet entrar em colapso, em 1988.
10º. David L. Smith. Com o vírus Melissa, o programador conseguiu derrubar
Curso: ESPECIALIZAÇÃO EM ADMINISTRAÇÃO E SEGURANÇA DE SISTEMAS COMPUTACIONAIS Disciplina: SEGURANÇA DE APLICAÇÕES INTERNET E COMÉRCIO ELETRÔNICO
Professor: GARDINI Copyright © 2014
INTRODUÇÃO
INTRODUÇÃO
Conceitos de Segurança da Informação
Dis
po
nib
ilid
ade
INFORMAÇÃO
Marcos Sêmola
Curso: ESPECIALIZAÇÃO EM ADMINISTRAÇÃO E SEGURANÇA DE SISTEMAS COMPUTACIONAIS Disciplina: SEGURANÇA DE APLICAÇÕES INTERNET E COMÉRCIO ELETRÔNICO
Professor: GARDINI Copyright © 2014
Vulnerabilidades WEB e Conceito
Geral de PenTest
Principais vulnerabilidades
encontradas em Aplicações Web
VULNERABILIDADES EM APLICAÇÕES WEB
Perícia Forense
Gestão de Patches
Curso: ESPECIALIZAÇÃO EM ADMINISTRAÇÃO E SEGURANÇA DE SISTEMAS COMPUTACIONAIS Disciplina: SEGURANÇA DE APLICAÇÕES INTERNET E COMÉRCIO ELETRÔNICO
Professor: GARDINI Copyright © 2014
CROSS SITE SCRIPTING (XSS)
Os furos XSS ocorrem sempre que uma aplicação obtém
as informações fornecidas pelo usuário e as envia de
volta ao navegador sem realizar validação ou codificação
daquele conteúdo. O XSS permite aos atacantes
executarem scripts no navegador da vítima, o qual pode
roubar sessões de usuário, pichar sites Web, introduzir
worms, etc.
FALHA DE INJEÇÃO (EM ESPECIAL SQL INJECTION)
A injeção ocorre quando os dados
fornecidos pelo usuário são enviados
a um interpretador com parte do
comando ou consulta. A
informação maliciosa fornecida pelo
atacante engana o interpretador que
irá executar comandos mal
intencionados ou manipular
informações.
Curso: ESPECIALIZAÇÃO EM ADMINISTRAÇÃO E SEGURANÇA DE SISTEMAS COMPUTACIONAIS Disciplina: SEGURANÇA DE APLICAÇÕES INTERNET E COMÉRCIO ELETRÔNICO
Professor: GARDINI Copyright © 2014
VAZAMENTO DE INFORMAÇÕES E TRATAMENTO DE ERROS INAPROPRIADO
As aplicações podem divulgar informações sobre suas
configurações, processos internos ou violar a privacidade
por meio de uma série de problemas na aplicação, sem
haver qualquer intenção. Os atacantes podem usar esta
fragilidade para roubar informações consideradas sensíveis
ou conduzir ataques mais estruturados.
AUTENTICAÇÃO FALHA E GERENCIAMENTO DE SESSÃO
As credenciais de acesso e token de sessão não são
protegidos apropriadamente com bastante frequência.
Atacantes comprometem senhas, chaves ou tokens de
autenticação de forma a assumir a identidade de outros
usuários.
Curso: ESPECIALIZAÇÃO EM ADMINISTRAÇÃO E SEGURANÇA DE SISTEMAS COMPUTACIONAIS Disciplina: SEGURANÇA DE APLICAÇÕES INTERNET E COMÉRCIO ELETRÔNICO
Professor: GARDINI Copyright © 2014
ARMAZENAMENTO CRIPTOGRÁFICO INSEGURO
As aplicações Web raramente utilizam funções
criptográficas de forma adequada para proteção de
informações e credenciais. Os atacantes se aproveitam de
informações mal protegidas para realizar roubo de
identidade e outros crimes, como fraudes de cartões de
crédito.
COMUNICAÇÕES INSEGURAS
As aplicações frequentemente falham em criptografar
tráfego de rede quando se faz necessário proteger
Curso: ESPECIALIZAÇÃO EM ADMINISTRAÇÃO E SEGURANÇA DE SISTEMAS COMPUTACIONAIS Disciplina: SEGURANÇA DE APLICAÇÕES INTERNET E COMÉRCIO ELETRÔNICO
Professor: GARDINI Copyright © 2014
INDICADORES – MITRE (TOP 10 VULNERABILIDADES)
1. Injection (se aproveita de falhas que interagem com
base de dados via SQL)
2. Cross-Site Scripting (XSS) (ativa ataques maliciosos ao
injetar client-side script em páginas Web)
3. Broken Authentication and Session Management
(Quebra de Autenticação e Gerenciamento de Sessão)
4. Insecure Direct Object References (ocorrência comum
em aplicações PHP)
5. Cross-Site Request Forgery (CSRF)
6. Security Misconfiguration
7. Insecure Cryptographic Storage
8. Failure to Restrict URL Access (Falha para Restrição de
Acesso à URL)
9. Insufficient Transport Layer Protection
10. Unvalidated Redirects and Forwards (Invalidar
Redirecionamentos e Encaminhamentos)
RECORDANDO...
Exemplo de VULNERABILIDADE:
“Uso de protocolos inseguros para transmissão dos dados.”
Exemplo de AMEAÇA:
“Um funcionário insatisfeito com a empresa.”
Exemplo de ATAQUE/RISCO:
Curso: ESPECIALIZAÇÃO EM ADMINISTRAÇÃO E SEGURANÇA DE SISTEMAS COMPUTACIONAIS Disciplina: SEGURANÇA DE APLICAÇÕES INTERNET E COMÉRCIO ELETRÔNICO
Professor: GARDINI Copyright © 2014
QUEM EXPLORA AS VULNERABILIDADES?
De acordo com a pesquisa elaborada pelo Computer Security
Institute em 2008, mais de 70% dos ataques partem de
utilizadores legítimos de sistemas de informação, ou seja, os
famosos “Insiders”.
Interno (70% dos ataques)
Externo
Funcionários Insatisfeitos
Crackers
Funcionários Despreparados
Concorrentes
PROCEDIMENTOS DE UM PENTEST
1. Levantando Informações
2. Varreduras
3. Ganhando Acesso
4. Mantendo Acesso
5. Limpando Rastros
Os procedimentos realizados por um profissional de Pen Test são muito similares aos
Curso: ESPECIALIZAÇÃO EM ADMINISTRAÇÃO E SEGURANÇA DE SISTEMAS COMPUTACIONAIS Disciplina: SEGURANÇA DE APLICAÇÕES INTERNET E COMÉRCIO ELETRÔNICO
Professor: GARDINI Copyright © 2014
1. LEVANTAMENTO DE INFORMAÇÕES
Nesta fase emprega-se aproximadamente 90% do tempo gasto
em uma análise de segurança (Pen Test).
Nesta etapa, o principal objetivo do profissional é conseguir o
maior número de informações sobre o alvo, para somente então,
começar a planejar a melhor maneira de sua intrusão.
Quanto maior o tempo empregado nesta fase, maior a
probabilidade de sucesso na fase de acesso.
1. LEVANTAMENTO DE INFORMAÇÕES (CONT...)
Nesta fase procura-se conhecer:
• Informações sobre a organização ou pessoa alvo;
• Informações sobre os servidores da organização;
• Informações sobre os funcionários da organização;
• Informações sobre os amigos e pessoas chaves da organização;
• Endereços de e-mail, telefones e nº de registro (crachá);
• Sistemas e equipamentos utilizados (parcerias);
Curso: ESPECIALIZAÇÃO EM ADMINISTRAÇÃO E SEGURANÇA DE SISTEMAS COMPUTACIONAIS Disciplina: SEGURANÇA DE APLICAÇÕES INTERNET E COMÉRCIO ELETRÔNICO
Professor: GARDINI Copyright © 2014
2. VARREDURAS
Nesta etapa, o profissional se utiliza das informações descobertas
na fase anterior e as usa para examinar a rede de maneira
direcionada, conduzindo uma série de “buscas”, com a finalidade
de obter as versões de sistemas e serviços que possam ser
explorados, ou seja, que possam estar vulneráveis.
Nesta fase procura-se conhecer:
• Sistemas operacionais utilizados e suas versões;
• Serviços utilizados e suas versões;
3. GANHANDO ACESSO
GENDA
Nesta fase, é onde a invasão realmente ocorre.
Através das informações obtidas nas fases anteriores, fazem
possíveis a descoberta de vulnerabilidades que agora podem ser
exploradas para obter acesso ao sistema.
Curso: ESPECIALIZAÇÃO EM ADMINISTRAÇÃO E SEGURANÇA DE SISTEMAS COMPUTACIONAIS Disciplina: SEGURANÇA DE APLICAÇÕES INTERNET E COMÉRCIO ELETRÔNICO
Professor: GARDINI Copyright © 2014
4. MANTENDO ACESSO E 5. LIMPANDO RASTROS
Estas duas fases são as que basicamente diferenciam os
profissionais de Pen Test dos Crackers, pois um profissional
autorizado (pen test), não precisará manter acesso ao
equipamento, nem mesmo efetuar a limpeza de registros, uma vez
que já efetuou os serviços contratados e relatará todos os
OBTENDO INFORMAÇÕES
Obtendo Informações do Domínio
Ex.: Comando whois e/ou visita ao site http://www.registro.br
Neste momento conseguimos obter quais informações??
• Nome e IP dos servidores DNS;
• Nome do Responsável pelo domínio;
• Datas de alteração e criação;
• Usuário - E-mail;
• CNPJ.
Curso: ESPECIALIZAÇÃO EM ADMINISTRAÇÃO E SEGURANÇA DE SISTEMAS COMPUTACIONAIS Disciplina: SEGURANÇA DE APLICAÇÕES INTERNET E COMÉRCIO ELETRÔNICO
Professor: GARDINI Copyright © 2014
ATAQUES PARA OBTENÇÃO DE INFORMAÇÕES/VULNERABILIDADES
• Port Scanning
Obtém informações a respeito dos serviços acessíveis (portas abertas)
em um sistema.
• Scanning de vulnerabilidades
Obtém informações sobre vulnerabilidades específicas (conhecidas) para
cada serviço em um sistema.
Curso: ESPECIALIZAÇÃO EM ADMINISTRAÇÃO E SEGURANÇA DE SISTEMAS COMPUTACIONAIS Disciplina: SEGURANÇA DE APLICAÇÕES INTERNET E COMÉRCIO ELETRÔNICO
Professor: GARDINI Copyright © 2014
GOOGLE HACKING
Google Hacking é a atividade de usar recursos de busca do site, visando atacar
ou melhor proteger as informações de uma empresa.
As informações disponíveis nos servidores web da empresa provavelmente
estarão nas bases de dados do Google.
Um servidor mal configurado pode expor diversas informações da empresa no
Google.
Não é difícil conseguir acesso a arquivos de base de dados de sites através do
Google.
Detectando sistemas usando a porta 8080
inurl:8080 -intext:8080
Encontrando VNC
intitle:VNC inurl:5800 intitle:VNC or intitle:"VNC Viewer for Java“
Encontrando Apache 1.3.20
"Apache/1.3.20 server at" intitle:index.of
GOOGLE HACKING
Curso: ESPECIALIZAÇÃO EM ADMINISTRAÇÃO E SEGURANÇA DE SISTEMAS COMPUTACIONAIS Disciplina: SEGURANÇA DE APLICAÇÕES INTERNET E COMÉRCIO ELETRÔNICO
Professor: GARDINI Copyright © 2014
ALGUNS ERROS COMUNS
• Descuido – Erros de Configuração
• Listagem de Diretórios
• Demonstração de campos e valores na barra de endereço
• Arquivos Antigos / Backup
• Usuários e Senhas Padrões
• Usuários e Senhas “fracas”
• Demonstração de Versões/Sistemas que estão sendo utilizados. (Apache / FTP /
Webmail)
• Falta de atualização (de TODAS as aplicações, sistemas operacionais, etc)
• Não execução de Hardening!
EXEMPLO DE RELATÓRIO DE VULNERABILIDADES
Nome
Vulnerabilidade na biblioteca ASN.1
Descrição
Foi detectado a ausência do patch que corrige a vulnerabilidade na biblioteca
ASN.1 utilizada em alguns serviços do Microsoft Windows. Esta vulnerabilidade
servidor como usuário SYSTEM.permite um usuário mal intencionado executar
comandos remotamente no
Severidade
Alta
Classificação da
Vulnerabilidade
Lógica
CVE
CAN-2003-0818
Solução
- Aplique a correção disponibilizada pela Microsoft no boletim MS04-007; URL:
http://www.microsoft.com/technet/security/bulletin/ms04-007.mspx
Dados Obtidos
-
Ativos afetados www.nxsecurity.com
MOSTRAR RELATÓRIO ENCONTRADO NA WEB
Curso: ESPECIALIZAÇÃO EM ADMINISTRAÇÃO E SEGURANÇA DE SISTEMAS COMPUTACIONAIS Disciplina: SEGURANÇA DE APLICAÇÕES INTERNET E COMÉRCIO ELETRÔNICO
Professor: GARDINI Copyright © 2014
Hacking Game
MÓDULO I
Curso: ESPECIALIZAÇÃO EM ADMINISTRAÇÃO E SEGURANÇA DE SISTEMAS COMPUTACIONAIS Disciplina: SEGURANÇA DE APLICAÇÕES INTERNET E COMÉRCIO ELETRÔNICO
Professor: GARDINI Copyright © 2014
HACKING GAME
Regras do jogo:
1° Etapa:
Separar em grupos (vamos nomear os grupos!)
Identificar seu alvo
Buscar o máximo de informações possíveis sobre seu alvo
Montar uma apresentação com os resultados obtidos
Apresentar para a turma os resultados colhidos na análise
Abaixo segue a composição da nota final desta etapa:
• 1 pontos (informações sobre localização)
• 1 pontos (informações dos representantes legais)
• 2 pontos (informações sobre o servidor WEB)
• 2 pontos (informações adicionais sobre a empresa, como a infraestrutura interna de
TI)
HACKING GAME
Curso: ESPECIALIZAÇÃO EM ADMINISTRAÇÃO E SEGURANÇA DE SISTEMAS COMPUTACIONAIS Disciplina: SEGURANÇA DE APLICAÇÕES INTERNET E COMÉRCIO ELETRÔNICO
Professor: GARDINI Copyright © 2014