Nerixyz / instagram_mqtt

Realtime and Push Notification (FBNS) support for the instagram-private-api
MIT License
244 stars 49 forks source link

mqttListen.js: TypeError: cannot set property 'implementation' of undefined #79

Closed itsMoji closed 3 years ago

itsMoji commented 3 years ago

Hi @Nerixyz,

I get this error when using the mqttListen.js script for Instagram ARM v188.0.0.35.124.

TypeError: cannot set property 'implementation' of undefined
    at <anonymous> (/mqttListen.js:75)
    at <anonymous> (frida/node_modules/frida-java-bridge/lib/vm.js:11)
    at _performPendingVmOps (frida/node_modules/frida-java-bridge/index.js:238)
    at <anonymous> (frida/node_modules/frida-java-bridge/index.js:213)
    at <anonymous> (frida/node_modules/frida-java-bridge/lib/vm.js:11)
    at _performPendingVmOpsWhenReady (frida/node_modules/frida-java-bridge/index.js:232)
    at perform (frida/node_modules/frida-java-bridge/index.js:192)
    at <eval> (/mqttListen.js:77)

What should I do?

Best Regards.

Nerixyz commented 3 years ago

You need to edit the MESSAGE_ENCODER_SEND variable at the top. It should point to the Encoder class inside the apk. The instructions are in the comment.

itsMoji commented 3 years ago

Thank you, Message Encoder for v188.0.0.35.124-ARM is X.0h1

In this version, Instagram sends all requests over QUIC protocol even photos and videos, I've tried Charles, mitmproxy and Burp, but I can't capture them. Do you have any idea how to capture QUIC requests?

Nerixyz commented 3 years ago

I think the use of OQIC is enabled in a proxygen class (in java). Not exactly sure where but probably somewhere in com.facebook.proxygen.

itsMoji commented 3 years ago

libliger.so has some functions related to QUIC too. I'm closing the issue for now.