Image default
How To Security

Data Exfiltration: Como fazer utilizando a ferramenta DET

A ferramenta DET (Data Exfiltration Toolkit) foi criada como uma prova de conceito para identificar possíveis falhas em soluções de Prevenção de Perda de Dados (DLP – Data Loss Prevention.

A ideia era criar um kit de ferramentas genérico que pudesse conectar qualquer tipo de protocolo/serviços a fim de testar a configuração das soluções de Monitoramento de Rede e Prevenção de Perda/Vazamento de dados (DLP), contra diferentes técnicas de data exfiltration.

Na imagem podemos ter uma ideia do funcionamento do esquema:

  • O Insider (192.168.56.10) envia documento sigiloso para o IP do atacante (192.168.50.1), via porta TCP 6969;
  • O atacante recebe o arquivo enviado pelo insider;
  • Os arquivos recebidos poderão ser enviados para outro servidor localizado na Internet caso necessário.
Data Exfiltration: Como fazer utilizando a ferramenta DET
Figura 1 – Topologia (beeeeeem básica) do funcionamento do DET | Como realizar Data Exfiltration utilizando a ferramenta DET

Índice

1 – Preparando o terreno
1.1 – Atacante – Ubuntu 19.10
1.1.1 – Instalação do Git
1.1.2 – Instalar o Python 2 e o gerenciador de pacotes Pip
1.1.3 – Clonar repositório do DET
1.1.4 – Instalar pré-requisitos do arquivo requirements.txt
1.1.5 – Arquivo config-sample.json
1.1.6 – Endereço IP do atacante
1.2 – Insider – Windows (Windows 10 – 32 bits)
1.2.1 – Instalação do Git
1.2.2 – Instalação do Python (versão 2.7.17)
1.2.3 – Clonando o repositório do DET
1.2.4 – Instalando os pré-requisitos
1.2.5 – O arquivo config-sample.json
1.2.6 – Endereço IP
2 – Realizando o Data Exfiltration
3 – Como se prevenir?

1 – PREPARANDO O TERRENO (Pré-Requisitos) PARA O DATA EXFILTRATION

A etapa de preparar o terreno gira em torno de configurar as ferramentas necessárias para o funcionamento correto do DET (Data Exfiltration Toolkit). Será dividida no lado do Atacante e do Insider.

1.1 – Atacante – Ubuntu 19.10

Como deve ter visto no título, o cenário do atacante é composto por uma máquina com o Ubuntu 19.10, mas em alguns casos darei exemplos de comandos para quem estiver utilizando o Fedora e CentOS.

1.1.1 – Instalação do Git

Ubuntu/Debian

sudo apt-get install git

Fedora

sudo dnf install git

CentOS

sudo yum install git

1.1.2 – Instalar o Python2 e o gerenciador de pacotes Pip

Ubuntu/Debian

sudo apt-get install python
sudo apt-get install python-pip

Fedora

sudo dnf install python
sudo dnf install python-pip

CentOS

sudo yum install python
sudo yum install python-pip

1.1.3Clonar repositório do DET

Para clonar o repositório do DET, digite o seguinte comando:

git clone https://github.com/sensepost/DET.git

O que é vazamento de dados?


1.1.4 – Instalar pré-requisitos do arquivo requirements.txt

Acesse o diretório recém-criado. Antes de instalarmos os pré-requisitos, execute os seguintes passos:

vim requirements.txt

– comentar a linha do pycrypto e adicionar em seguida pycryptodome, como mostrado na imagem abauixo:

Figura 2 – Alterando o arquivo requirements | Data Exfiltration: Como fazer utilizando a ferramenta DET

– Salve e saia do arquivo, digitando :wq!

Obs: o pycrypto possui vulnerabilidade de buffer overflow, por isso estamos utilizando o pycryptodome. Veja mais em https://blog.sqreen.com/stop-using-pycrypto-use-pycryptodome/

Em seguida instale os pré-requisitos, conforme descrito abaixo:

sudo pip install -r requirements.txt

1.1.5 – Arquivo config-sample.json

O arquivo config-sample.json possui todos os atributos para os plugins a serem utilizados pelo DET. No lado do atacante, um plugin é um meio a ser utilizado para o recebimento dos arquivos a serem enviados pelo insider.

Conforme podemos ver na imagem abaixo, configurei o endereço IP dos plugins dns, tcp e udp como 127.0.0.1 (pois o socket de conexão será aberto na própria máquina). Destaquei na imagem o plugin tcp e a porta 6969, que serão utilizados pelo insider para o envio de um arquivo sigiloso ao Atacante.

Figura 3 – O arquivo config-sample.json | Data Exfiltration: Como fazer utilizando a ferramenta DET

1.1.6 – Endereço IP do atacante

Em nosso teste as máquinas do atacante e do insider estão localizadas na mesma rede, devido ao endereço IP em uso ser de endereçamento interno, mas nada impede que você utilize algum servidor na Internet para receber os arquivos enviados pelo insider.

Data Exfiltration: Como fazer utilizando a ferramenta DET
Figura 4 – Verificando o endereço IP do atacante | Data Exfiltration: Como fazer utilizando a ferramenta DET

Tanto o servidor do atacante, como a estação de trabalho do insider, podem estar localizados na mesma rede ou em qualquer local do mundo.

1.2 – Insider – Windows (Windows 10 – 32 bits)

Este ambiente é o que chamaremos de a máquina do Insider, que é o(a) “vira-casaca” em uma organização. Um insider é um(a) funcionário(a) que age fora dos padrões corretos e éticos dentro de uma organização.

Basicamente, teremos os seguinte pré-requisitos:

  • Git
  • Python
  • Os pré-requisitos do arquivo requirements.txt

1.2.1 – Instalação do Git

Ao acessar o link abaixo, o download deverá começar automaticamente:

https://git-scm.com/download/win

Caso não comece dentro de segundos, clique em um dos links conforme a arquitetura do sistema e aguarde o download terminar.

Execute a instalação padrão, não tem segredo.

1.2.2 – Instalação do Python (versão 2.7.17)

Primeiramente acessaremos o link a seguir:

https://python.org/downloads/release/python-2717

Aparece uma tela como a seguir. Clique no link de download referente a versão 2.7.17:

Figura 5 – Realizando o download do Python para Windows | Data Exfiltration: Como fazer utilizando a ferramenta DET

Em seguida clique no link abaixo e aguarde o término do download:

Figura 6 – Download do executável do Python para Windows | Data Exfiltration: Como fazer utilizando a ferramenta DET

Realize a instalação normalmente do executável.

1.2.3 – Clonando o repositório do DET

Após instalado o Git e o Python, acesse o Git Bash, em seguida realize a clonagem do diretório do DET, utilizando o comando abaixo:

git clone https://github.com/sensepost/DET.git
Data Exfiltration: Como fazer utilizando a ferramenta DET
Figura 7 – Clonando o repositório do DET para ser utilizado no Windows | Data Exfiltration: Como fazer utilizando a ferramenta DET

Após o término da clonagem do DET, acesse o diretório recém-criado:

cd DET

Conteúdo do diretório do DET (ls -lhtr):

Data Exfiltration: Como fazer utilizando a ferramenta DET
Figura 8 – Listando o conteúdo do diretório do DET | Data Exfiltration: Como fazer utilizando a ferramenta DET

1.2.4 – Instalando os pré-requisitos

Antes de instalar os pré-requisitos, é necessário acessar o arquivo requirements.txt (vim requirements.txt), comentar a linha do pycrypto e adicionar pycryptodome, conforme mostrado baixo:

Data Exfiltration: Como fazer utilizando a ferramenta DET
Figura 9 – Alterando o arquivo requirements.txt no Windows | Data Exfiltration: Como fazer utilizando a ferramenta DET

Obs: o pycrypto possui vulnerabilidade de buffer overflow, por isso estamos utilizando o pycryptodome. Veja mais em https://blog.sqreen.com/stop-using-pycrypto-use-pycryptodome/.

E seguida instale os pré-requisitos utilizando o comando:

pip install -r requirements.txt
Data Exfiltration: Como fazer utilizando a ferramenta DET
Figura 10 – Instalando os pré-requisitos no Windows | Data Exfiltration: Como fazer utilizando a ferramenta DET

Após os pré-requisitos do arquivo requirements.txt serem instalados, vamos para o passo seguinte:

1.2.5 – O arquivo config-sample.json

O arquivo config-sample.json possui todos os atributos para os plugins a serem utilizados pelo DET. No lado do insider, um plugin é um meio a ser utilizado para o envio da informação para o servidor do atacante, que em nosso teste está com o endereço IP 192.168.56.1. Lembre-se que este servidor do atacante pode estar localizado em qualquer lugar do mundo.

vim config-sample.json
Data Exfiltration: Como fazer utilizando a ferramenta DET
Figura 11 – Alterando o arquivo config-sample.json no Windows | Data Exfiltration: Como fazer utilizando a ferramenta DET

No exemplo acima, foi informado o IP do servidor (192.168.56.1) do atacante, bem como o plugin de tcp e a porta 6969. Estas informações são necessárias para que o insider saiba para onde enviar o arquivo que deseja vazar.

1.2.6 – Endereço IP

Em nosso teste foi configurado o endereço IP 192.168.56.10 na estação de trabalho do insider, pois ao analisar as conexões que estiverem “chegando” no servidor do atacante, veremos o IP do insider, que neste caso é o que está em destaque na imagem abaixo:

Data Exfiltration: Como fazer utilizando a ferramenta DET
Figura 12 – Verificando o IP no Windows | Data Exfiltration: Como fazer utilizando a ferramenta DET

2 – REALIZANDO O DATA EXFILTRATION

Para ficar mais fácil o entendimento do processo do “vamo vê”, resolvi gravar um vídeo mostrando esse processo:

Conhecendo a ferramenta DET em ação |

3 – COMO SE PREVENIR?

Existem diversas técnicas e ferramentas que as empresas podem utilizar para se prevenirem contra o vazamento de informações, perda de dados, DLP, data exfiltration, etc.

No link abaixo, você pode conferir um pequeno guia que mostra algumas técnicas e ferramentas para a prevenção de data exfiltration e outras vulnerabilidades que englobam a perda de dados e o vazamento de informações como um todo.

https://www.hitechnectar.com/blogs/top-data-exfiltration-prevention-tools-techniques/

Fonte:

https://github.com/sensepost/DET

Fonte da imagem utilizada na capa do post:

https://www.dataresolve.com/data-exfiltration-intelligence.php

Posts similares

Hacker vaza dados de mais de 100 milhões de clientes da Capital One

O Analista

Juniper e o documento secreto envolvendo a NSA

O Analista

Vinton Cerf pede que adotemos medidas de criptografia

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