tutorial avancado com appscan

15
Autor: Reinaldo M. R. Junior – Arquiteto de Teste 15/12/2011 1 Testes Avançados com a IBM Rational AppScan. Manual para solução de problema com a ferramenta IBM Rational AppScan. Neste manual vamos criar e executar testes Automatizados de Segurança. Foi montado um Servidor com Aplicações Inseguras para Realização dos Testes. 1. Passos Para soluções de problemas 1.1. Criar um novo Scaneamento “Create New Scan”. Passos: 1. Clique no menu “File”. 2. Clique na opção “NEW”. 1.2 Selecionar o Template padrão “Reguralar Scan”

Upload: reinaldo-rossetti

Post on 16-Aug-2015

87 views

Category:

Software


2 download

TRANSCRIPT

Page 1: Tutorial avancado com appscan

Autor: Reinaldo M. R. Junior – Arquiteto de Teste

15/12/2011 1

Testes Avançados com a IBM Rational AppScan.

Manual para solução de problema com a ferramenta IBM Rational AppScan. Neste manual vamos criar e executar testes Automatizados de Segurança.

Foi montado um Servidor com Aplicações Inseguras para Realização dos Testes.

1. Passos Para soluções de problemas 1.1. Criar um novo Scaneamento “Create New Scan”. Passos:

1. Clique no menu “File”. 2. Clique na opção “NEW”.

1.2 Selecionar o Template padrão “Reguralar Scan”

Page 2: Tutorial avancado com appscan

Autor: Reinaldo M. R. Junior – Arquiteto de Teste

15/12/2011 2

Selecione o Tipo de Aplicação a explorar “Web Application Scan”.

1.3 Cancela o Modo Padrão, vamos fazer pelo modo avançado, use o “Scan Configuration”.

Page 3: Tutorial avancado com appscan

Autor: Reinaldo M. R. Junior – Arquiteto de Teste

15/12/2011 3

2. Passo – Tela “Login Management”

2.1 Insira a URL do Sistema em “Starting URL” e Servidores adicionais em “Additional Servers and Domains”. Existe Aplicações que tem dependências de outros servidores ou se encontra em

outro Domínio, devem ser adicionados.

Page 4: Tutorial avancado com appscan

Autor: Reinaldo M. R. Junior – Arquiteto de Teste

15/12/2011 4

2.2 Selecione a Opção “Record” e posteriormente faça o login na aplicação. O AppScan irá gravar o Login e a Senha.

2.3 Ao Logar não faça o “Logout”, feche a aplicação.

2.4 Desmarque a opção “Allow login even if the application is already logged in” (permitir o acesso mesmo que o aplicativo já está logado).

Page 5: Tutorial avancado com appscan

Autor: Reinaldo M. R. Junior – Arquiteto de Teste

15/12/2011 5

2.5 Para o AppScan entender que você está fazendo o Logout na Aplicação, tem que está descrito nessa parte uma variável que ele vá entender.

(logout|signout|logoff|signoff|exit|quit|bye-bye|clearuser|invalidate)

Geralmente em vez de Logout é usado a palavra Sair, que deve ser adicionado para o AppScan entender ao testar essa requisição ele vai deslogar.

(logout|signout|logoff|signoff|exit|quit|bye-bye|clearuser|invalidate|sair|Sair)

Page 6: Tutorial avancado com appscan

Autor: Reinaldo M. R. Junior – Arquiteto de Teste

15/12/2011 6

2.6 Na aba Details você pode analisar melhor as URL’s de Login e In-Session

(Logout). Em caso de dificuldade para encontrar a In-session, mude a variável “>Logout<”, pela a

variável de código que similar, basta clicar no botão “Select In-Session pattern”, verificar a palavra no código html da figura abaixo.

Page 7: Tutorial avancado com appscan

Autor: Reinaldo M. R. Junior – Arquiteto de Teste

15/12/2011 7

3. Passo “Communication and Proxy”

Na parte de Communication and Proxy, selecione a opção Don't use proxy, se puder não use proxy, gera muitos erros, caso ocorrer problemas, digite IP do proxy e

a porta.

4. Passo “Test Options”,

Na parte de “Test Options”, remova o check do item “Send tests on login and logout pages”. Com essa opção não testa a tela de Login e Logout, tente fazer a

parte, pois poderá afetar o scanneamento dos testes.

Page 8: Tutorial avancado com appscan

Autor: Reinaldo M. R. Junior – Arquiteto de Teste

15/12/2011 8

5. Passo “Scan Expert”

6. Analise o “Scan log”

Page 9: Tutorial avancado com appscan

Autor: Reinaldo M. R. Junior – Arquiteto de Teste

15/12/2011 9

Geralmente quando a URL está em vermelho, aconteceu algum erro, normalmente a aplicação tenta se logar novamente.

No final ele sugere, algumas modificações para um melhor desempenho.

Você pode selecionar o sistema Operacional, Web Server, Application Server, Type of Database e componentes, entre outras. É aconselhável fazer esse levantamento

primeiro com o arquiteto do sistema.

7. Passo - “Explore Only” ou “Full Scan”.

7.1 Explorar primeiro a aplicação e identificar problemas, é necessário ter a quantidade de URL´s do Sistema, pra ter um idéia, no entanto a quantidade encontrada pode não ser igual. Deve ser feito uma análise das URL´s encontrada, se você acha que está muito baixa, depois da exploração automática faça um exploração Manual, tudo aquilo que não foi encontrado na Automática vai encontrar na Manual.

Page 10: Tutorial avancado com appscan

Autor: Reinaldo M. R. Junior – Arquiteto de Teste

15/12/2011 10

O Manual Explorer irá adicionar o que não foi encontrado anteriormente. É

aconselhável explorar manualmente alguns minutos dos testes.

Em muitos casos ao fazer o “Scan Expert” primeiro, não é necessário explorar novamente. Acione o “Continue Full Scan”

Page 11: Tutorial avancado com appscan

Autor: Reinaldo M. R. Junior – Arquiteto de Teste

15/12/2011 11

No scan acompanhe o log de teste, os que estão em vermelho no log, foi alguma vulnerabilidade encontrada.

Analisando o scan log a aplicação está explorando todas as aplicações que estão no servidor, você pode para e limitar isso “Scan only links in and below this diretory”, só

vai escanear as aplicações que estão abaixo desse diretório http://192.168.12.130/dvwa/index.php. Em seguida continue com o “FULL SCAN”

A aplicação marcou X em vermelho todas as pastas que eu não desejo fazer o scan.

Page 12: Tutorial avancado com appscan

Autor: Reinaldo M. R. Junior – Arquiteto de Teste

15/12/2011 12

O que está em azul clarinho é porque encontrou várias URL´s iguais, esta analisando para excluir se for necessário. O que está em preto ou é uma exploração ou um teste

realizado.

Page 13: Tutorial avancado com appscan

Autor: Reinaldo M. R. Junior – Arquiteto de Teste

15/12/2011 13

Ao clicar na variável da vulnerabilidade, o AppScan vai mostrar detalhes do teste realizado, e o script de teste que foi realizado com sucesso.

Os erros encontrados devem ser Auditados, analisados antes de gerar o relatório. Muitos deles são falsos-positivos, você dever ter conhecimento sobre cada vulnerabilidade, a mensagem de erro acima não parece um SQL Injection, você deve analisar cuidadosamente, pois a experiência do testador mostrará a eficiência dos testes realizados.

Page 14: Tutorial avancado com appscan

Autor: Reinaldo M. R. Junior – Arquiteto de Teste

15/12/2011 14

Para confirmação dos testes, verifique o Screenshot e tente executar de novo de forma manual ou um “Re-test”.

Ao final dos testes podemos gerar vários tipos de relatórios.

Page 15: Tutorial avancado com appscan

Autor: Reinaldo M. R. Junior – Arquiteto de Teste

15/12/2011 15

Na ocorrência de problemas, tente fazer as recomendações do consultor da IBM Abaixo:

“Geralmente esse tipo de problema acontece por alguma particularidade da aplicação. Capturar o tráfego é a melhor alternativa para descobrir este e

outros problemas de login.”

Obrigado / Regards

/* * Thiago Canozzo Lahr - CRISC, C|EH, LPIC;

* Security & Privacy Consultant; * IBM Certified IT Specialist;

* IBM Security Services;

Obs.: Quando testar um sistema que tem vários módulos e tiver autenticação por token em cada tela do sistema, faça um teste para cada módulo de forma

separada. Se o resultado dos testes não for satisfatório tente analisar as regras da aplicação, o que poderia afetar nos resultados dos testes

realizados.

Reinaldo M. R. Junior Certificado IBM Rational AppScan Arquiteto de Teste – FUCAPI 2011