Para o infinito e além!

Olá a todos!  Este é o terceiro e último post desta série cobrindo OSINT e o Recon-NG.  Se você ainda não leu os posts anteriores e é novo em algum dos assuntos, recomendo a visita:

Já fomos apresentados aos conceitos do tema e já começamos a trabalhar com a ferramenta que implementa tais conteúdos.  Agora, vamos extrair ainda mais dela e ver o que podemos alcançar.  Ao final do artigo, coloquei algumas fontes de leitura adicional.  Mãos à obra!

 

Avançando na Exploração

Certo, Contatos/E-mails são bem úteis de se obter, é verdade.  Mas, e os hosts?  Nós já temos o domínio do SANS, então deve ser possível obter alguns hosts a partir dele, certo?  E é!  Uma forma antiga de conseguir os hosts pertencentes a um determinado domínio é o uso da ferramenta “nslookup” e seu comando “ls”.  Desta forma, ao se consultar o servidor responsável pelo domínio, todos os dados da zona são obtidos.  No entanto, rapidamente se percebeu que isso poderia levar a ataques relativamente sofisticados, como DNS poisoning ou spoofing.  Assim, uma boa prática é permitir a transferência de zona (a operação executada pelo comando “ls”) apenas entre os servidores DNS responsáveis pela mesma.  Você pode entender melhor sobre o assunto neste white paper do SANS.

Voltando para o Recon-NG, há dois módulos especiais dedicados à descoberta de hosts:  um que usa o Bing, e outro que usa o Google.  Ambos os módulos atualizam a tabela “hosts”, que deve estar atualmente vazia no nosso caso (verifique com o comando “show hosts”).  Você pode usar o “show info” para entender melhor do módulo após carregá-lo.  Vamos usar o primeiro e ver o que conseguimos:

[recon-ng][sans] > use recon/domains-hosts/bing_domain_web
[recon-ng][sans][bing_domain_web] > run

--------
SANS.ORG
--------
[*] URL: https://www.bing.com/search?first=0&q=domain%3Asans.org
[*] [host] ics.sans.org (<blank>)
[*] [host] securingthehuman.sans.org (<blank>)
[*] [host] blogs.sans.org (<blank>)
[*] Sleeping to avoid lockout...
[*] URL: https://www.bing.com/search?first=0&q=domain%3Asans.org+-domain%3Aics.sans.org+-domain%3Asecuringthehuman.sans.org+-domain%3Ablogs.sans.org
[*] [host] content.sans.org (<blank>)
[*] [host] www3.sans.org (<blank>)
[*] [host] handlers.sans.org (<blank>)
[*] Sleeping to avoid lockout...
[*] URL: https://www.bing.com/search?first=0&q=domain%3Asans.org+-domain%3Aics.sans.org+-domain%3Asecuringthehuman.sans.org+-domain%3Ablogs.sans.org+-domain%3Acontent.sans.org+-domain%3Awww3.sans.org+-domain%3Ahandlers.sans.org
[*] [host] digital-forensics.sans.org (<blank>)
[*] [host] www.sans.org (<blank>)
[*] Sleeping to avoid lockout...
[*] URL: https://www.bing.com/search?first=0&q=domain%3Asans.org+-domain%3Aics.sans.org+-domain%3Asecuringthehuman.sans.org+-domain%3Ablogs.sans.org+-domain%3Acontent.sans.org+-domain%3Awww3.sans.org+-domain%3Ahandlers.sans.org+-domain%3Adigital-forensics.sans.org+-domain%3Awww.sans.org
[*] [host] files.sans.org (<blank>)
[*] Sleeping to avoid lockout...
[*] URL: https://www.bing.com/search?first=0&q=domain%3Asans.org+-domain%3Aics.sans.org+-domain%3Asecuringthehuman.sans.org+-domain%3Ablogs.sans.org+-domain%3Acontent.sans.org+-domain%3Awww3.sans.org+-domain%3Ahandlers.sans.org+-domain%3Adigital-forensics.sans.org+-domain%3Awww.sans.org+-domain%3Afiles.sans.org

------------
WWW.SANS.ORG
------------
[*] URL: https://www.bing.com/search?first=0&q=domain%3Awww.sans.org

-------
SUMMARY
-------
[*] 9 total (9 new) hosts found.
[recon-ng][sans][bing_domain_web] > show hosts

  +-------------------------------------------------------------------------------------------------------------+
  | rowid |            host            | ip_address | region | country | latitude | longitude |      module     |
  +-------------------------------------------------------------------------------------------------------------+
  | 1     | ics.sans.org               |            |        |         |          |           | bing_domain_web |
  | 2     | securingthehuman.sans.org  |            |        |         |          |           | bing_domain_web |
  | 3     | blogs.sans.org             |            |        |         |          |           | bing_domain_web |
  | 4     | content.sans.org           |            |        |         |          |           | bing_domain_web |
  | 5     | www3.sans.org              |            |        |         |          |           | bing_domain_web |
  | 6     | handlers.sans.org          |            |        |         |          |           | bing_domain_web |
  | 7     | digital-forensics.sans.org |            |        |         |          |           | bing_domain_web |
  | 8     | www.sans.org               |            |        |         |          |           | bing_domain_web |
  | 9     | files.sans.org             |            |        |         |          |           | bing_domain_web |
  +-------------------------------------------------------------------------------------------------------------+
[recon-ng][sans2][bing_domain_web] > query select host from hosts

  +----------------------------+
  |            host            |
  +----------------------------+
  | ics.sans.org               |
  | securingthehuman.sans.org  |
  | blogs.sans.org             |
  | content.sans.org           |
  | www3.sans.org              |
  | handlers.sans.org          |
  | digital-forensics.sans.org |
  | www.sans.org               |
  | files.sans.org             |
  +----------------------------+

[*] 9 rows returned

Nós podemos incrementar esta tabela com outro módulo (recon/domain-hosts/google_site_web).  Ele pesquisará no Google por hosts relacionados ao domínio e nos devolverá o resultado:

[recon-ng][sans][google_site_web] > use recon/domains-hosts/google_site_web
[recon-ng][sans][google_site_web] > run

--------
SANS.ORG
--------
[*] Searching Google for: site:sans.org
[*] [host] securingthehuman.sans.org (<blank>)
[*] [host] software-security.sans.org (<blank>)
[*] [host] www.sans.org (<blank>)
[*] [host] isc.sans.org (<blank>)
[*] [host] uk.sans.org (<blank>)
[*] [host] ics.sans.org (<blank>)
[*] Searching Google for: site:sans.org -site:securingthehuman.sans.org -site:software-security.sans.org -site:www.sans.org -site:isc.sans.org -site:uk.sans.org -site:ics.sans.org
[*] [host] sic.sans.org (<blank>)
[*] [host] handlers.sans.org (<blank>)
[*] [host] www3.sans.org (<blank>)
[*] [host] cyber-defense.sans.org (<blank>)
[*] [host] pen-testing2.sans.org (<blank>)
[*] [host] isc2.sans.org (<blank>)
[*] [host] pen-testing.sans.org (<blank>)
[*] [host] lists.sans.org (<blank>)
[*] [host] access.sans.org (<blank>)
[*] [host] leam.sans.org (<blank>)
[*] [host] digital-forensics.sans.org (<blank>)
[*] [host] isc1.sans.org (<blank>)
[*] Searching Google for: site:sans.org -site:securingthehuman.sans.org -site:software-security.sans.org -site:www.sans.org -site:isc.sans.org -site:uk.sans.org -site:ics.sans.org -site:sic.sans.org -site:handlers.sans.org -site:www3.sans.org -site:cyber-defense.sans.org -site:pen-testing2.sans.org -site:isc2.sans.org -site:pen-testing.sans.org -site:lists.sans.org -site:access.sans.org -site:leam.sans.org -site:digital-forensics.sans.org -site:isc1.sans.org
[*] [host] files.sans.org (<blank>)
[*] [host] blogs.sans.org (<blank>)
[*] [host] content.sans.org (<blank>)
[*] [host] isc11.sans.org (<blank>)
[*] Searching Google for: site:sans.org -site:securingthehuman.sans.org -site:software-security.sans.org -site:www.sans.org -site:isc.sans.org -site:uk.sans.org -site:ics.sans.org -site:sic.sans.org -site:handlers.sans.org -site:www3.sans.org -site:cyber-defense.sans.org -site:pen-testing2.sans.org -site:isc2.sans.org -site:pen-testing.sans.org -site:lists.sans.org -site:access.sans.org -site:leam.sans.org -site:digital-forensics.sans.org -site:isc1.sans.org -site:files.sans.org -site:blogs.sans.org -site:content.sans.org -site:isc11.sans.org

------------
WWW.SANS.ORG
------------
<saída suprimida>

-------
SUMMARY
-------
[*] 22 total (13 new) hosts found.
[recon-ng][sans][google_site_web] > query select host from hosts

  +----------------------------+
  |            host            |
  +----------------------------+
  | ics.sans.org               |
  | securingthehuman.sans.org  |
  | blogs.sans.org             |
  | content.sans.org           |
  | www3.sans.org              |
  | handlers.sans.org          |
  | digital-forensics.sans.org |
  | www.sans.org               |
  | files.sans.org             |
  | software-security.sans.org |
  | isc.sans.org               |
  | uk.sans.org                |
  | sic.sans.org               |
  | cyber-defense.sans.org     |
  | pen-testing2.sans.org      |
  | isc2.sans.org              |
  | pen-testing.sans.org       |
  | lists.sans.org             |
  | access.sans.org            |
  | leam.sans.org              |
  | isc1.sans.org              |
  | isc11.sans.org             |
  +----------------------------+

Ótimo!  Conseguimos uma lista de hosts e seus nomes.  Mas, e que tal conseguir os endereços IP e as portas em uso de cada um?  Isto poderia ser mais útil, certo?  Adivinhe:  a API do Shodan pode fazer isso por nós.  E, de novo, você precisará de uma chave de API para usar o módulo correspondente (recon/domains-hosts/shodan_hostname).  Desta vez, imagino que você já seja um mestre de APIs. 😉

Este módulo busca informações de hosts na base de dados do Shodan e atualiza a tabela “hosts”, bem como a tabela “ports” com os dados coletados.  Portanto, adicione sua chave de API Shodan com o comando “keys” e deixe o módulo fazer o trabalho dele:

[recon-ng][sans] > keys add shodan_api <coloque sua chave aqui>
[recon-ng][sans] > use recon/domains-hosts/shodan_hostname 
[recon-ng][sans][shodan_hostname] > show info

      Name: Shodan Hostname Enumerator
      Path: modules/recon/domains-hosts/shodan_hostname.py
    Author: Tim Tomes (@LaNMaSteR53)
      Keys: shodan_api

Description:
  Harvests hosts from the Shodan API by using the 'hostname' search operator. Updates the 'hosts'
  table with the results.

Options:
  Name    Current Value  Required  Description
  ------  -------------  --------  -----------
  LIMIT   1              yes       limit number of api requests per input source (0 = unlimited)
  SOURCE  default        yes       source of input (see 'show info' for details)

Source Options:
  default        SELECT DISTINCT domain FROM domains WHERE domain IS NOT NULL
  <string>       string representing a single input
  <path>         path to a file containing a list of inputs
  query <sql>    database query returning one column of inputs

[recon-ng][sans][shodan_hostname] > run

--------
SANS.ORG
--------
[*] Searching Shodan API for: hostname:sans.org
[*] [port] 66.35.59.13 (25/<blank>) - smtp21a.sans.org
[*] [host] smtp21a.sans.org (66.35.59.13)
[*] [port] 66.35.59.249 (80/<blank>) - isc.sans.org
[*] [host] isc.sans.org (66.35.59.249)
[*] [port] 204.51.94.234 (80/<blank>) - software-security.sans.org
[*] [host] software-security.sans.org (204.51.94.234)
[*] [port] 204.51.94.223 (80/<blank>) - dev.sans.org
[*] [host] dev.sans.org (204.51.94.223)
[*] [port] 204.51.94.206 (80/<blank>) - 204-51-93-206.clp.sans.org
[*] [host] 204-51-93-206.clp.sans.org (204.51.94.206)
<output omitted>

------------
WWW.SANS.ORG
------------
[*] Searching Shodan API for: hostname:www.sans.org
[*] [port] 66.35.59.202 (80/<blank>) - www.sans.org
[*] [host] www.sans.org (66.35.59.202)

-------
SUMMARY
-------
[*] 56 total (54 new) hosts found.
[*] 56 total (55 new) ports found.
[recon-ng][sans][shodan_hostname] > query select host, ip_address, module from hosts

  +----------------------------------------------------------------+
  |            host            |    ip_address   |      module     |
  +----------------------------------------------------------------+
  | securingthehuman.sans.org  |                 | google_site_web |
  | software-security.sans.org |                 | google_site_web |
  | www.sans.org               |                 | google_site_web |
  | isc.sans.org               |                 | google_site_web |
  | pages.sans.org             |                 | google_site_web |
  | uk.sans.org                |                 | google_site_web |
  | ics.sans.org               |                 | google_site_web |
  | sic.sans.org               |                 | google_site_web |
  | handlers.sans.org          |                 | google_site_web |
  | www3.sans.org              |                 | google_site_web |
  | cyber-defense.sans.org     |                 | google_site_web |
  | lists.sans.org             |                 | google_site_web |
  | pen-testing2.sans.org      |                 | google_site_web |
  | isc2.sans.org              |                 | google_site_web |
  | pen-testing.sans.org       |                 | google_site_web |
  | survey.sans.org            |                 | google_site_web |
  | digital-forensics.sans.org |                 | google_site_web |
  | leam.sans.org              |                 | google_site_web |
  | access.sans.org            |                 | google_site_web |
  | isc1.sans.org              |                 | google_site_web |
  | files.sans.org             |                 | google_site_web |
  | blogs.sans.org             |                 | google_site_web |
  | content.sans.org           |                 | google_site_web |
  | isc11.sans.org             |                 | google_site_web |
  | smtp21a.sans.org           | 66.35.59.13     | shodan_hostname |
  | isc.sans.org               | 66.35.59.249    | shodan_hostname |
  | software-security.sans.org | 204.51.94.234   | shodan_hostname |
  | dev.sans.org               | 204.51.94.223   | shodan_hostname |
  | 204-51-93-206.clp.sans.org | 204.51.94.206   | shodan_hostname |
<saída suprimida>
[recon-ng][sans][shodan_hostname] > query select ip_address, host, port, module from ports

  +-----------------------------------------------------------------------+
  |    ip_address   |            host            | port |      module     |
  +-----------------------------------------------------------------------+
  | 66.35.59.13     | smtp21a.sans.org           | 25   | shodan_hostname |
  | 66.35.59.249    | isc.sans.org               | 80   | shodan_hostname |
  | 204.51.94.234   | software-security.sans.org | 80   | shodan_hostname |
  | 204.51.94.223   | dev.sans.org               | 80   | shodan_hostname |
  | 204.51.94.206   | 204-51-93-206.clp.sans.org | 80   | shodan_hostname |
<saída suprimida>

O restante dos endereços IP que estão faltando na tabela “hosts” pode ser obtido com o módulo “resolve” (recon/hosts-hosts/resolve).  Simplesmente carregue e execute.

Se você não está satisfeito com hostnames, endereços IP e portas, você pode ir ainda mais além, encontrando a localização física dos hosts.  Isso pode ser conseguido com o módulo “freegeoip” (recon/hosts-hosts/freegeoip):

[recon-ng][sans][shodan_net] > use recon/hosts-hosts/freegeoip
[recon-ng][sans][freegeoip] > show info

      Name: FreeGeoIP
      Path: modules/recon/hosts-hosts/freegeoip.py
    Author: Gerrit Helm (G) and Tim Tomes (@LaNMaSteR53)

Description:
  Leverages the freegeoip.net API to geolocate a host by IP address. Updates the 'hosts' table with the results.

Options:
  Name       Current Value         Required  Description
  ---------  -------------         --------  -----------
  SERVERURL  http://freegeoip.net  yes       overwrite server url (e.g. for local installations)
  SOURCE     default               yes       source of input (see 'show info' for details)

Source Options:
  default        SELECT DISTINCT ip_address FROM hosts WHERE ip_address IS NOT NULL
  <string>       string representing a single input
  <path>         path to a file containing a list of inputs
  query <sql>    database query returning one column of inputs

Comments:
  * Allows up to 10,000 queries per hour by default. Once this limit is reached, all requests will
  result in HTTP 403, forbidden, until the quota is cleared.

[recon-ng][sans][freegeoip] > run
[*] 204.51.94.212 - 39.006,-77.1026 - Bethesda, Maryland, United States
[*] 204.51.94.234 - 39.006,-77.1026 - Bethesda, Maryland, United States
[*] 45.60.37.34 - 37.5331,-122.2471 - Redwood City, California, United States
[*] 66.35.59.249 - 39.006,-77.1026 - Bethesda, Maryland, United States
[*] 13.111.23.20 - 39.7724,-86.16 - Indianapolis, Indiana, United States
<saída suprimida>

[recon-ng][sans][freegeoip] > query select host, region, latitude, longitude from hosts


  +------------------------------------------------------------------------------+
  |            host            |          region          | latitude | longitude |
  +------------------------------------------------------------------------------+
  | securingthehuman.sans.org  | Bethesda, Maryland       | 39.006   | -77.1026  |
  | software-security.sans.org | Bethesda, Maryland       | 39.006   | -77.1026  |
  | www.sans.org               | Redwood City, California | 37.5331  | -122.2471 |
  | isc.sans.org               | Bethesda, Maryland       | 39.006   | -77.1026  |
  | pages.sans.org             | Indianapolis, Indiana    | 39.7724  | -86.16    |
<saída suprimida>

 

Exportando os resultados

Como mencionei no primeiro post desta série, o Recon-NG armazena todos os resultados obtidos em bancos de dados.  Ele usa o SQLite.  Os bancos ficam localizados no diretório home do usuário que executou a ferramenta (diretório .recon-ng, subdiretório workspaces, subdiretório com o nome do workspace).  Eu sei que você pode gostar de trabalhar diretamente com sintaxe SQL dentro da ferramenta.  No entanto, você pode necessitar exportar os dados do projeto para usá-los num relatório ou qualquer outro software, ou mesmo para vê-los de uma forma mais sofisticada.  E, adivinhe, você pode.  Isto é feito pelo módulo “reporting”.  Procure pelo termo dentro do Recon-NG para descobrir quais são os formatos disponíveis:

[recon-ng][sans] > search report
[*] Searching for 'report'...
  Reporting
  ---------
    reporting/csv
    reporting/html
    reporting/json
    reporting/list
    reporting/proxifier
    reporting/pushpin
    reporting/xlsx
    reporting/xml

Vamos exportar nossos resultados para HTML e abri-los.  Este módulo também possui opções.  Defini o criador do módulo como eu mesmo e o “cliente” a receber este relatório como a PenTest Magazine:

[recon-ng][sans] > use reporting/html
[recon-ng][sans][html] > show info

      Name: HTML Report Generator
      Path: modules/reporting/html.py
    Author: Tim Tomes (@LaNMaSteR53)

Description:
  Creates a HTML report.

Options:
  Name      Current Value                                           Required  Description
  --------  -------------                                           --------  -----------
  CREATOR                                                           yes       creator name for the report footer
  CUSTOMER                                                          yes       customer name for the report header
  FILENAME  /home/mauricio/.recon-ng/workspaces/sans/results.html  yes       path and filename for report output
  SANITIZE  True                                                    yes       mask sensitive data in the report

[recon-ng][sans][html] > set creator Mauricio Harley
CREATOR => Mauricio Harley
[recon-ng][sans][html] > set customer PenTest Magazine
CUSTOMER => PenTest Magazine
[recon-ng][sans][html] > run
[*] Report generated at '/home/mauricio/.recon-ng/workspaces/sans/results.html'.

E aqui está ele:

Relatório HTML

Você pode observar que há muitas outras possibilidades com as quais trabalhar, como locations, netblocks, credentials, pushpins e assim por diante.  Muitas destas tabelas são preenchidas com a combinação dos módulos “whois_miner”, “geocode” e “reverse_geocode”.  Alguns deles precisam da carga de módulos situados em outras categorias que não a “Recon”.

 

Bônus:  Ferramentas Adicionais

Vimos vários recursos do Recon-NG até aqui, na versão padrão dele, baseada em prompt.  Entretanto, há outros componentes do pacote que merecem menção.

Se você precisar transformar seu trabalho de OSINT em algo mais automatizado, construindo scripts para interagir com outros scripts ou programas, o Recon-NG pode fazer isso.  E o software em questão é o “recon-cli“.  Invoque-o com a opção de help para ver as possibilidades:

$ ./recon-cli -h
usage: recon-cli [-h] [-v] [-w workspace] [-C command] [-c command] [-G]
                 [-g name=value] [-M] [-m module] [-O] [-o name=value] [-x]
                 [--no-check]

recon-cli - Tim Tomes (@LaNMaSteR53) tjt1980[at]gmail.com

optional arguments:
  -h, --help     show this help message and exit
  -v, --version  show program's version number and exit
  -w workspace   load/create a workspace
  -C command     runs a command at the global context
  -c command     runs a command at the module context (pre-run)
  -G             show available global options
  -g name=value  set a global option (can be used more than once)
  -M             show modules
  -m module      specify the module
  -O             show available module options
  -o name=value  set a module option (can be used more than once)
  -x             run the module
  --no-check     disable version check

Portanto, dá para executar um módulo com todo seu conjunto de opções e receber os resultados diretamente na tela.  Ou, você pode querer redirecionar a saída para outro comando do shell, ou mesmo exportar para um arquivo.  Fica a seu critério.  Vamos fazer um teste com um módulo que ainda não usamos:  CensysIO.  Este módulo verifica a base de dados pública da Censys usando sua própria API e executa a enumeração do alvo baseado na tabela “netblocks”.  Esta tabela já foi preenchida por um dos módulos que usamos anteriormente.  Assim, comece fornecendo seu ID e secret da Censys.  Por último, execute o módulo:

$ ./recon-cli -C "keys add censysio_id <Minha ID da Censys>"
GLOBAL COMMAND => keys add censysio_id <Minha ID da Censys>
[*] Key 'censysio_id' added.
[*] No module provided.

$ ./recon-cli -C "keys add censysio_secret <Meu Secret da Censys>"
GLOBAL COMMAND => keys add censysio_secret <Meu Secret da Censys>
[*] Key 'censysio_secret' added.
[*] No module provided.

$ ./recon-cli -w sans -m recon/netblocks-ports/censysio -x
WORKSPACE => sans
MODULE => recon/netblocks-ports/censysio

--------------
70.91.145.8/29
--------------
[*] [port] 70.91.145.12 (443/https) - <blank>
[*] [port] 70.91.145.12 (80/http) - <blank>
[*] [port] 70.91.145.14 (8080/http) - <blank>
[*] [port] 70.91.145.11 (2323/telnet) - <blank>
[*] [port] 70.91.145.11 (8080/http) - <blank>
[*] [port] 70.91.145.10 (25/smtp) - <blank>
[*] [port] 70.91.145.9 (80/http) - <blank>
[*] [port] 70.91.145.9 (443/https) - <blank>
[*] [port] 70.91.145.9 (53/dns) - <blank>

-------
SUMMARY
-------
[*] 9 total (9 new) ports found.

Agora, o que você acabou de fazer foi executar um port scan sem enviar um único pacote para o alvo.  Excelente!  O comportamento deste módulo pode ser ligeiramente alterado se você configurar a opção “source” para especificar uma query SQL que aponta para os hosts, em vez do netblock inteiro.  Isto pode levar bem mais tempo que a execução anterior.

O segundo componente que eu gostaria de apresentar é o “recon-rpc“.  Ele permite que o Recon-NG escute na porta 4141 do TCP, esperando por conexões locais ou remotas.  Assim, você pode iniciar este serviço e implementar sua própria aplicação para interagir com o Recon-NG através de RPC.  Na verdade, já existe uma aplicação web criada em PHP que faz justamente isto.  Você pode conferi-la aqui.

$ ./recon-rpc
[+] Serving on 0.0.0.0:4141

E a última, mas não menos importante é a “recon-web“.  Isso mesmo!  Você achava que não havia interface gráfica, mas aqui está ela!  Quando você a carrega a partir do shell, um servidor web inicia e passa a escutar requests na porta 5000 do TCP.  Assim, simplesmente abra um browser e aproveite seus workspaces no Recon-NG gráfico.  Aqui, você pode navegar entre seus projetos e conferir os resultados obtidos.

$ ./recon-web
*************************************************************************
 * Welcome to Recon-web, the analytics and reporting engine for Recon-ng!
 * This is a web-based user interface. Open the following URL in your browser to begin.
 * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)

Interface Web do Recon-NG

 

Conclusão

O Recon-NG é de longe uma das ferramentas de segurança mais interessantes com as quais já trabalhei.  Sendo completamente open source, ele motiva desenvolvedores a construir e liberar mais código, o que torna o projeto ainda maior e mais poderoso.  Definitivamente, o Recon-NG preenche os requisitos de OSINT.

Se você quiser testar módulos adicionais não incluídos por default, visite este site.  Boa exploração!

 

Dicas de Leitura

Abaixo, dicas de leitura para complementar esta série de posts.

  • Livro OSINT Techniques and Tools, de Michael Bazzell – O livro aborda diversas fontes abertas de informação (como redes sociais, motores de busca, mapas, entre outros), com tipos de documentos que podem ser obtidos a partir de cada uma.  Também trata de APIs, add-ons para browsers e outras ferramentas úteis;
  • Open Source Intelligence – Tools and Resources Handbook, da i-Intelligence – Documento criado pela i-Intelligence, firma de consultoria suíça, com numerosos links cobrindo diversas áreas diferentes de OSINT.  Cada categoria, como Investigação de Pessoas, Mídias Sociais, Busca de Código, entre várias outras, vem acompanhada por diversos URLs de referência;
  • Open Source Intelligence Gathering 101 – Este site traz diversas técnicas de open source intelligence explicadas de forma sucinta.  Alguns conceitos, como Google Dorks, WHOIS, arquivos texto de servidores web, entre outras são apresentadas com capturas de tela para ilustrar seu uso.
Compartilhe:

Maurício Harley

Olá! Meu nome é Maurício Harley. Tenho mais de 20 anos de experiência em Tecnologia da Informação. Durante minha carreira, trabalhei em setores diversos, como suporte a usuário final, manutenção de hardware, instalação e suporte a redes de computadores, programação, projetos avançados em Data Center, Cloud Computing, Cyber Security e Redes, incluindo Service Providers.

0 comentário

Deixe um comentário

Avatar placeholder

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Translate

You cannot copy content of this page.