RenatoMartini.Net

Category: rede

SHODAN: a mais temível ferramenta de procura

Depois de apresentada em 2009 na DEFCON, Shodan foi chamada por muitos a mais assustadora search engine da Internet. Mesmo com a maturidade da ferramenta que hoje podemos constatar trata-se de um exagero. Na verdade, Shodan nada mais é que uma ferramenta de procura por dispositivos na rede Internet, aquilo que muitos gostam de chamar de "internet das coisas", - o que é apenas uma metáfora mercadológica, diga-se de passagem, porque o TCP/IP, salvo melhor juízo, não distingue coisas e pessoas. Mas o termo colou e é usado correntemente. Assim o Shodan apresente como sendo: the world's first search engine for Internet-connected devices.

A riqueza do protocolo TCP/IP é ser uma plataforma aberta,. Em suas camadas mais altas, onde se localizam os serviços, e onde o usuário efetivamente interage, é possível inserir e criar, na medida da inventividade humana, várias aplicações. E é por isso que tantos e tantos usos apareceram ao longo dos anos, dada esta flexibilidade que é própria do protocolo que dá vida as redes na Internet.

O aplicativo Shodan trabalha lendo os cabeçalhos HTTP e outras informações abertas nos dispositivos conectados. Ele produz um "fingerprint" de tais dispositivos e então podem indexá-los por dados como país, sistema operacional, marca, etc. Como por exemplo aqui destacado, um dos resultados para a procura por "video web servers":

--- VIDEO WEB SERVER --- 99.59.242.113 adsl-99-59-242-113.dsl.pltn13.sbcglobal.net AT&T Internet Services Added on 2015-07-14 12:02:08 GMT United States - United States Details HTTP/1.1 200 OK Connection: close Cache-Control: no-cache Server: SQ-WEBCAM CONTENT-LENGTH:2936

As possibilidades desta plataforma podem assustar os mais radiciais, mas creio que como David Holmes destacou em artigo no site Security Week: "Manufacturers can use Shodan to locate unpatched versions of their software in IoT devices. And Sales can use it to identify new customer opportunities. One Shodan query shows the number of HP printers in need of toner across ten different universities".

 
Revisão v. 2.1
 

ICAO implementa o certificado ICP-Brasil em seu diretório

No último dia 8 de junho, membros da Subsecretaria-Geral das Comunidades Brasileiras no Exterior do Ministério das Relações Exteriores – MRE, estiveram em Montreal, no Canadá, para a cerimônia de importação do certificado digital da Autoridade Certificadora do MRE para o diretório de chaves públicas – PKD da Organização de Aviação Civil Internacional – ICAO, entidade responsável por promover segurança e padronizar os aeroportos e passaportes no mundo. Representaram a pasta Cassiano Buhler e Lucas dos Santos Furquim Ribeiro. A ICAO, por sua vez, foi representada por Christiane DerMarkar.

O presidente do Instituto Nacional de Tecnologia da Informação – ITI, Renato Martini, ressaltou a participação dos entes governamentais que resultou na implementação da tecnologia ICP-Brasil ao PKD.

"A efetiva colocação do certificado digital da AC MRE no diretório da ICAO, criada dentro de nossos padrões técnicos e normativos, foi bastante importante por diversas razões, mas deve-se ressaltar sobretudo o envolvimento de vários órgãos públicos com Serpro, o próprio Itamaraty, a Polícia Federal, entre outros. Os desafios deste empreendimento se somam agora a tantos outros de nosso sistema nacional de certificação digital", disse Martini.

Com o feito, já é possível emitir os novos passaportes brasileiros garantindo ao cidadão brasileiro não apenas um documento internacional perante autoridades locais e consulados, mas a identificação inequívoca nos e-gates, portões eletrônicos que automatizam o processo de conferência de passaportes.

Segundo Lucas dos Santos, restam pequenos detalhes, como a adequação do Sistema de Controle e Emissão de Documentos de Viagem – SCEDV do MRE, para o início das atividades de emissão de passaportes eletrônicos assinados com certificados digitais ICP-Brasil.

Como funciona o PKD

Cada país possui uma regulamentação e uma estrutura diferentes de Infraestrutura de Chaves Públicas. Para facilitar e agilizar a troca de informações entre as diversas nações a ICAO idealizou o PKD, um diretório seguro onde, seguindo regulamentações, os países aderentes depositam as informações dos certificados que compõem a cadeia de segurança com a qual eles assinam seus passaportes. Esse diretório centraliza a troca de informações entre todos os países.

Para o passaporte brasileiro tornar-se aderente ao PKD, foram necessárias novas regulamentações no âmbito da ICP-Brasil. Essas alterações foram debatidas e aprovadas em reunião do Comitê Gestor da ICP-Brasil em 2013. Uma das definições do Comitê foi a criação da Autoridade Certificadora – AC de primeiro nível do Ministério das Relações Exteriores – MRE.

Em abril deste ano, o Instituto Nacional de Tecnologia da Informação – ITI, emitiu o certificado de Autoridade Certificadora do Ministério de Relações Exteriores – AC MRE, a partir da cadeia v4, modelo europeu que adota a tecnologia de curvas elípiticas – brainpool.

FONTE: ITI

 
Revisão v. 1.3
 

Tor: escondendo o IP?

Geralmente se usa a expressão “anonimizar” (neologismo irritante)1 para as ações do software TOR: trata-se resumidamente de um software orientado à conexão. Onde os usuários se valhem de um conjuntos de nós (nodes), e negocia um "circuito" através da rede, no qual cada nós conhece seus predecessor e successor, mas não os outros. Os pacotes fluem e são entregues através deste circuito virtual por uma chave simétrica. É uma rede distribuída de servidores (os "onion routers"). O fluxo TCP — web, ftp, ssh — percorre a rede com enorme dificuldade de se mapear sua origem. No entanto, ele é de forma muito mais eficiente um proxy de rede que qualquer outra coisa.

Extremamente portável, o tor está disponível para os SOs do momento (como Windows, Mac OS X e Linux): visite https://www.torproject.org para maiores informações, download e código fonte.

Uma combinação interessante, para se observar o comportamento do software é com o velho socat -- Multipurpose relay (SOcket CAT)2.É uma ferramenta de linha de comando que estabelece uma transferência de dados entre duas "pontas". Socat é programado com o velho estilo socket(), no Internet/Unix sockets3, simples e eficiente. Mas hoje é terreno domidado por bibliotecas mais sofisticadas como a lipcap4.

  1. socklen_t socket_init(int af, union sockaddr_union *sa) {
  2. switch (af) {
  3. case AF_UNSPEC: memset(sa, 0, sizeof(*sa)); return sizeof(*sa);
  4. #if WITH_UNIX
  5. case AF_UNIX: socket_un_init(&sa->un); return sizeof(sa->un);
  6. #endif
  7. #if WITH_IP4
  8. case AF_INET: socket_in_init(&sa->ip4); return sizeof(sa->ip4);
  9. #endif
  10. #if WITH_IP6
  11. case AF_INET6: socket_in6_init(&sa->ip6); return sizeof(sa->ip6);

Pode-se ler aqui um ótimo tutorial.

Resumo:

what: "netcat++" (extended design, new implementation)
OS: AIX, BSD, HP-UX, Linux, Solaris e.a. (UNIX)
lic: GPL2
inst: tar x...; ./configure; make; make install
doc: README; socat.html, socat.1; xio.help
ui: command line


 

Depois de carregar o tor (há todo um processo de instalação e configuração que não vou comentar, ainda...), vc pode estabeler uma conexão com a porta aberta pelo daemon do tor (padrão: 9050):

# ./rc.tor start
Raising maximum number of filedescriptors (ulimit -n) to 32768...
Starting Tor...
Aug 22 18:48:38.555 [notice] Tor v0.2.2.37 (git-fce6eb1c44e87bc2). This is experimental software. Do not rely on it for strong anonymity. (Running on Linux x86_64)
Aug 22 18:48:38.588 [notice] Initialized libevent version 2.0.21-stable using method epoll. Good.
Aug 22 18:48:38.588 [notice] Opening Socks listener on 127.0.0.1:9050
Aug 22 18:48:38.588 [notice] Opening Control listener on 127.0.0.1:9051
(...)

Então, entre com o seguinte comando do socat:

$ socat -v -d -lf/var/log/socat.log TCP-LISTEN:4141 SOCKS4A:localhost:server.org:22,socksport=9050

 

Janela mostrando a conexão aberta...

Janela mostrando a conexão aberta...

Aqui estabelecemos uma conexão usando socks entre um server (server.org), porta 22 (ssh), e o localhost...: fazendo então "ssh -l nome-do-usuário localhost -p 4141". O comando acima grava um log que pode ser acompanhado para que tenha um visão melhor (olhe a documentação sobre os comandos disponíveis, que em todo software CLI é bem poderoso).

Por exemplo:

$ tail -f /var/log/socat.log
2013/02/22 19:10:51 192.168.2.76 socat[5460] I transferred 96 bytes from 5 to 4
2013/02/22 19:10:51 192.168.2.76 socat[5460] I transferred 80 bytes from 4 to 5
2013/02/22 19:10:54 192.168.2.76 socat[5460] I transferred 144 bytes from 5 to 4
(...)
...falha na conexão no destino (endpoint):
2013/03/21 8:19:35 192.168.2.77 socat[7361] E socks: connect request rejected or failed

... socket finalizado:
2013/08/20 21:05:36 192.168.2.77 socat[5460] N socket 1 (fd 5) is at EOF
2013/08/20 21:05:36 192.168.2.77 socat[5460] I shutdown(4, 1)
2013/08/20 21:05:36 192.168.2.77 socat[5460] I shutdown(4, 1): Transport endpoint is not connected

Interessante é verificar didaticamente -- em se tratando de uma conessão ssh -- como aperece o usuário no host destino, usando o comando "w", ali podemos ver que estamos usando um dos nós ofertados pelo circuito aberto pelo tor, vejamos:

$ w nome-d-usuário

... aparecerá:

10:27PM up 51 days, 5:20, 37 users, load averages: 3.30, 3.31, 3.37 USER TTY FROM LOGIN@ IDLE WHAT nome-do-usuário pts/2 tor20.anonymizer.ccc.de 10:10PM 0 w

... ou ainda:

$ host tor20.anonymizer.ccc.de
tor20.anonymizer.ccc.de has address 1.2.3.4


v.1.4

  1. como é dito na língua inglesa: anonymizing []
  2. http://www.dest-unreach.org/socat []
  3. ver: "What is a socket?" []
  4. http://www.tcpdump.org []

Copyright © 2017 RenatoMartini.Net

Theme by Anders NorenUp ↑