Image default
How To Security

Amazon S3: Realize a enumeração dos buckets com o AWSBucketDump

Ah o S3 da Amazon….

Realizar a enumeração de serviços web, bem como a procura por informações sensíveis que normalmente estão disponíveis na Internet, são uma das atividades favoritas de todo profissional/pesquisador de segurança, já que é uma etapa onde informações são descobertas facilmente.

Esse favoritismo cresce ainda mais quando usuários de serviços de armazenamento, como os que utilizam o S3 (Simple Storage Service) da Amazon, configuram incorretamente a segurança dos arquivos armazenados no serviço, resultando em arquivos “sigilosos” estando disponíveis para quem não deveria, ou no melhor dos mundos, para um hacker ético.

Para exemplificar, podemos citar o caso do banco americano Capital One, em que dados de mais de 100 milhões de clientes do banco foram vazados por um hacker. Além disso, tivemos diversos casos de vazamento de dados que ocorrem devido uma má configuração dos S3 Buckets da Amazon.

NSA: Arquivos sigilosos do governo americano são expostos em um servidor Amazon S3

1 – O que são Buckets do Amazon S3?

São contêineres para objetos. Dados, como os arquivos/documentos, são armazenados no bucket como objetos. Em um bucket você pode controlar o acesso para cada objeto, escolher a região geográfica onde o Amazon S3 armazenerá o bucket e seu conteúdo, bem como outras configurações.

Para maiores informações, acesse o documento Conceitos básicos do Amazon S3.

2 – O AWSBucketDump

O AWSBucketDump é uma ferramenta para enumerar rapidamente os buckets do AWS S3, para procurar por arquivos. É semelhante a uma ferramente de brute force de subdomínio, mas foi criada especificamente para buckets S3, além de também possuir alguns recursos extras, que permite a você procurar por arquivos interessantes e baixá-los caso não tenha problemas em encher rapidamente o disco rígido.

3 – Pré-requisitos

Para o funcionamento do AWSBucketDump, é necessário ter alguns pré-requisitos em seu sistema operacional Linux:

  • Python3
  • Pip3
  • Git
  • xmltodict
  • requests
  • argparse
  • Baixar os pacotes

Este howto foi executado no Ubuntu 19.10, codinome Eoan Ermine, mas deve funcionar em qualquer Linux atual.

3.1 – Verificar a versão do Python e do Pip

Como o AWSBucketDump foi desenvolvido na versão 3.6 do Python, logo, para uma melhor performance e funcionamento, é necessário que utilize o Python desta versão em diante.

Verifique a versão do Python:

python3 --version

Deverá ter o seguinte retorno:

Python 3.7.5

Verificando a versão do instalador de pacotes do Python, digite o seguinte comando:

pip3 --version

Um retorno similar a este deverá aparecer:

pip 18.1 from /usr/lib/python3/dist-packages/pip (python 3.7)

3.2 – Instalando o Python 3 e o Pip

Caso não tenha o Python3 e o gerenciador de pacotes do Python, o Pip, siga os seguintes passos para instalá-los::

No Ubuntu/Debian:

sudo apt-get update
sudo apt-get install python3
sudo apt-get install python3-pip

No CentOS

sudo yum update
sudo yum install python3
sudo yum install python-pip

No Fedora

sudo dnf update
sudo dnf install python3
sudo dnf install python-pip

3.3 – Instalando o Git

O git é utilizado para clonar repositórios de código, muito necessário nos dias de hoje. Para isso, apenas digite o comando abaixo, conforme sua distribuição Linux:

Ubuntu/Debian

sudo apt-get install git

CentOS

sudo yum install git

Fedora

sudo dnf install git

3.4 – Instalando demais pacotes pelo Pip

Existem outros pacotes que são necessários serem instalados, mas para isso é necessário primeiramente realizar o download do AWSBucketDump, em seguida os pacotes respetivamente:

git clone https://github.com/jordanpotti/AWSBucketDump.git

Acessar o diretório e instalar o pré-requisitos:

cd AWSBucketDump/
pip3 install -r requirements.txt

4 – Usando o AWSBucketDump

Como no passo anterior já realizamos a clonagem do repositório do AWSBucketDump, vamos partir para a parte interessante, que é usar a ferramenta.

Vamos lá. Digite o comando abaixo para ver a “mágica” acontecer:

python3 AWSBucketDump.py -l BucketNames.txt -g interesting_Keywords.txt -D -m 500000 -d 1
Realize enumeração de buckets do Amazon S3 com o AWSBucketDump

No exemplo acima, vemos que diversos arquivos de backup foram encontrados. Como citei no início do post, isso ocorre por uma má configuração realizada pelo “responsável” pelo servidor. Isso não ocorreria se ele tivesse configurado corretamente as permissões do bucket em questão.

O parâmetro -l, seguido do arquivo BucketNames.txt contém nomes aleatórios de possíveis Buckets que possam existir no S3. Já o parâmetro -g, seguido do arquivo interesting_Keywords.txt, contém palavras chaves de possíveis nomes de arquivos.

5 – Como mitigar esta vulnerabilidade?

A Amazon fornece uma vasta documentação relacionada a configurações seguras, onde os usuários poderão encontrar informações de como configurar a permissão nos buckets corretamente, bem como outras configurações de segurança.

Relacionado a este post, você poderá acessar o guia online Configuração do bucket e permissões de acesso de objeto, disponível no link abaixo:

https://docs.aws.amazon.com/pt_br/AmazonS3/latest/user-guide/s3-user-guide.pdf#set-permissions

Ou ainda baixar todo o documento em PDF, clicando no link:

https://docs.aws.amazon.com/pt_br/AmazonS3/latest/user-guide/s3-user-guide.pdf#set-permissions

Use com bom senso. OK???

Fonte:

https://docs.aws.amazon.com/pt_br/AmazonS3/latest/gsg/AmazonS3Basics.html

https://github.com/jordanpotti/AWSBucketDump

https://python.org.br/instalacao-linux/

Posts similares

Pesquisadores publicam lista com senhas padrão de produtos SCADA

O Analista

Realize buscas avançadas na web com o Zeus-Scanner

O Analista

“Ainda não acabou”, diz jovem de 22 anos que freou a propagação do #WannaCry

O Analista

Este site usa cookies para melhorar sua experiência de navegação. Vamos supor que você está bem quanto a isso, mas você pode optar por sair, se desejar. Aceitar Ler Mais