Captura de tráfego de celular no Wireshark


Respostas:


350

Aqui estão algumas sugestões:

  1. Para telefones Android, qualquer rede : faça root no seu telefone e instale o tcpdump nele. Este aplicativo é um wrapper tcpdump que instala o tcpdump e permite iniciar capturas usando uma GUI. Dica: você precisará fornecer o nome correto da interface para a captura e isso varia de um dispositivo para outro, por exemplo -i eth0 ou -i tiwlan0 - ou use -i any para registrar todas as interfaces

  2. Para telefones Android 4.0+ : O PCAP Android da Kismet usa a interface USB OTG para oferecer suporte à captura de pacotes sem a necessidade de root. Eu não experimentei este aplicativo e existem algumas restrições quanto ao tipo de dispositivo suportado (consulte a página deles)

  3. Para telefones Android : tPacketCapture usa o serviço VPN Android para interceptar pacotes e capturá-los. Eu usei este aplicativo com sucesso, mas também parece afetar o desempenho com grandes volumes de tráfego (por exemplo, streaming de vídeo)

  4. Para dispositivos IOS 5+, qualquer rede : o iOS 5 adicionou um recurso de interface virtual remota (RVI) que permite usar programas de rastreamento de pacotes do Mac OS X para capturar rastreamentos de um dispositivo iOS. Veja aqui para mais detalhes

  5. Para todos os telefones, apenas wi-fi: configure o seu PC como um ponto de acesso sem fio e execute o wireshark no PC

  6. Para todos os telefones, apenas wi-fi: obtenha um dispositivo de captura que possa detectar o wi-fi. Isso tem a vantagem de fornecer cabeçalhos 802.11x também, mas você pode perder alguns dos pacotes

  7. Capture usando um servidor VPN : É bastante fácil configurar seu próprio servidor VPN usando o OpenVPN. Em seguida, você pode rotear seu tráfego através do servidor configurando o dispositivo móvel como um cliente VPN e capturar o tráfego no servidor.


1
Se você estiver interessado em configurar um ponto de acesso não autorizado no Windows 7 e superior e capturar pacotes usando o Wireshark, veja as etapas que eu montei em mohit.io/blog/… Isso funcionará para qualquer dispositivo que suporte WiFi (Android , iOS, Wii, XBox, etc)
mohit

2
Em relação à opção 2: é praticamente uma opção inexistente. Da página deles: "Você precisará [...] de uma placa de rede sem fio baseada em RTL8187" !!!!
Matteo

1
Para mim, a opção 3 é a mais fácil de executar tarefas simples, como verificar o que chama um determinado aplicativo.
Nighto 8/04

1
A maioria deles não funciona para pacotes que nunca saem do dispositivo ou se você já usa uma VPN. Portanto, eles são inúteis para resolver problemas relacionados à MTU / fragmentação.
Evi1M4chine

1
E se eu quiser fazer o oposto? Use meu smartphone conectado por USB para capturar os pacotes do meu PC? Basicamente executar um wireshark-like software no meu telefone Android
dominicbri7

40

Além da excelente resposta de rupello, um truque "sujo", mas muito eficaz:

Para todos os celulares, qualquer rede (local) : Configurar o seu PC para Man-In-The-Middle seu dispositivo móvel.

Use o Ettercap para fazer a falsificação de ARP entre seu dispositivo móvel e seu roteador, e todo o tráfego do seu celular aparecerá no Wireshark. Consulte este tutorial para obter detalhes de configuração


3
Você também pode usar o proxy Charles no Mac OS, para capturar tráfego HTTP, possui uma interface e funcionalidades muito agradáveis. Você precisará configurar o IP local do seu computador com um proxy no seu telefone. Ele também pode detectar o tráfego TLS e fazê-lo sem aviso, se você instalar o certificado de Charles no telefone.
Minipif

28

Outra opção que não foi sugerida aqui é executar o aplicativo que você deseja monitorar no emulador do Android a partir do SDK do Android. Você pode capturar facilmente o tráfego com o wireshark na mesma máquina.

Esta foi a opção mais fácil para mim.


1
Essa é uma opção interessante. Ele pode lidar com pacotes ssl?
Ransh

22

Wireshark + OSX + iOS:

Ótima visão geral até o momento, mas se você quiser informações específicas para Wireshark + OSX + iOS:

  • instale o Wireshark no seu computador
  • conectar dispositivo iOS ao computador via cabo USB
  • conectar dispositivo iOS e computador à mesma rede WiFi
  • execute este comando em uma janela do terminal OSX: rvictl -s xonde xestá o UDID do seu dispositivo iOS. Você pode encontrar o UDID do seu dispositivo iOS via iTunes (verifique se você está usando o UDID e não o número de série).
  • Para ir ao Wireshark Capture->Options, uma caixa de diálogo é exibida, clique na linha rvi0e pressione o Startbotão.

Caixa de diálogo Opções de captura do Wireshark

Agora você verá todo o tráfego de rede no dispositivo iOS. Pode ser bastante avassalador. Algumas dicas:

  • não use o iOS com uma VPN, não será possível entender o tráfego criptografado
  • use filtros simples para focar no tráfego interessante
  • ip.addr==204.144.14.134 visualiza o tráfego com um endereço de origem ou destino 204.144.14.134
  • http visualiza apenas tráfego http

Aqui está uma janela de exemplo que descreve o tráfego TCP para download em pdf a partir de 204.144.14.134:

Tráfego TCP do Wireshark para download em pdf a partir de 204.144.14.134


9

Para o telefone Android, usei o tPacketCapture: https://play.google.com/store/apps/details?id=jp.co.taosoftware.android.packetcapture&hl=pt_BR

Este aplicativo foi um salva-vidas. Estava depurando um problema com falha do handshake SSL / TLS no meu aplicativo Android. Tentei configurar redes ad hoc para que eu pudesse usar o wireshark no meu laptop. Não funcionou para mim. Esse aplicativo rapidamente permitiu que eu capturasse o tráfego da rede, o compartilhasse no meu Google Drive para que eu pudesse fazer o download no meu laptop, onde eu poderia examiná-lo com o Wireshark! Impressionante e sem raiz necessária!


Não funcionará, se seus problemas ocorrerem somente ao usar uma VPN (e nunca terminem no hub / roteador).
Evi1M4chine

8

O aplicativo Packet Capture Android implementa uma VPN que registra todo o tráfego de rede no dispositivo Android. Você não precisa configurar nenhum servidor VPN / proxy no seu PC. Não precisa de raiz. Suporta descriptografia SSL que tPacketCapture não. Ele também inclui um bom visualizador de logs.


Essa VPN não funciona ... nenhuma página é abertura ou dados são buscados ... ter que VPN é como ter nenhuma conexão com a internet ...
Himanshu Bansal


4

Da mesma forma que tornar seu PC um ponto de acesso sem fio, mas pode ser muito mais fácil, é usar o tethering reverso. Se você possui um telefone HTC, ele tem uma boa opção de conexão reversa chamada "Internet pass-through", nas configurações de compartilhamento de rede / rede móvel. Ele direciona todo o seu tráfego através do seu PC e você pode simplesmente executar o Wireshark lá.


2

Faça do seu laptop um ponto de acesso wifi para o seu telefone (qualquer um) e conecte-o à Internet. Detecte o tráfego na sua interface wifi usando o wireshark.

você conhecerá muitas coisas anti-privacidade!


6
Você pode ser mais específico sobre como fazê-lo em pelo menos uma plataforma (Windows, Linux ou Mac OS X)?
Alexandre Marcondes

2

Condições prévias: o adb e o wireshark estão instalados no seu computador e você tem um dispositivo Android enraizado.

  1. Faça o download do tcpdump para ~ / Downloads
  2. adb push ~/Downloads/tcpdump /sdcard/
  3. adb shell
  4. su root
  5. mv /sdcard/tcpdump /data/local/
  6. cd /data/local/
  7. chmod +x tcpdump
  8. ./tcpdump -vv -i any -s 0 -w /sdcard/dump.pcap
  9. CTRL+C depois de capturar pacotes suficientes.
  10. exit
  11. exit
  12. adb pull /sdcard/dump.pcap ~/Downloads/

Agora você pode abrir o arquivo pcap usando o Wireshark.


1

Para o Android , eu usei o tPacketCapture anteriormente, mas não funcionou bem para um aplicativo que transmite algum vídeo. Agora estou usando tubarão . Você precisa ser root para usá-lo.

Ele usa TCPDump (verifique os argumentos que você pode transmitir ) e cria um arquivo pcap que pode ser lido pelo Wireshark. Os argumentos padrão geralmente são bons o suficiente para mim.


1
O tubarão não está mais disponível no Google Play.
not2qubit

De fato, parece ter sido removido. O site swapper.n3o.lv também parece não conter mais os aplicativos.
user276648

0

Eu tive um problema semelhante que me inspirou a desenvolver um aplicativo que poderia ajudar a capturar o tráfego de um dispositivo Android. O aplicativo possui servidor SSH que permite que você tenha tráfego no Wireshark on the fly ( componente sshdump wireshark ). Como o aplicativo usa um recurso do sistema operacional chamado VPNService para capturar tráfego, ele não requer acesso root.

O aplicativo está no início da versão beta. Se você tiver algum problema / sugestão, não hesite em me avisar.

Download do jogo

Tutorial no qual você pode ler detalhes adicionais

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.