The Burp Suite User Forum was discontinued on the 1st November 2024.

Burp Suite User Forum

For support requests, go to the Support Center. To discuss with other Burp users, head to our Discord page.

SUPPORT CENTER DISCORD

How do I know if https requests are failing to be decrypted?

Andrew | Last updated: Dec 23, 2021 05:12AM UTC

I am attempting to mitm an android emulator on my computer with burpsuite. I am able to see https traffic of insecure things like assets, but I see no traffic for data being posted to and from the app, over https. I know the traffic is happening because the app is still functioning, but there is no indication in burpsuite that there are errors. Is this by design? My question is regarding error logging, but just to add more details: I have generated a certificate, converted it to the proper android format, and added it to the root cert folder (this is a genymotion emulator). Currently I am attempting to use a frida script to disable certificate pinning (assuming that is why I do not see traffic) but I am frustrated that I have no way of telling if burpsuite attempted to handshake ssl with their portswigger cert and failed, or if its just ignoring https traffic entirely for this app. I should point out that the default web browser has http2 traffic visible in burpsuite, so it does appear to be _able_ to decrypt ssl traffic, theres just no visibility into when it does. below is the commands I used to get my cert onto the emulator. My question is more about the burpsuite app UI, but this is possibly still useful to share. ```bash # Convert DER to PEM openssl x509 -inform DER -in cacert.der -out cacert.pem # Get subject_hash_old (or subject_hash if OpenSSL < 1.0) openssl x509 -inform PEM -subject_hash_old -in cacert.pem |head -1 # Rename cacert.pem to <hash>.0 mv cacert.pem 9a5ba575.0 # Remount and copy cert to device adb root adb remount adb push 9a5ba575.0 /sdcard/ adb shell vbox86p:/ # mv /sdcard/9a5ba575.0 /system/etc/security/cacerts/ vbox86p:/ # chmod 644 /system/etc/security/cacerts/9a5ba575.0 vbox86p:/ # reboot ``` Thank you for your help

Andrew | Last updated: Dec 23, 2021 03:06PM UTC

[edit] I may have misinterpreted parts of this tool. If I disable the burpsuite cert on the emulator, using the default web browser will not make any requests past an initial http://google.com request. Enabling the cert again, the full https://google.com page loads and the requests are shown in burpsuite. I think this means that burpsuite doesn't silently error out on decryption, and forces apps to use their specific certificate. Likewise, in the app I am attempting to pen test, I can see https traffic (http2). So I believe that the cert is being used. I think the reason the app functions despite seeing the traffic is that the actual traffic happens inside a websocket, or perhaps over UDP. I am guessing this because I see a few responses that look like websocket connection information (e.g. ip, port, what to do when frames get dropped). I don't however, see any websocket traffic under "WebSockets history" and I don't see any "Connection: Upgrade" requests. Is it possible there are types of websocket connections that burpsuite cannot capture?

Uthman, PortSwigger Agent | Last updated: Dec 23, 2021 03:52PM UTC

Hi Andrew, Thanks for this post. I'm just reviewing the information and will get back to you with some feedback as soon as possible. Thanks in advance for your patience!

Andrew | Last updated: Dec 23, 2021 08:05PM UTC

Thanks Uthman, I think I can narrow down my confusion to a few questions: 1. does burpsuite intercept wss:// protocol (secure websockets). If so, do I have to do anything special with certs? 2. does burpsuite hide any http traffic? (I am not filtering anything in the "Http History" tab) 3. does burpsuite have any way of detecting non-tls traffic (e.g. UDP traffic from WebRTC perhaps)

Andrew | Last updated: Dec 23, 2021 08:11PM UTC

following up on #3, I suppose its possible this app is using http3 https://blog.cloudflare.com/http3-the-past-present-and-future, which is based on UDP, or MQTT https://mqtt.org/ like instagram does. I don't believe burpsuite would be able to tell me this.

Uthman, PortSwigger Agent | Last updated: Dec 24, 2021 08:51AM UTC