Configuração do Burp Suite para iOS
Tip
Aprenda e pratique Hacking AWS:
HackTricks Training AWS Red Team Expert (ARTE)
Aprenda e pratique Hacking GCP:HackTricks Training GCP Red Team Expert (GRTE)
Aprenda e pratique Hacking Azure:
HackTricks Training Azure Red Team Expert (AzRTE)
Supporte o HackTricks
- Confira os planos de assinatura!
- Junte-se ao 💬 grupo do Discord ou ao grupo do telegram ou siga-nos no Twitter 🐦 @hacktricks_live.
- Compartilhe truques de hacking enviando PRs para o HackTricks e HackTricks Cloud repositórios do github.
Installing the Burp Certificate on iOS Devices
Para análise segura do tráfego web e SSL pinning em dispositivos iOS, o Burp Suite pode ser utilizado tanto através do Burp Mobile Assistant quanto via configuração manual. Abaixo segue um guia resumido para ambos os métodos:
Automated Installation with Burp Mobile Assistant
O Burp Mobile Assistant simplifica o processo de instalação do Burp Certificate, configuração do proxy e SSL Pinning. Orientações detalhadas podem ser encontradas na documentação oficial da PortSwigger.
Manual Installation Steps
- Proxy Configuration: Start by setting Burp as the proxy under the iPhone’s Wi-Fi settings.
- Certificate Download: Navigate to
http://burpon your device’s browser to download the certificate. - Certificate Installation: Install the downloaded profile via Settings > General > VPN & Device Management, then enable trust for the PortSwigger CA under Certificate Trust Settings.
Configuring an Interception Proxy
A configuração permite a análise do tráfego entre o dispositivo iOS e a internet através do Burp, exigindo uma rede Wi‑Fi que suporte tráfego client-to-client. Se isso não for possível, uma conexão USB via usbmuxd pode servir como alternativa. Os tutoriais da PortSwigger fornecem instruções detalhadas sobre device configuration e certificate installation.
Transparent Proxying via OpenVPN + iptables REDIRECT
If the target app ignores the configured HTTP proxy, an alternative is to place the iOS device behind a researcher-controlled VPN gateway and transparently redirect the traffic into Burp or mitmproxy.
This is not a certificate pinning bypass by itself. It only solves the network plumbing so the device traffic reaches your interception proxy without configuring a per-app or per-device proxy. If the app performs real certificate pinning, HTTPS decryption will still fail until pinning is bypassed separately.
Fluxo típico:
- Run an OpenVPN server on a Linux host and connect the iOS device so its traffic arrives on
tun0. - Bind Burp or
mitmproxyto the VPN listener IP on port8080. - Enable invisible proxying in Burp because redirected clients are not proxy-aware and will talk as if they were connecting directly to the destination.
- Redirect TCP
80and443arriving ontun0to the local proxy listener. - Add a
POSTROUTINGMASQUERADE rule on the egress interface so proxied traffic can leave the gateway and replies return through the VPN. - Install and trust the interception proxy CA on the iOS device so apps that rely only on the system trust store accept the generated leaf certificates.
Example rules:
# Redirect VPN client traffic into the local interception proxy
iptables -t nat -A PREROUTING -i tun0 -p tcp --dport 80 -j REDIRECT --to-ports 8080
iptables -t nat -A PREROUTING -i tun0 -p tcp --dport 443 -j REDIRECT --to-ports 8080
# Allow VPN client traffic to egress back to the Internet
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
Notas:
- Isto é útil quando você quer forced interception sem alterar o app alvo ou configurar um proxy explícito nas configurações de Wi-Fi do iOS.
- Redirecionar
443para Burp funciona apenas para apps que confiam na CA instalada ou para apps onde TLS validation / pinning já foi contornado. - O script de exemplo no repositório upstream pega um IP e acrescenta
/24na regraPOSTROUTING. Na prática, use a actual VPN client subnet em vez de presumir um/24fixo. - Se você usar Burp, habilite Proxy –> Options –> Edit listener –> Request handling –> Support invisible proxying.
mitmproxypode ser usado na mesma configuração se estiver vinculado ao IP do listener VPN e os requisitos de transparent-mode forem satisfeitos.
Configuração Avançada para Jailbroken Devices
Para usuários com dispositivos jailbroken, SSH sobre USB (via iproxy) oferece um método para rotear o tráfego diretamente pelo Burp:
- Estabelecer Conexão SSH: Use iproxy para encaminhar SSH para localhost, permitindo a conexão do dispositivo iOS ao computador que está executando o Burp.
iproxy 2222 22
- Encaminhamento de Porta Remota: Encaminhe a porta 8080 do dispositivo iOS para o localhost do computador para permitir acesso direto à interface do Burp.
ssh -R 8080:localhost:8080 root@localhost -p 2222
- Configuração de Proxy Global: Por fim, configure as configurações de Wi-Fi do dispositivo iOS para usar um proxy manual, direcionando todo o tráfego web através do Burp.
Monitoramento Completo de Rede/Sniffing
O monitoramento de tráfego não-HTTP do dispositivo pode ser conduzido de forma eficiente usando o Wireshark, uma ferramenta capaz de capturar todas as formas de tráfego de dados. Para dispositivos iOS, o monitoramento de tráfego em tempo real é facilitado pela criação de uma Remote Virtual Interface, um processo detalhado em this Stack Overflow post. Antes de começar, a instalação do Wireshark em um sistema macOS é um pré-requisito.
O procedimento envolve vários passos principais:
- Inicie uma conexão entre o dispositivo iOS e o host macOS via USB.
- Obtenha o UDID do dispositivo iOS, um passo necessário para o monitoramento de tráfego. Isso pode ser feito executando um comando no macOS Terminal:
$ rvictl -s <UDID>
Starting device <UDID> [SUCCEEDED] with interface rvi0
- Após a identificação do UDID, abra o Wireshark e selecione a interface “rvi0” para captura de dados.
- Para monitoramento direcionado, como capturar tráfego HTTP relacionado a um IP específico, podem ser usados os Capture Filters do Wireshark:
Burp Cert Installation in Simulator
- Export Burp Certificate
In Proxy –> Options –> Export CA certificate –> Certificate in DER format
.png)
- Arrastar e soltar o certificado dentro do Emulador
- Dentro do emulador vá para Settings –> General –> Profile –> PortSwigger CA, e verifique o certificado
- Dentro do emulador vá para Settings –> General –> About –> Certificate Trust Settings, e ative o PortSwigger CA
.png)
Parabéns, você configurou com sucesso o Certificado CA do Burp no iOS simulator
Tip
O iOS simulator usará as configurações de proxy do MacOS.
MacOS Proxy Configuration
Passos para configurar o Burp como proxy:
- Vá para System Preferences –> Network –> Advanced
- Na aba Proxies marque Web Proxy (HTTP) e Secure Web Proxy (HTTPS)
- Em ambas as opções configure 127.0.0.1:8080
.png)
- Clique em Ok e em Apply
References
Tip
Aprenda e pratique Hacking AWS:
HackTricks Training AWS Red Team Expert (ARTE)
Aprenda e pratique Hacking GCP:HackTricks Training GCP Red Team Expert (GRTE)
Aprenda e pratique Hacking Azure:
HackTricks Training Azure Red Team Expert (AzRTE)
Supporte o HackTricks
- Confira os planos de assinatura!
- Junte-se ao 💬 grupo do Discord ou ao grupo do telegram ou siga-nos no Twitter 🐦 @hacktricks_live.
- Compartilhe truques de hacking enviando PRs para o HackTricks e HackTricks Cloud repositórios do github.


