
QCSuper é uma ferramenta que comunica com telemóveis e modems baseados em Qualcomm, permitindo capturar frames de rádio 2G/3G/4G em bruto, entre outras coisas.
QCSuper é uma ferramenta que comunica com telefones e modems baseados em Qualcomm, permitindo capturar quadros de rádio 2G/3G/4G brutos (e, em certos modelos, 5G), entre outras coisas.
Ela permitirá que você gere capturas PCAP usando um telefone Android com root, um dongle USB ou uma captura existente em outro formato.

Depois de instalá-la, você pode conectar seu telefone com root via USB e, com um dispositivo compatível, usá-la é tão simples quanto:```bash qcsuper --adb --wireshark-live
Or, se você tiver ativado manualmente a exposição de uma porta Diag no seu telefone (o procedimento correspondente pode variar dependendo do modem e do fabricante do telefone, veja abaixo para mais explicações), ou se você tiver conectado um dongle de banda larga móvel:```bash
qcsuper --usb-modem auto --wireshark-live
Ele usa o protocolo Diag da Qualcomm, também chamado de QCDM ou DM (Monitor de Diagnóstico) para se comunicar com a banda base do seu telefone.
Você quer nos informar se o seu dispositivo funciona ou não? Você pode abrir uma issue no Github.
Anexos:
Post no blog/demo: Apresentando o QCSuper: uma ferramenta para capturar seu tráfego aéreo 2G/3G/4G em telefones baseados em Qualcomm
Mais documentação:
O QCSuper foi recentemente testado e desenvolvido no Ubuntu LTS 22.04+ e também foi usado no Windows 11. Ele depende de alguns módulos Python. Recomenda-se usar Linux para melhor compatibilidade.
Para usá-lo, seu telefone deve estar com root ou expor uma porta de serviço diag via USB. Para verificar a compatibilidade com seu telefone, pesquise o modelo do aparelho em um site como GSMArena e verifique se ele possui um processador Qualcomm.
Para abrir arquivos PCAP produzidos pelo QCSuper, você pode usar qualquer Wireshark 2.x - 4.x para quadros 2G/3G, mas precisa de pelo menos Wireshark 2.5.x para quadros 4G (e 2.6.x para mensagens NAS individuais descriptografadas de quadros 4G). O Ubuntu atualmente fornece uma versão recente o suficiente para todas as versões.
A decodificação de quadros 5G foi testada no Wireshark 3.6.x ou superior e será feita por meio da instalação automática de um plug-in Lua do Wireshark (em %APPDATA%\Wireshark\plugins no Windows ou em ~/.local/lib/wireshark/plugins no Linux e macOS), o que pode ser evitado definindo a variável de ambiente DONT_INSTALL_WIRESHARK_PLUGIN=1 se você quiser evitar isso.
Para instalar a versão estável do QCSuper em todo o sistema a partir do PyPI, você pode executar estes comandos:```bash
sudo apt install python3-pip wireshark
sudo pip3 install --upgrade qcsuper --break-system-packages
Em seguida, basta digitar `qcsuper` no seu terminal para executar o QCSuper.
Para instalar a versão de desenvolvimento em uma pasta específica, abra um terminal e digite o seguinte:```bash
# Download QCSuper
git clone https://github.com/P1sec/qcsuper
cd qcsuper
# Install dependencies
sudo apt install python3-pip wireshark
sudo pip3 install --upgrade . --break-system-packages
Em seguida, execute o QCSuper a partir do diretório qcsuper/, usando o comando ./qcsuper.py no terminal.
No Linux, você pode instalar o QCSuper usando o gerenciador de pacotes uv, que é uma alternativa moderna ao PIP.
Primeiro, execute um destes comandos no seu terminal para instalar o uv:```bash
sudo snap install --classic astral-uv # On Ubuntu
sudo dnf install -y uv # On Fedora
sudo pacman -S uv # On Archlinux, Manjaro
curl -LsSf https://astral.sh/uv/install.sh | sh # On Debian and others
Em seguida, execute isto para instalar a versão estável mais recente:```bash
uv tool install qcsuper
Alternativamente, você pode instalar a versão de desenvolvimento mais recente usando este comando:```bash uv tool install git+https://github.com/P1sec/qcsuper
Você pode então simplesmente digitar isso no seu terminal:```bash
qcsuper
However, if you need to run qcsuper as root, for example because you are reading data from a modem device, qcsuper may not be in $PATH when using uv with sudo so this may require to do something such as:```bash
sudo env "PATH=$PATH" qcsuper
Se você deseja participar do desenvolvimento da ferramenta, pode usar estes comandos para baixar o código-fonte e, em seguida, criar links simbólicos para o QCSuper em `~/.local/bin` apontando para o diretório do código-fonte:```bash
git clone https://github.com/P1sec/qcsuper
cd qcsuper
uv sync # Create .venv in the current directory
uv tool install -e . # Create symlinks into ~/.local/bin
O QCSuper pode ser executado no Windows, mas você deve, antecipadamente, garantir que o prompt do ADB do Google seja executado corretamente na sua máquina com o seu dispositivo, e também criar manualmente os filtros libusb-win32 (por meio do utilitário acessível no Menu Iniciar após instalá-lo) caso o seu dispositivo precise se conectar diretamente à porta Diag via USB pseudo-serial.
(Observe que, se você alternar o modo do seu dispositivo, o PID/VID USB associado pode mudar e pode ser necessário refazer as associações de driver no utilitário de criação de filtros libusb-win32 - e/ou no gerenciador de dispositivos periféricos do Windows, dependendo do caso)
No Windows, você pode precisar (além dos drivers de kernel do ADB do Google) baixar e instalar os drivers USB do seu telefone de acordo com o modelo (isso pode incluir drivers USB Qualcomm genéricos). Pesquise no Google pelo modelo do seu telefone + "USB driver" ou "ADB driver" para obter instruções.
Em seguida, você precisa garantir que consegue acessar seu dispositivo usando adb. Você pode encontrar um tutorial sobre como baixar e configurar o adb aqui. O comando adb.exe shell (ou qualquer caminho de executável que você use; uma cópia do executável ADB está presente na pasta qcsuper/inputs/external/adb do QCSuper) deve exibir um prompt para continuar.
Em seguida, siga estes links (a ferramenta foi testada recentemente no Windows 11 - não há garantia de funcionamento no Windows 7) para: