OSINT: Coletando dados pessoais com o Datasploit
OSINT: Coletando dados pessoais com o Datasploit
- 14 de outubro de 2017
- O Analista
- 1

Nunca foi tão fåcil encontrar dados pessoais na Internet como nos dias de hoje. Talvez isso se deva ao fato de as pessoas disponibilizarem abertamente suas informaçþes em vårias redes sociais e outros serviços online, facilitando a vida de quem estå em busca de algo sobre alguÊm.
1 â OSINT
Ă aĂ que entra o uso do OSINT, que quer dizer Open Source Intelligente ou InteligĂŞncia de Fontes Abertas. Fazendo uso das mais variadas ferramentas e serviços, com o OSINT ĂŠ possĂvel obter informaçþes de usuĂĄrios e empresas Ă partir do Google, bem como de outros serviços online.
Pode parecer uma coisa Ăłbvia (e realmente ĂŠ), mas por exemplo, utilizando as ferramentas corretas, ĂŠ possĂvel explorar o poder do motor de busca do Google e ir mais fundo na toca do coelho, encontrando muito mais do que o simples digitar de uma palavra naquele campo de busca.
Quando digo fontes pĂşblicas ou abertas, significa que as informaçþes estĂŁo disponĂveis nestes serviços de forma pĂşblica porque seus proprietĂĄrios assim permitiram (ou nĂŁoâŚ). Estes proprietĂĄrios podem ser os donos de determinado serviço, mas tambĂŠm podem ser os usuĂĄrios, que teoricamente sĂŁo donos de suas informaçþes pessoais que estĂŁo ali armazenadas. Mas aĂ entrarĂamos em uma outra discussĂŁo sobre sigilo, etc, etc.
Por exemplo, muitos usuĂĄrios (a maioria atĂŠ) que possuem uma conta no LinkedIn nĂŁo sabem que, utilizando determinada ferramenta, ĂŠ possĂvel obter informaçþes sobre outros usuĂĄrios que estĂŁo cadastrados no serviço. Informaçþes estas que incluem nome completo, e-mail, empresa atual, cargo, etc. SĂł para exemplificar.
2 â DATASPLOIT
Escrito em Python, o Datasploit ĂŠ composto por vĂĄrias ferramentas que possuem a função de correlacionar dados brutos de vĂĄrias fontes, reunindo em um sĂł lugar informaçþes relevantes sobre um domĂnio, e-mail, nĂşmero de telefone, nome de uma pessoa e muito mais.
Modos de acesso
As ferramentas podem ser utilizadas via prompt de comando, que ĂŠ quando vocĂŞ digita manualmente os comandos, ou via navegador, informando somente o que quer buscar. A tecnologia por trĂĄs do acesso via navegador ĂŠ provida por um framework desenvolvido em Django.
2.1 â Configuração utilizada nos testes
Foi criado um cenĂĄrio tĂpico cliente x servidor. No lado do cliente, que inclusive ĂŠ a distribuição Linux base que utilizo no meu note, foi utilizado o Linux Mint 18.2 (Sonya). JĂĄ no lado do servidor, como mĂĄquina virtual no VirtualBox, utilizei o CentOS Linux release 7.2.1511 (Core), sem interface grĂĄfica.
2.2 â CaracterĂsticas
- AtravĂŠs de tĂŠcnicas de OSINT, realiza uma pesquisa sobre domĂnios, e-mails, nomes de usuĂĄrio, telefone e outras informaçþes a partir de diferentes fontes;
- Correlaciona os resultados, mostrando-os de forma consolidada;
- Utiliza chaves de api (API Keys) fornecida por diversos serviços para realizar as buscas;
- Realiza scans (varreduras) nos dados coletados;
- Gera relatĂłrios nos formatos quando acessado via:
- Prompt de comando: HTML e JSON;
- Interface web (navegador): CSV, XLS, XLSX, TSV, ODS, JSON, YAML e HTML.
Indo para o lado negro da força, quando um ataque estå na fase de planejamento, uma das primeiras coisas a serem feitas nesta etapa Ê a coleta de informaçþes. Com esta ferramenta, você terå aquele gås na hora procurar por informaçþes sobre uma pessoa ou empresa.
2.3 â Requisitos
Python 2.7
Esta versĂŁo do Python ĂŠ necessĂĄria, pois as dependĂŞncias do Datasploit nĂŁo sĂŁo suportadas pelo Python 3.0. SerĂĄ necessĂĄrio instalar tambĂŠm o gerenciador de pacotes pip.
Para instalar no Ubuntu, Debian, Mint e similares, digite os comandos abaixo:
1
2
3
4
|
$ sudo apt-get install python2.7
$ sudo apt-get install python-pip
|
Par instalar no Fedora, CentOS e outras distros que utilizam pacotes rpm, digite:
1
2
3
4
|
$ sudo yum install python27
$ sudo yum install python-pip
|
Bibliotecas do Python
1
2
3
|
$ pip install -r requirements.txt
|
Obs: Por enquanto não execute este comando, ele serå melhor explicado mais adiante, pois existem alguns comandos que precisam ser digitados antes dele, pois são da fase de instalação do Datasploit.
2.4 â Download
Agora iremos realizar o download do Datasploit, ou no termo mais correto, clonar os arquivos do repositĂłrio do Datasploit. Digite o comando abaixo em seu terminal:
1
2
3
|
$ git clone https://github.com/anandtiwarics/datasploit
|
2.5 â Preparando o ambiente
Acesse o diretĂłrio recĂŠm-criado no passo anterior com o comando:
1
2
3
|
cd datasploit
|
Estando dentro dele, digite o comando abaixo para instalar as dependĂŞncias:
1
2
3
4
|
$ pip install -r requirements.txt
|
Digite tambÊm os comandos que são relacionados às operaçþes do banco de dados interno do framework Django:
1
2
3
4
5
|
$ python manage.py collectstatic
$ python manage.py makemigrations
$ python manage.py migrate
|
Crie um super usuĂĄrio para o framework, que serĂĄ solicitado no momento em que quiser exportar os resultados de uma busca para alguns dos formatos citados anteriormente, quando acessado via navegador:
1
2
3
|
python manage.py createsuperuser
|
Gerar Chaves de API (API Keys)
O arquivo config.py Ê a espinha dorsal do Datasploit, pois ele possui todas as chaves de API utilizadas para autenticação nos serviços que fornecerão as informaçþes consultadas. O seu conteúdo Ê similar ao mostrado abaixo:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
#Store all your config's here.
#added to gitignore so will not be syned
#Backup in ~/Desktop/config.py_backup
shodan_api=""
bing_api=""
github_access_token=""
builtwith_api=""
censysio_id=""
censysio_secret=""
facebook_access_token = ""
flickr_api=""
google_api=""
google_cse_key=""
google_cse_cx = ""
hashes_api=""
ipinfodb_api=""
jigsaw_api=""
jigsaw_password=""
jigsaw_username=""
linkedin_api=""
linkedin_secret=""
pwnedlist_api=""
pwnedlist_iv=""
pwnedlist_secret=""
spyonweb_access_token = ""
twitter_consumer_key=""
twitter_consumer_secret=""
twitter_access_token = ""
twiter_access_token_secret = ""
zoomeyeuser = ""
zoomeyepass = ""
clearbit_apikey = ""
emailhunter=""
jsonwhois=""
instagram_token = ""
instagram_client_id = ""
instagram_client_secret = ""
fullcontact_api = ""
mailboxlayer_api = ""
virustotal_public_api =""
|
Não focaremos em procedimentos de como gerar estas chaves, pois o post ficaria muito extenso. No link abaixo você poderå conferir o passo a passo de como gerar a chave de API em cada serviço:
Priorizando a utilização das chaves
Caso nĂŁo queira utiizar as chaves de determinado serviço e tambĂŠm para evitar possĂveis erros relacionados Ă ausĂŞncia delas, acesse o arquivo .py do serviço que desejar cancelar (ele pode estar em um dos trĂŞs diretĂłrios: domain, emails ou IP).
Digamos que eu queira que o Datasploit nĂŁo utilize as credenciais da ferramenta ZoomEye em sua prĂłxima varredura, para isso farĂamos:
1
2
3
4
|
$ cd datasploit/domains
$ sudo vim /home/oanalista/datasploit/domain_zoomeye.py
|
Em seguida alterarĂamos o parâmetro de True para False:
1
2
3
|
ENABLED = True
|
Para
1
2
3
|
ENABLED = False
|
Lembre-se de alterar o caminho acima para o local onde clonou o repositĂłrio.
2.6 â Utilizando o Datasploit pela linha de comando
Como foi dito anteriormente, o Datasploit ĂŠ composto por vĂĄrias ferramentas. Uma delas ĂŠ o script DomainOsint.py, que reĂşne vĂĄrias ferramentas que possuem a função de obter as mais variadas informaçþes sobre domĂnios.
Por exemplo, caso queira obter maiores informaçþes sobre o dominio da nsa.gov (Agência de Segurança Nacional dos EUA), acesse o terminal de seu Linux e digite o comando:
1
2
3
|
$ python domainOsint.py nsa.gov
|
Veja no vĂdeo um exemplo mostrando a execução deste comando:
2.7 â Acessando o Datasploit pelo navegador
Para que o acesso via navegador seja realizado com sucesso, alguns passos sĂŁo necessĂĄrios:
Hosts autorizados
Caso queira que outras pessoas acessem o Datasploit em seu computador (ou em uma måquina virtual) pelo navegador à partir de seus computadores, serå necessårio incluir no arquivo de configuração settings.py, campo ALLOWED_HOSTS, o endereço IP do computador/VM onde o Datasploit estå em funcionamento. à por meio dele que o usuårio acessarå o Datasploit.
1
2
3
|
ALLOWED_HOSTS = ['ENDEREĂO_IP']
|
Caso a instalação do Datasploit tenha ocorrido na sua própria måquina, sem que outros outros usuårios tenham acesso à ferramenta, então deixe o campo abaixo como estå:
1
2
3
|
ALLOWED_HOSTS = ['']
|
Executando o Dataspoit
No caso de outros usuĂĄrios terem acesso, execute da seguinte maneira, conforme o seu cenĂĄrio:
1
2
3
|
$ python manage.py runserver IP:8000
|
Ou caso somente vocĂŞ tenha acesso:
1
2
3
|
$ sudo python manage.py runserver localhost:8000
|
AparecerĂĄ uma mensagem parecida com esta:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
Performing system checks...
System check identified some issues:
WARNINGS:
?: (1_8.W001) The standalone TEMPLATE_* settings were deprecated in Django 1.8 and the TEMPLATES
dictionary takes precedence. You must put the values of the following settings into your default
TEMPLATES dict: TEMPLATE_CONTEXT_PROCESSORS.
?: (urls.W005) URL namespace 'datasploitapp' isn't unique. You may not be able to reverse all URLs
in this namespace
System check identified 2 issues (0 silenced).
October 14, 2017 - 05:18:48
Django version 1.11.1, using settings 'datasploit.settings'
Starting development server at http://lnxserver:8000/
Quit the server with CONTROL-C.
|
Obs: Caso queira subir o servidor web pelo hostname em vez do endereço IP, altere o arquivo /etc/hosts, adicionando o endereço IP correspondente ao hostname do servidor onde foi realizada a instalação:
1
2
3
|
10.0.0.201 HOSTNAME
|
Acessando o Datasploit
E por fim, o acesso via navegador. Basta digitar o endereço IP onde a instalação foi realizada, conforme mostrado abaixo (para o acesso local o procedimento Ê o mesmo, basta trocar o endereço IP pelo de loopback: 127.0.0.1):
1
2
3
|
http://endereco_ip:8000
|
DeverĂĄ aparecer a seguinte tela:
Demonstração
Exportando os resultados obtidos
No caso da busca por domĂnios, os resultados sĂŁo divididos por categorias, como por exemplo: Whois Data, DNS Records, Pagelinks, Punkspider, Shodan Data, Subdomains, Wappalyzer, Wikileaks Data, Zoomeye Data e Censys Data.
Dentro de cada categoria existe um botão para download. Clique sob ele. Aparecendo a janela abaixo, forneça o usuårio e senha que foi criado anteriormente.
Após realizar o login, escolha o formato desejado do arquivo a ser exportado, no campo Format. Em seguida, clique no botão SUBMIT e salve o arquivo no local desejado. O interessante do modo de utilização via web Ê que temos a disposição vårios formatos de exportação, quanto que no modo via linha de comando temos somente dois.
3 â ConclusĂŁo
Espero que tenha gostado do post. Deu um certo trabalho em fazĂŞ-lo, por isso peço que aponte qualquer erro que encontrar, faça a sua crĂtica, pois sou todo ouvidos. Use esta ferramenta com cautela! JĂĄ viu nĂŠ? rsrs.
Hack the Planet sempre!
Fonte:
ComentĂĄrios
Postar um comentĂĄrio