E ai suave na nave ou na shell?!
Depois de um tempo parado volto com os estudos de OSINT, mas agora focando na enumeração de infraestrutura e especificamente enumeração de aeroportos / aeródromos internacionais contexto Brasil. minha ideia inicial era achar alguma fonte aberta e depois converter tais dados em algo palpável e compreensível para até mesmo um leigo. bom nada melhor que um mapa referenciado por geolocalização.
Tenho conhecimento que existe uma fonte pública disponibilizada pela ANAC, mas queria uma POC um pouco mais elaborada.
Algumas definições de acordo com Agência Nacional de Aviação Civil ( ANAC ):
- Aeródromo é toda área destinada a pouso, decolagem e movimentação de aeronaves.
- Helipontos são os aeródromos destinados exclusivamente a helicópteros.
- Aeroportos são os aeródromos públicos dotados de instalações e facilidades para apoio de operações de aeronaves e de embarque e desembarque de pessoas e cargas.
- Heliportos são os helipontos públicos dotados de instalações e facilidades para apoio de operações a helicópteros e de embarque e desembarque de pessoas e cargas.
O vertiginoso crescimento da Internet e a popularização dos meios de acesso às diversas fontes de informação tornaram públicas quantidades sem precedentes de informações. A sistematização do uso dessas informações, sua organização, interpretação e análise podem ser de grande valia em qualquer atividade, seja civil ou militar, pública ou privada. O governo, em especial, tem a possibilidade de relacionar as fontes abertas com os seus próprios bancos de dados
Observação foi feita pelo professor Eduardo Moresi em Estudo sobre Portais Públicos como fontes confiáveis para inteligência de Fontes Abertas .
O que é infraestrutura?
Segundo meu amado wikipedia: " Infraestrutura, na sua acepção mais alta, pode ser definido como um conjunto de elementos estruturais que enquadram e suportam toda uma estrutura. O termo possui diversas acepções em diferentes campos, mas o mais comum é o referente aos sistemas viários, de saneamento e de fornecimento de energia de uma cidade ou região. "
A infraestrutura do pais pode ser segmentada em:

Foi possível identificar um primeiro host alfa.aer.mil.br que traz strings interessantes "alfa" e "aer". seguinte a premissa "Prego que se destaca é martelado". Agora próximo passo é usar tal conceito formato para buscar alguma informação indexada, mas agora aplicando no Google Hacking e concatenando com a keyword "radar".
- Saneamento
- Transporte
- Energia
- Telecomunicação
WARNING - 0
Vamos focar no segmento de transportes que contém a categoria aeroportos. lembrando que o intuito não é mostrar "vulnerabilidades", mas uma visualização compreensível dos dados coletados na enumeração inicial de infraestrutura baseada usando OSINT.
WARNING - 1
Sim! tenho conhecimento que os dados de geolocalização dos aeródromos podem ser encontrados em repos do governo, mas o intuito é pegar tais informações de forma não convencional.
WARNING - 2
No decorrer da coleta de informação será atribuído IDs para segmentar cada evidência e referenciá-las em outras partes do texto.
Para dar start a busca devemos estabelecer um raciocínio referente ao target( Aeroportos || Aerodrome), que seria relacionar palavras chaves ao contexto escolhido. Descobrir quem é a autoridade do pais responsável por tal segmento. no caso selecionei a "fab.mil.br" e referente a palavra chave para dificultar um pouco usei a keyword "radar".
- *.fab.mil.br
- "radar"
Usando a ferramenta DNSdumpster para enumerar um host interessante que entra no contexto que procuramos.
FLOW:

Foi possível identificar um primeiro host alfa.aer.mil.br que traz strings interessantes "alfa" e "aer". seguinte a premissa "Prego que se destaca é martelado". Agora próximo passo é usar tal conceito formato para buscar alguma informação indexada, mas agora aplicando no Google Hacking e concatenando com a keyword "radar".
Baseado nas informações de input foi ótimo o resultado, e tal plataforma REDEMET é um ponto promissor que será seguido.
REDEMET A Rede de Meteorologia do Comando da Aeronáutica tem como objetivo integrar os produtos meteorológicos voltados à aviação civil e militar, visando tornar o acesso a estas informações mais rápido, eficiente e seguro.
- https://www.redemet.aer.mil[.]br/old/index.php?i=produtos&p=radares-meteorologicos
Dentro da plataforma REDEMET é possível enumerar duas interfaces uma "OLD" e a de uso atual.
- https://www.redemet.aer.mil[.]br/old/index.php
- https://www.redemet.aer.mil[.]br/old/monitoramento/
De acordo com a evidência B02 é possível acessar um novo painel de monitoramento.
- https://redemet.decea.gov[.]br/novo/
Usando o modo desenvolvedor do navegador é possível identificar uma serie de request e um em especial traz informações no formato json e valores semelhantes ao de geolocalização, nome de um possível aeródromo.
- https://api-redemet.decea.mil[.]br/aerodromos/status?pais=argentina,bolivia,brasil,chile,colombia,ecuador,guyana,paraguay,peru,surinam,uruguay,venezuela&api_key=???
Output do api request
Com os dados em mãos vamos normalizar e enriquecer para criar nosso mapa, para essa primeira fase fiz um script e python que deixou no formato CSV.
Nesse processo de normalização dos dados, simplesmente fiz uma leitura do arquivo JSON e criei campos "fictícios" que faziam sentido para o contexto da informação coletada.
ENRIQUECENDO OS DADOS
Com os valores de geolocalização usei a lib Nominatim para extrair endereços das posições Latitude e Longitude.
Nominatim (do latim, 'por nome') é uma ferramenta para pesquisar dados do OpenStreetMap por nome e endereço (geocodificação) e para gerar endereços sintéticos de pontos OSM (geocodificação reversa). Uma instância com dados atualizados pode ser encontrada em https://nominatim.openstreetmap.org. Nominatim também é usado como uma das fontes para a caixa de pesquisa na página inicial do OpenStreetMap.
O output de cada consulta.
{
'place_id': 61698631,
'licence': 'Data © OpenStreetMap contributors, ODbL 1.0. https: //osm.org/copyright',
'osm_type': 'node',
'osm_id': 5534337024, 'lat': '-31.3242105', 'lon': '-64.2100051',
'display_name': '36, Avenida La Voz del Interior, Córdoba, Municipio de Córdoba, Pedanía Capital, Departamento Capital, Córdoba, X5000, Argentina',
'address': {'aeroway': '36',
'road': 'Avenida La Voz del Interior',
'city': 'Córdoba',
'municipality': 'Municipio de Córdoba',
'county': 'Pedanía Capital',
'state_district': 'Departamento Capital',
'state': 'Córdoba',
'postcode': 'X5000',
'country': 'Argentina',
'country_code': 'ar'},
'boundingbox': ['-31.3242605', '-31.3241605', '-64.2100551', '-64.2099551']
}
E para essa consulta automatizada criei um script em python.
Dados enriquecidosCRIANDO O MAP
Com todos dados normalizados e enriquecidos, chegamos a reta de criar nosso mapa para visualizar as informações. neste processo vamos usar a lib folium.
O Folium se baseia nos pontos fortes da organização de dados do ecossistema Python e nos pontos fortes do mapeamento da biblioteca Leaflet.js. Manipule seus dados em Python e visualize-os em um mapa via Folium.
O processo de consolidação do mapa é feito com script map_folium onde adicionei diversas personalização CSS para melhor expor as informações.
Dentro do script criei uma rotina que muda o ícone de "alvos" mais importantes que seriam aeroportos internacionais.
FLUXO DA COLETA DE INFORMAÇÕES:
PDF onde tem cada passo tomado na coleta e analise das informações.
VISUALIZAR TODO FLUXO VIA MIRO BOARD
REF
- https://www.anac.gov.br/acesso-a-informacao/dados-abertos/areas-de-atuacao/aerodromos/lista-de-aerodromos-privados
- https://www.anac.gov.br/acesso-a-informacao/dados-abertos/areas-de-atuacao/aerodromos/lista-de-aerodromos-publicos-v2
- https://dados.gov.br/dataset/lista-de-aerodromos-publicos-v2
- https://www.gov.br/anac/pt-br/assuntos/regulados/aerodromos
- https://www.gov.br/anac/pt-br/assuntos/regulados/aerodromos/lista-de-aerodromos-civis-cadastrados
- https://pt.wikipedia.org/wiki/Aer%C3%B3dromo
- https://www.convertcsv.com/json-to-csv.htm
- https://developers.google.com/maps/documentation/urls/get-started
Post feito ao som de:
Comentários
Postar um comentário