You are on page 1of 6

IPGeoMap: Application for Geolocation of Internet

Addresses
Rodrigo Colli

Maristela Holanda

Aletia P. F. Arajo

Centro de Trat. de Inc. de Segurana


de Redes de Computadores da
Administrao Pblica - CTIR Gov
Presidncia da Repblica
Braslia, Brasil
rodrigo.colli@planalto.gov.br

Dep. de Cincia da Computao


Universidade de Braslia
Braslia, Brasil
mholanda@cic.unb.br

Dep. de Cincia da Computao


Universidade de Braslia
Braslia, Brasil
aleteia@cic.unb.br

AbstractNa Internet, On the Internet, the devices are addressed


through their IP addresses, however, the IP is linked to its
physical location. This article presents the IPGeoMapweb
software capable of geographically locating IP addresses,
quantifying them, classifying them and presenting the results of
these operations on a map. The proposal for the IPGeoMap is
that it serve as a support software in the decision making process,
considering that it is proposed to provide a general vision in
situations that involve the need for elaborating a map of
geographic distribution tendencies and patterns of Internet
addresses. The IPGeoMap was applied to the mapping of attacks
(different types of malware) on Brazilian governmental
organizations.
Keywords- IP geolocalizao, software web, Visualizao de
Mapas, GeoMap

I.

INTRODUO

Os endereos de dispositivos na Internet, os endereos IP,


ao contrrio do que ocorre com os endereos convencionais,
como os residenciais e comerciais, no trazem consigo a
associao de localizao fsica geogrfica.
A geolocalizao a tcnica de associar um recurso ao seu
respectivo local fsico na Terra [1]. Nesse artigo tratado o
tema de geolocalizao de IP, onde um endereo IP associado
a uma localizao geogrfica que pode conter informaes, tais
como, pas de origem, regio, cidade, provedor de acesso,
latitude, longitude e fuso horrio.
Nesse ambiente, esse trabalho apresenta a especificao e a
implementao de um aplicativo para realizar a geolocalizao
de um grupo endereos de Internet IPv4. O intuito do sistema
permitir uma viso geral e gerencial sobre a distribuio
geogrfica dos IPs. Esse software recebeu o nome de
IPGeoMap. Esse nome oriundo da concatenao dos termos
IP, que o endereo de Internet; Geo, da tcnica de
geolocalizao e Geomap[3], que o nome da API do
Google utilizada para gerar os mapas.
O artigo continua com as seguintes sees: Seo 2, so
apresentados os conceitos fundamentais da geolocalizao de
IP; Seo 3 o IPGEo descrito, a sua arquitetura abstrata,
definio de cada mdulo e sua implementao; Seo 4 os
resultados obtidos so apresentados atravs de um estudo de
caso; na Seo 5 uma anlise comparativa com trabalhos

relacionados apresentada; e por fim, na Seo 6 as


concluses.
II.

GEOLOCALIZAO DE IP

A geolocalizao a tcnica de adicionar metadados


geogrficos aos dispositivos digitais. Esses dados consistem
geralmente em latitude e longitude, embora se possa incluir a
altitude, direo, distncia, a acurcia dos dados e nomes de
lugares [1].
A geolocalizao de IP permite determinar a localizao
geogrfica de endereos IP. As bases de dados de localizao
de IP podem descrever informaes como pas de origem,
regio, cidade, provedor de acesso, latitude, longitude e fuso
horrio. O nvel de detalhamento da geolocalizao pode variar
de acordo com a base de dados utilizada e tambm para cada
RIR1, por causa do modo de operao de cada entidade.
Por causa da estrutura hierarquizada de distribuio de IPs,
a fonte primria de coleta de dados sobre blocos de endereos
IP so os RIRs. Como fonte secundria, os bancos de dados de
geolocalizao podem valer-se de: minerao de dados, do
envio de informaes geogrficas pelo prprio usurio de
Internet (muito usado, por exemplo, por usurios de redes
sociais e de smartphones equipados com receptores GPS,
wireless ou com capacidade de triangulao de torres de
celular) permitindo vincular o IP do usurio ao seu respectivo
local fsico, do recebimento de dados de fornecedores de
servios de Internet e outros.
Existem empresas especializadas em coleta de informaes
de alocao de blocos de endereos IP. Elas oferecem, de
forma onerosa ou gratuita, essas informaes em bancos de
dados consolidados. Essas bases normalmente possuem
coordenadas geogrficas de latitude e longitude do IP ou outras
informaes que viabilizam o posicionamento geogrfico do
IP. Por isso, possvel determinar o pas, regio, cidade, dentre
1
A IANA (Internet Assigned Numbers Authority), em desempenho de sua
funo de coordenao global dos sistemas de endereamento de IP, delega
cadastrados locais de nmeros IP para os RIRs (Regional Internet Registry).
Cada RIR aloca endereos para uma regio diferente do mundo: ARIN
responsvel pela Amrica do Norte; LACNIC, America Latina e Caribe; RIPE
NCC Europa, Oriente Mdio e Central; AfriNic, frica; APNIC, sia e
Pacfico

outras informaes de um IP. Dessa forma, pode-se posicionar


geograficamente o IP at o nvel de cidade. Os bancos de dados
disponveis normalmente catalogam apenas endereos IPv4.
Isso ocorre porque o Ipv4 ainda a verso do protocolo IP
predominantemente utilizada [6].
Os bancos de dados oferecidos normalmente apresentam
exatido em torno de 99.5% de acurcia para geolocalizao de
pas e 80% de acurcia para cidades dos EUA [7]. No caso do
Brasil, o nvel de exatido para cidade est em torno de 67%
[8].
III. TRABALHOS RELACIONADOS
A maioria dos produtos similares ao IPGeoMap disponveis
no mercado so produtos fechados. Normalmente so
projetados para funcionar em aplicaes especficas como
servidor web, firewall, proxy e outros. Alm disso, quase
sempre necessitam que seja permitido acesso aos arquivos do
servio monitorado ou que algum cdigo seja instalado na
aplicao servidora, o que, e em alguns casos, pode representar
um risco segurana da aplicao ou das informaes. Nessa
linha, pode-se citar ferramentas como a IP Tracing e IP
Tracking[18] que server para geolocalizar um nico IP por vez
sem permitir a visualizao desse IP em um contexto maior.
Outras ferramentas comparveis so: o Google
Analytics[11], Awstats[12] e Webalizer[13]. Essas so
aplicaes utilizadas para gerar estatsticas de acesso aos stios
de Internet e, entre os diversos relatrios gerados por elas esto
os de geolocalizao. Observa-se que essas aplicaes possuem
propsitos especficos e so empregveis apenas nesses casos.
Alm disso, podem requerer acesso aos arquivos do servidor ou
exigir a instalao de cdigo dentro da aplicao, como o
caso do Google Analytics.
J a ferramenta Web Log Explorer[14] um aplicativo para
anlise de diversos tipos e padres de logs de aplicaes como
servidores web, de e-mail, firewall, proxy, entre outras. Entre
os relatrios gerados esto tambm os de geolocalizao.
uma ferramenta de uso abrangente e genrico, se comparada
com as outras mencionadas. Contudo, alm de ser uma
ferramenta paga, trabalha apenas com dados em tabelas, ou
seja, no gera mapas. A proposta do IPGeoMap ter uma
flexibilidade de gerar graficamente, atravs de mapas a
distribuio de grupo de dados em uma determinada regio.
Observa-se ento que o IPGeoMap, como apresentado na
prxima seo, possui funcionalidades e caractersticas que o
diferencia das demais aplicaes de geolocalizao
disponveis. uma ferramenta livre e com cdigo fonte aberto,
o que permite que novas funcionalidades sejam agregadas. No
requer acesso privilegiado aos arquivos de qualquer servio ou
aplicativo. A geolocalizao gerada por ele no se restringe
apenas aos dados de localizao geogrfica. Alm disso,
permite que o usurio aplique uma srie de filtros aos dados
para uma melhor compreenso e interpretao dos resultados.
IV. IPGEOMAP
O objetivo do IPGeoMap realizar a geolocalizao de
uma lista de endereos IP, para que seja possvel agrup-los,
contabiliz-los e quantific-los, por localidade e, em seguida,
mostrar o resultado em um mapa temtico coropltico ou de

marcadores. Dessa forma, o software permite identificar


padres e observar tendncias acerca de um conjunto de IPs,
por meio da exibio da disposio geogrfica desses
endereos de Internet. O resultado desses estudos pode
subsidiar e facilitar o processo de tomada de deciso. Outro
objetivo do trabalho foi basear o desenvolvimento do sistema
em software livres, com o intuito de viabilizar o seu
desenvolvimento em ambiente acadmico e diminuir custos.
O IPGeoMap foi idealizado para ser utilizado por aplicaes
em diferentes contextos, como por exemplo:

Em segurana da informao, por exemplo, pode-se


utilizar o IPGeoMap para melhor compreender ataques
cibernticos, disseminao de spam, distribuio,
origem e operao de cdigos, programas e sites
maliciosos.

Em aplicaes de comrcio eletrnico, a partir dos logs


do servidor web, por exemplo, pode-se verificar a
demanda do mercado consumidor e, em decorrncia
disso, melhor distribuir os produtos e publicidade de
uma rede varejista. Pode-se detectar se uma regio
possui interesse por um produto que ainda no est
disponvel para aquela localidade. Em outro caso,
tambm a partir dos logs do servidor web, possvel
verificar o nvel de interesse por um determinado
produto em uma regio especfica para determinar as
prioridades de abertura de revendedor autorizado,
como, por exemplo, uma concessionria de
automveis.

Em apoio s aplicaes de Comando e Controle, por


exemplo, pode-se configurar o IPGeoMap para ser
alimentada por um firewall ou outros dispositivos de
segurana em um centro de operaes e
monitoramento de rede. Nesse cenrio, o IPGeoMap
permite a visualizao simplificada da situao da rede
e dos equipamentos de infraestrutura monitorados.

No objetivo do IPGeoMap determinar a localizao


geogrfica de um IP isoladamente, de forma individual. Por
outro lado, o objetivo da ferramenta posicionar
geograficamente uma lista de IPs quer seja oriundos de um
firewall, proxy, servidor web, servidor de e-mail, ou uma
juno desses sistemas, ou ainda de qualquer outra fonte, para
verificar o comportamento da distribuio geogrfica e
quantitativa do conjunto.
A. Arquiettura do IPGeoMap
A arquitetura abstrata do IPGeoMap ilustrada na Figura 1
composta por trs grandes mdulos: camada de interface
responsvel pela interao com o usurio e gerao dos mapas;
a camada de aplicao responsvel por buscar, agrupar,
classificar e quantificar os dados; e por fim a camada de
persistncia responsvel por todo tratamento e armazenamento
do dados. Cada um desses mdulos descrito a seguir.
A camada de interface interage com o navegador web do
usurio. Ao acessar a pgina inicial da aplicao, o usurio
recebe um formulrio para configurao do filtro da consulta
dos IPs e configurao da aparncia do mapa de sada. Nessa

camada tambm gerado o mapa de resposta solicitao do


usurio.
A camada de aplicao recebe o formulrio enviado pelo
usurio, valida os dados informados e executa a consulta na
base de dados. Em seguida, os IPs so agrupados, classificados,
quantificados e geolocalizados de acordo com o filtro de
consulta. Por ltimo, a camada de aplicao prepara e retorna
os dados e os parmetros de exibio do mapa de acordo com o
formato especificado pela Geomap API.

de dados IPInfoDB para adequ-la s necessidades de


desempenho e de arquitetura do projeto. Para gerar o mapa no
navegador do usurio, foi utilizada, na camada de interface, a
Geomap API do Google. Cada mdulo do IPGeoMap foi
implementado conforme descrio na Tabela 1.

Figura 2: Arquitetura de funcionamento do IPGeoMap


TABELA 1 M DULOS DO IPGEOM AP

Figura 1. Arquitetura Abstrata do IPGeoMap

Mdulo

Descrio

Tecnologias
Utilizadas

Formulrio

Recebe do usurio os parmetros para


filtrar os IPs e para configurar a
aparncia do mapa
responsvel por gerar o mapa no
navegador. Aps receber os valores a
serem apresentados e os parmetros de
configurao do mapa, esse mdulo
aciona a Geomap API do Google para
que ela gere o mapa. A Geomap um
dos tipos de visualizao (um dos tipos
de grfico) da API de grficos
interativos do Google. Por meio da
Geomap possvel gerar mapas
temticos2 de um continente, pas, ou de
uma regio, com as cores e os valores
atribudos aos locais escolhidos. O mapa
processado no navegador web, por
meio do plugin para Flash Player [10]
Filtra e classifica os dados de acordo
com os parmetros informados pelo
usurio no formulrio.

HTML e
Javascript

Gerador de
mapa

A camada de persistncia responsvel pelo


armazenamento tanto dos dados da base de geolocalizao
quanto dos dados dos endereos IPs cadastrados no sistema
para serem geolocalizados. Essa camada se vale de recursos
como ndices, triggers, functions, views e SQL ANSI. O banco
de dados e as operaes de manipulao dos registros foram
implementadas para priorizar o desempenho, pois a base de
geolocalizao possui mais de 4 milhes de registros e as
consultas prejudicariam o tempo de resposta da aplicao.
A Figura 2 ilustra o funcionamento do IPGeoMap. Ao ser
solicitado por um usurio, o IPGeoMap devolve para o cliente
um formulrio para configurao do filtro da consulta dos IPs.
Aps a submisso do formulrio, o sistema recebe a requisio,
consulta os dados na base, geolocaliza, agrupa, contabiliza e
quantifica os IPs por localidade e configura os parmetros para
gerar o mapa. Aps esse processamento, o servidor web
devolve a resposta para o cliente. No ambiente cliente, a API
Geomap processa as informaes recebidas e gera o mapa por
meio de java script e plugin de Flash Player.
B. Implementao do IPGeoMap
O IPGeoMap foi desenvolvido em linguagem de
programao PHP, para ser executada no servidor HTTP
Apache Server. A base de dados utilizada para geolocalizao
de endereos IP foi a IPInfoDB[7]. Ela foi implantada no
SGBD MySQL Server. Diversos ajustes foram aplicados base

Motor de busca
e Classificador
de dados
Configurador
de Mapa
Tratamento de
Dados
Base de Dados

Prepara os dados e os parmetros de


aparncia do mapa de acordo com as
especificaes exigidas pela Geomap
API.
Realiza diversos ajustes na base de
dados IPInfoDB para adequ-la aos
objetivos e as necessidades do
IPGeoMap
Repositrio da base de geolocalizao e
dos IPs geolocalizados.

HTML,
JavaScript e
Ajax

PHP e SQL

PHP

SQL, Views,
triggers,
ndices.
MySQL

2
O mapa temtico um tipo de mapa projetado para mostrar um tema
especfico relacionado com uma determinada rea geogrfica, que pode ser
uma cidade, estado, regio, pas ou continente [15].

C. Funcionamento do IPGeoMap
Ao acessar a pgina inicial de uma aplicao criada com o
IPGeoMap, o usurio recebe um formulrio para configurao
do filtro da consulta dos IPs e configurao da aparncia do
mapa de sada, conforme a Figura 3. A resposta a uma
solicitao ao IPGeoMap um mapa e uma lista de dados que
representa os totais dos locais com maior nmero de IPs, alm
de apresentar a soma do total de todos os outros locais (Figura
4).

Tipo de Visualizao: as opes so reas Coloridas


(que gera um coropltico) e Pontos no Mapa . A
visualizao por marcadores exibe um crculo sobre o
local indicado. O tamanho e a cor variam de acordo
com o valor atribudo ao ponto.

Aplicar Zoom
: aplica o zoom da resposta ao local
selecionado. Essa opo no interfere no filtro de pas
da pesquisa.

A seguir apresentada a descrio de cada um desses


campos.

Tema do Mapa: configura o tamanho do mapa gerado:


pequeno, mdio ou grande

Nvel de Detalhe: contabiliza os totais de IPs de acordo


com o nvel de detalhe escolhido. As opes desse
campo so: Pas, Estado/Provncia/Regio e Cidade.

Incluir Legenda: habilita ou desabilita a legenda

Incluir boto Zoom Out: habilita ou desabilita o boto


Zoom Out.

Tema do Mapa: filtra os IPs para o tema especificado.


Caso nenhum tema seja selecionado, o mapa
contabilizar os IPs de todos os temas.

Cores do Mapa: permite a escolha de uma esquema de


cores para o mapa.

Pas: restringe a consulta ao pas selecionado. Para


desativar o filtro deve-se deixar a opo "Todos os
Pases selecionada.

Imprimir: exibe algumas opes de impresso

Gerar Mapa: submete o formulrio para execuo da


consulta.

IPs Repetidos: permite contabilizar ou ignorar as


repeties de um mesmo IP no log.

Figura 3: Formulrio de pesquisa de uma aplicao implementado com o IPGeoMap

Locais mais relevantes:


BR-Sao Paulo...........86
BR-Rio de Janeiro......16
BR-Minas Gerais........13
BR-Mato Grosso..........7
BR-Parana...............6
BR-Ceara................6
BR-Paraiba..............4
BR-Piaui................3
BR-Bahia................3
BR-Maranhao.............3
BR-Santa Catarina.......2
Demais Locais...........1
Total de IPs: 150

Figura 4: Resposta de uma consulta ao IPGeoMap

D. Implementando uma Aplicao com IPGeoMap


Para implementar uma aplicao de geolocalizao no
IPGeoMap, basta popular a base de dados com o cadastro dos
IPs alvos. Esse cadastro pode ser realizado de forma manual,
ou de forma automatizada, via script SQL de insero ou via
importao de dados por meio de software com essa
funcionalidade. Caso se queira cadastrar endereos IP de
diferentes origens e aplicaes, pode-se cadastr-los em grupos
diferentes por meio das tabelas do modelo de dados do
IPGeoMap. Depois de cadastrar os IPs, necessrio apenas
acessar a URL da aplicao no servidor web para visualizar os
dados geolocalizados e realizar filtros nas consultas para
melhor compreender e interpretar os resultados.
V. ESTUDO DE
MALWARES
EM
BRASILEIRAS

CASO: IPGEOMAP
ORGANIZAES

ambiental atravs da captura de vdeo por meio de webcam e


do udio por meio do microfone, a subtrao e insero de
qualquer arquivo, o envio de e-mails, forar o download de
outros artefatos maliciosos ou utilizar o computador do usurio
para atacar seus contatos ou outros computadores.

PARA ANLISE DOS


GOVERNAMENTAIS

Para validar o IPGeoMap, o mesmo foi aplicado na anlise


de malwares 3 de ataques s organizaes governamentais
brasileiras. Esse grupo de IPs foi obtido por meio do CTIR Gov
(Centro de Tratamento de Incidentes de Segurana em Redes
de Computadores da APF - Administrao Pblica Federal)
[9]. Esse grupo de IPs corresponde ao local de download dos
malwares analisados pelo CTIR Gov em 2009 e 2010.

Figura 6: Origem dos malwares por pas - 2010

Nesse cenrio, o malware em algum momento ir


estabelecer comunicao com a Internet para, entre outras
coisas, vazar documentos dos usurios, enviar senhas e outros
dados coletados, disferir ataques a terceiros, enviar e-mails,
baixar novos programas, receber novas instrues de execuo
e abrir backdoors para acesso remoto. Portanto, identificar
padres e observar tendncias acerca da atividade de rede dos
malwares permite, junto com a identificao da origem desses
artefatos, uma melhor compreenso da atividade maliciosa. A
Figura 7 mostra o mapeamento da atividade de rede dos
malwares analisados pelo CTIR Gov em 2010 utilizando a
viso de pontos.

Figura 5: Origem dos malwares por pas - 2009

De acordo com as Figuras 5 e 6, os EUA e o Brasil


concentram a origem dos malwares analisados pelo CTIR Gov
em 2009 e 2010, respectivamente, com aproximadamente dois
teros do total. Os Estados Unidos so a principal origem dos
artefatos maliciosos, entre outros motivos, porque uma parcela
significativa dos stios da Internet est hospedada em
provedores localizados em seu territrio.
No momento em que o usurio executa o arquivo
malicioso, o atacante assume o controle do computador e pode,
entre outras coisas, executar a captura de tela, a captura do
texto digitado, de senhas, de mensagens instantneas, do
histrico de navegao na Internet, o monitoramento e escuta
2

Malware: nome genrico atribudo software com objetivos maliciosos como


os vrus de computador, software espies, cavalos de tria, etc

Figura 7: Atividade de rede dos malwares por cidade no mundo

Os endereos IP reservados, os no alocados, os de proxy


annimo e os de provedores de acesso por satlite, em tese, no
podem ser geolocalizados pois no possuem localidade
especificada sobre o planeta Terra. Para solucionar isso, o
IPGeoMap escolheu a Groenlndia como local de exibio

desses blocos de IP. Isso ocorreu porque esse pas possui rea
relativamente grande para exibio no mapa e porque apresenta
uma das menores populaes do mundo, quando comparada
com os demais pases. At em decorrncia dessa populao
pequena, observa-se, percentualmente, poucos blocos de IPs
alocados para esse pas, o que diminui a probabilidade de se
misturar os IPs verdadeiramente alocados para a Groenlndia
com os endereos ajustados para serem exibidos sobre o seu
territrio.

[2]

VI. CONCLUSES
Este artigo apresentou o IPGeoMap que uma ferramenta
web baseada em software livre capaz de ler e localizar
geograficamente uma lista de IPs e depois capaz de agrup-los,
contabiliz-los e quantific-los, por localidade e, em seguida,
mostrar o resultado em um mapa temtico coropltico ou de
marcadores.

[6]

Com o estudo de caso apresentado, verificou-se a fcil


utilizao do IPGeoMap no desenvolvimento de aplicaes
onde exista a necessidade de construo de mapa de tendncias
e de padres baseado na distribuio geogrfica de endereos
de Internet IP.
O IPGeoMap pode ser empregado em diferentes situaes,
como em segurana da informao, marketing e outros. Como
trabalho futuro est sendo desenvolvida uma interface para a
entrada dos dados dos IPs alvos para facilitar a insero desses
dados na base de dados do IPGeoMap.
REFERNCIAS
[1]

Djuknic, G. M. ; Richton, R. E. Geolocation and assisted GPS. Vol: 34,


issue:2 pg. 123-125. Computer. IEEE Computer Society. (2001)

[3]

[4]
[5]

[7]
[8]
[9]

[10]
[11]
[12]
[13]
[14]
[15]

[16]

Ip2Location.
DataBase
IPLocation.
URL:
http://www.ip2location.com/products.aspx . Acessado em: Maio de
2011.
Google. Geogle Tools/Interactive Charts (aka Visualization API).
Google Code Google, Visualization: Geomap. Google Disponvel em:
http://code.google.com/apis/visualization/gallery/geomap.html.
Acessado e: Maio de 2011.
Registro.br. Registro.br Info. URL: http://registro.br/info/index.html.
Acessado em: Maio de 2011.
LACNIC. Acerca de LACNIC. URL: http://lacnic.net/pt/sobre-lacnic/.
Acessado em: Maio de 2011.
IPv6.br. Comit Gestor da Internet no Brasil IC.br. URL:
http://www.ipv6.br>. Acessado em: Maio de 2011.
IpInfoDB. IP address geolocation database in SQL or CSV format.
URL: http://ipinfodb.com/ip_database.php. Acesso em: 05 mai. 2010.
MaxMind. GeoIP City Accuracy for Selected Countries. URL:
http://www.maxmind.com/app/city_accuracy. Acesso em: 05 mai. 2010
CTIR GOV. Centro de Tratamento de Incidentes de Segurana em
Redes de Computadores da Administrao Pblica Federal-CTIR Gov.
Departamento de Segurana de Informao e Comunicaes-DSIC.
Gabinete de Segurana Institucional da Presidncia da Repblica.
Disponvel em: <http://www.ctir.gov.br>. Acesso em: 15 jul. 2010
IANA. Internet Assigned Numbers Authority. Introducing IANA. URL:
http://www.iana.org/. Acessado em: Maio de 2011.
Google Analystic. URL: http://www.google.com/analystic, Acessado em
Maio de 2011.
Awstat. http://awstat.sourceforge.net
Webalizer. URL: http://www.mrunix.net/webalizer/ . Maio de 2011.
WebLogExplorer. URL: http://www.exacttrend.com/WebLogExplorer/ .
Maio de 2011
CRUZ, C.B.M; PINA, M.F. Fundamentos de Cartografia. CEGEOP
Unidades didticas 29 a 4. Volume 2. Rio de Janeiro: LAGEOP /UFRJ,
2002
IP Tracing and IP Tracking. URL: http://www.ip-adress.com/ip_tracer/ .
Acessado em Maio de 2011

You might also like