Ads Top

Espie e descubra relacionamentos de rede com Airgraph-Ng

E se você pudesse visualizar facilmente em qual ponto de acesso cada dispositivo Wi-Fi próximo está conectado em questão de segundos?

Enquanto programas como o Airodump-ng podem interceptar estas informações, tornar fácil para os hackers usarem e entenderem é outra questão. Felizmente, uma ferramenta chamada Airgraph-ng pode visualizar as relações entre dispositivos Wi-Fi a partir de apenas alguns segundos de observação sem fio.

Inteligência de Sinais com Dispositivos Wi-Fi


A inteligência de sinais é a ciência da compreensão do comportamento humano e dos sistemas por trás de sinais de rádio interceptados. Para entender como atacar um alvo, queremos a quantidade máxima de informações sobre o destino que devemos considerar. Sem estar conectado a uma rede com criptografia, como WPA ou WPA2, não podemos confiar em truques como enviar pacotes para procurar outros dispositivos conectados, porque estamos do lado de fora olhando para dentro.

Não podemos ler o fluxo de tráfego entre os dispositivos, mas podemos observar a relação entre dispositivos Wi-Fi, como laptops, smartphones e produtos IoT, para conhecer a rede e as pessoas por trás deles. Para entender como uma rede está conectada, podemos detectar o tráfego de rádio Wi-Fi na área para descobrir quais dispositivos estão atualmente conectados a um ponto de acesso, criando uma lista de relacionamentos.

Para um invasor, isso significa a capacidade de percorrer um prédio e criar um mapa do ponto de acesso ao qual todas as impressoras, câmeras de segurança e laptops estão conectados. Também é possível aprender os nomes das redes nas quais os dispositivos Wi-Fi próximos se conectaram recentemente, facilitando a criação de uma rede falsa à qual eles se conectarão automaticamente.

Tornando Sinais Interceptados Legíveis


Outro uso para esse tipo de análise é determinar se um dispositivo representando uma pessoa, como um smartphone, está presente em um local. Criar um mapa de quando alguém vem e vai com base em sua atividade de Wi-Fi é uma maneira fácil de entender quando alguém está em casa ou usando determinados dispositivos.

Para este tipo de análise de sinais, o Kismet é uma das melhores formas de analisar as relações entre dispositivos próximos. Apesar de ser útil, configurá-lo exige trabalho e a interpretação dos resultados nem sempre é simples. Aqui, após alguma configuração, podemos nos concentrar em um ponto de acesso público popular, aprendendo sobre os dispositivos que estão atualmente conectados a ele.


A informação do Kismet é muito para um iniciante absorver. Embora o Kismet ofereça ao operador a capacidade de descobrir e espionar a atividade Wi-Fi de qualquer dispositivo conectado a uma rede Wi-Fi de rede próxima, há uma maneira mais fácil de mostrar um instantâneo tático do ambiente Wi-Fi local.

Usando o Aigraph-ng, podemos fazer uma versão gráfica dessas informações. Podemos pegar todos esses dados de texto e convertê-los em um instantâneo gráfico das relações entre dispositivos próximos e as redes às quais eles estão conectados. Isso dá visibilidade imediata à topografia das redes Wi-Fi ao alcance.

Airgraph-Ng para Interpretação de Sinais


Para aprender sobre a topografia de redes próximas e exibir os resultados como um gráfico, precisaremos coletar e processar os dados. Para a coleta, usaremos um programa instalado por padrão no Kali Linux chamado Airodump-ng. Este programa irá "descartar" os pacotes de dados Wi-Fi que interceptamos com nosso adaptador de rede sem fio em um arquivo. Esse arquivo CSV nos permitirá processar facilmente o que descobrimos e gerar um gráfico PNG mostrando as relações detectadas.

Para processar os pacotes que interceptamos, usaremos outro programa instalado por padrão, Airgraph-ng. Este programa pode visualizar dois tipos de informações úteis para um hacker. O primeiro tipo de grafo é um CAPR ou um grafo de relacionamento de ponto de acesso do cliente. Este gráfico mostra um mapa de cada dispositivo atualmente conectado a um ponto de acesso e a qual rede eles estão conectados no momento.

O segundo tipo de grafo mostra os nomes das redes que os dispositivos W-Fi não conectados atualmente a um ponto de acesso estão chamando. Isso pode revelar uma lista de redes que poderíamos criar para atrair dispositivos próximos para a conexão.

Airgraph-ng é bastante simples, como pode ser visto pela sua entrada de página manual.

NAME
       airgraph-ng - a 802.11 visualization utility

SYNOPSIS
       airgraph-ng [options]

DESCRIPITION
       airgraph-ng graphs the CSV file generated by Airodump-ng. The idea is that we are showing the
       relationships of the clients to the AP's so don't be shocked if you see only one  mapping  as
       you may only have captured one client

OPTIONS
       -h     Shows the help screen.

       -i     Airodump-ng CSV file

       -o     Output png file.

       -g     Choose the Graph Type. Current types are [CAPR (Client to AP Relationship) & CPG (Com‐
              mon probe graph)].

       -a     Print the about.

EXAMPLES
       airgraph-ng -i dump-01.csv -o dump.png -g CAPR

       airgraph-ng -i dump-01.csv -o dump.png -g CPG

O que você precisará


Para acompanhar, você precisará de um adaptador de rede sem fio capaz de monitorar o modo sem fio. Você também vai querer um compatível com o Kali Linux.

Você deve estar executando o Kali Linux em uma máquina virtual, com inicialização dupla ou de outra maneira que permita que Kali acesse o adaptador de rede. Se você estiver fazendo isso em uma máquina virtual, precisará conectar o adaptador USB à máquina virtual para que ela apareça.

Para este guia, você não precisa estar conectado a uma rede e não precisa de permissão para fazer essas observações. As informações estão sendo transmitidas sem criptografia, o que significa que estamos apenas observando.

1 - Atualize seu sistema e instale se necessário


Se você está rodando o Kali Linux, você deve ter tudo o que precisa instalado. Primeiro, precisamos atualizar e garantir que temos o pacote Aircrack-ng. Para fazer isso, conecte seu computador Kali à Internet e execute os seguintes comandos em uma janela de terminal.

apt update
apt upgrade
apt install aircrack-ng
Agora, vamos verificar se temos os programas instalados. Execute os seguintes comandos para ver a saída da ajuda para cada programa.

airodump-ng --help

  https://www.aircrack-ng.org

  usage: airodump-ng  [,,...]

  Options:
      --ivs                 : Save only captured IVs
      --gpsd                : Use GPSd
      --write       : Dump file prefix
      -w                    : same as --write
      --beacons             : Record all beacons in dump file
      --update        : Display update delay in seconds
      --showack             : Prints ack/cts/rts statistics
      -h                    : Hides known stations for --showack
      -f             : Time in ms between hopping channels
      --berlin        : Time before removing the AP/client
                              from the screen when no more packets
                              are received (Default: 120 seconds)
      -r              : Read packets from that file
      -x             : Active Scanning Simulation
      --manufacturer        : Display manufacturer from IEEE OUI list
      --uptime              : Display AP Uptime from Beacon Timestamp
      --wps                 : Display WPS information (if any)
      --output-format
                   : Output format. Possible values:
                              pcap, ivs, csv, gps, kismet, netxml, logcsv
      --ignore-negative-one : Removes the message that says
                              fixed channel : -1
      --write-interval
                   : Output file(s) write interval in seconds
      --background  : Override background detection.

  Filter options:
      --encrypt      : Filter APs by cipher suite
      --netmask    : Filter APs by mask
      --bssid        : Filter APs by BSSID
      --essid        : Filter APs by ESSID
      --essid-regex  : Filter APs by ESSID using a regular
                              expression
      -a                    : Filter unassociated clients

  By default, airodump-ng hops on 2.4GHz channels.
  You can make it capture on other/specific channel(s) by using:
      --ht20                : Set channel to HT20 (802.11n)
      --ht40-               : Set channel to HT40- (802.11n)
      --ht40+               : Set channel to HT40+ (802.11n)
      --channel   : Capture on specific channels
      --band           : Band on which airodump-ng should hop
      -C       : Uses these frequencies in MHz to hop
      --cswitch     : Set channel switching method
                    0       : FIFO (default)
                    1       : Round Robin
                    2       : Hop on last
      -s                    : same as --cswitch

      --help                : Displays this usage screen
airgraph-ng --help
Usage: airgraph-ng options [-o -i -g ]

Options:
  -h, --help            show this help message and exit
  -o OUTPUT, --output=OUTPUT
                        Our Output Image ie... Image.png
  -i INPUT, --dump=INPUT
                        Airodump txt file in CSV format. NOT the pcap
  -g GRAPH_TYPE, --graph=GRAPH_TYPE
                        Graph Type Current [CAPR (Client to AP Relationship)
                        OR CPG (Common probe graph)]
Se você vir a saída de ajuda para Airodump-ng e Airgraph-ng, então estamos prontos para começar a interceptar e interpretar pacotes!

2 - Conecte seu adaptador wireless e ative o modo de monitoramento


Conecte o adaptador de rede sem fio que você pretende usar para capturar pacotes Wi-Fi. Este deve ser um adaptador de rede sem fio compatível com o Kali Linux. O TP Link WN722N é ótimo para usar, mas há muito mais que pode se adequar melhor às suas necessidades.

Depois de conectar o adaptador, podemos colocá-lo no modo monitor usando outro programa instalado com o Aircrack-ng. Usaremos o Airmon-ng para colocar nosso cartão no modo monitor, depois de executar o ifconfig para obter o nome do nosso adaptador de rede. Em nosso exemplo, nosso adaptador é chamado de "wlan2".

airmon-ng start wlan2


Found 3 processes that could cause trouble.
Kill them using 'airmon-ng check kill' before putting
the card in monitor mode, they will interfere by changing channels
and sometimes putting the interface back in managed mode

  PID Name
  561 NetworkManager
  627 wpa_supplicant
 3561 dhclient

PHY Interface   Driver      Chipset

phy0    wlan0       ath9k       Qualcomm Atheros QCA9565 / AR9565 Wireless Network Adapter (rev 01)
phy5    wlan2       rt2800usb   Ralink Technology, Corp. RT2870/RT3070

        (mac80211 monitor mode vif enabled for [phy5]wlan2 on [phy5]wlan2mon)
        (mac80211 station mode vif disabled for [phy5]wlan2)

Agora, execute ifconfig novamente. Você deve ver que seu cartão tem mon adicionado ao final. Isso significa que seu cartão agora está no modo de monitor sem fio e você está pronto para prosseguir para a próxima etapa.

3 - Executar o Airodump-Ng e salvar o arquivo CSV


Agora que nosso cartão sem fio pode escutar qualquer pacote Wi-Fi na área, precisamos começar a gravar essas informações em um arquivo. Usaremos o Airodump-ng para fazer isso, descarregando efetivamente todos os pacotes recebidos em nosso adaptador de rede em um arquivo para interpretarmos mais tarde.

Lembrando o nome do nosso adaptador de rede sem fio que agora está no modo monitor, execute o seguinte comando para salvar todos os pacotes interceptados pela interface "wlan2mon" (ou seja lá qual for o seu nome) para um arquivo chamado capturefile.

airodump-ng wlan2mon -w capturefilename


CH 10 ][ Elapsed: 4 mins ][ 2019-02-03 21:32

 BSSID              PWR  Beacons    #Data, #/s  CH  MB   ENC  CIPHER AUTH ESSID

 14:CC:20:6D:22:BA  -26       69        0    0   8  130  WPA2 CCMP   PSK  CafeMak4_2.4G
 AA:6B:AD:6F:AC:55  -31      136        0    0   6   65  WPA2 CCMP   PSK  DIRECT-HQHL-L9310CDW_BRac55
 EC:1D:7F:F9:10:03  -33      159        0    0   6   65  WPA2 CCMP   PSK  cafemak_pwm
 2C:FD:A1:E4:9D:50  -40      109      152    0   9  260  WPA2 CCMP   PSK  CafeMak1_2.4G
 84:1B:5E:E9:8A:1A  -52      136     3668    0  11  54e  WPA2 CCMP   PSK  CafeMak6_2.4G
 16:18:D6:04:F1:1E  -58       54        2    0   1  195  WPA2 CCMP   PSK  770staff1
 26:18:D6:04:F1:1E  -59       74        0    0   1  195  WPA2 CCMP   PSK  770guest
 F8:18:97:65:BC:F3  -59       50        0    0   1  130  WPA2 CCMP   PSK  ATT717_guest
 06:18:D6:04:F1:1E  -60       52        0    0   1  195  WPA2 CCMP   PSK  exec
 04:18:D6:04:F1:1E  -60       87        0    0   1  195  WPA2 CCMP   PSK  770org
 3C:36:E4:F7:6D:20  -61       84        0    0   6  130  WPA2 CCMP   PSK  ATT120
 36:18:D6:04:EF:0F  -62       71        0    0   6  195  WPA2 CCMP   PSK  
 06:18:D6:04:EF:0F  -62       66        0    0   6  195  WPA2 CCMP   PSK  exec
 36:18:D6:04:F1:1E  -62       64        0    0   1  195  WPA2 CCMP   PSK  
 04:18:D6:04:EF:0F  -63      123        0    0   6  195  WPA2 CCMP   PSK  770org
 F8:18:97:65:BC:F2  -64       46        5    0   1  130  WPA2 CCMP   PSK  ATT717
 04:18:D6:04:2E:FA  -64       44        0    0   1  195  WPA2 CCMP   PSK  rb
 26:18:D6:04:EF:0F  -64       97        0    0   6  195  WPA2 CCMP   PSK  770guest
 16:18:D6:04:EF:0F  -64       78        0    0   6  195  WPA2 CCMP   PSK  770staff1
 A0:8C:FD:B7:9D:A9  -65       68        0    0   6   65  WPA2 CCMP   PSK  DIRECT-A8-HP OfficeJet 4650
 E8:8D:28:60:BE:77  -68       63        3    0   6  195  WPA2 CCMP   PSK  Joel's Wi-Fi Network
Quando terminarmos de coletar os pacotes, você pode digitar Ctrl-c para interromper a captura. Isso irá gerar um arquivo CSV contendo todas as informações de que precisamos.

4 - Gerar um grafo de relacionamentos AP (dispositivos conectados)


Agora, é hora de gerar nosso primeiro grafo a partir dos dados sem fio que interceptamos. Você pode pensar nesses dados como metadados, nos dizendo quais dispositivos estavam chamando uns aos outros, mas não o que eles estavam dizendo.

Primeiro, iniciaremos um grafo dos relacionamentos AP do cliente. Depois de localizar o arquivo CSV que criamos, execute o seguinte comando em uma janela de terminal para criar um gráfico CAPR de qual dispositivo está conectado a qual ponto de acesso. Substitua "grafointercept.png" pelo nome do gráfico que você deseja criar e "/root/Desktop/intercept.csv" com o caminho para o arquivo CSV.

airgraph-ng -o grafointercept.png -i '/root/Desktop/intercept.csv' -g CAPR

Isso deve gerar um gráfico para explorar. Aqui podemos ver um exemplo mostrando a relação entre pontos de acesso e dispositivos, fornecendo claramente uma visão geral da topografia da rede local.



5 - Gerar um grafo de dispositivos desconectados


Em seguida, vamos direcionar os dispositivos próximos que não estão conectados atualmente a um ponto de acesso. A partir desses dispositivos, podemos aprender os nomes das redes com as quais eles se conectaram antes, o que nos permite, potencialmente, conectá-los a uma versão falsa com o mesmo nome.

Para obter essas informações, vamos apenas processar novamente os dados que interceptamos em um tipo diferente de grafo. Não há necessidade de voltar atrás e coletar mais informações, vamos apenas visualizá-lo de outra maneira.

Abra uma janela de terminal e digite os seguintes comandos, trocando "grafointercept.png" pelo nome do arquivo no qual deseja salvar o grafo, e "/root/Desktop/intercept.csv" novamente para a localização do arquivo. Arquivo CSV criado anteriormente a partir dos dados capturados.


airgraph-ng -o interceptoffline.png -i '/root/Desktop/intercept.csv' -g CPG

Airgraph-ng deve gerar um novo gráfico mostrando as redes que os dispositivos próximos estão chamando. Isso também permite identificar quais redes podem conectar vários dispositivos próximos.


Interpretar os resultados


Para um hacker ou pen tester, os dois grafos anteriores fornecem uma mina de ouro de informações.

Na primeira, podemos ver em qual ponto de acesso cada dispositivo próximo está conectado, permitindo isolar ou capturar clientes em redes MITM falsas se identificarmos um alvo. Por causa disso, podemos criar uma versão falsa de uma rede na qual um dispositivo está conectado, expulsá-lo da rede real e fazer com que ele se conecte automaticamente à versão falsa.

No segundo grafo, podemos identificar as redes que poderíamos criar, o que faria com que vários dispositivos diferentes se conectassem. Esses grafos também podem revelar dispositivos usando a randomização de endereço MAC, porque mesmo os dispositivos que alteram seu endereço MAC podem chamar uma rede com um nome único à medida que continuam a alterar seu MAC.

Os hackers podem usar essas informações sobre o tipo de hardware presente e a maneira como estão conectados para criar um plano de ataque contra uma rede. Como esse ataque é totalmente passivo e não requer interação com a rede, o risco de ser pego espionando essas informações é quase inexistente.

Nenhum comentário:

Tecnologia do Blogger.