How To: Reverse Engineer Any Private API (iOS/Android and Desktop)

Поділитися
Вставка
  • Опубліковано 7 вер 2024
  • In this video I demonstrate a simple step by step tutorial on how to connect to and create requests to any Private API on iOS, macOS, Android, Linux and Windows.
    In other words. Hack/Reverse Engineer a Private API (Don't tell tencent plz)
    Read my Blog Post: downthecrop.xy...
    Fiddler: www.telerik.co...
    MitM Proxy: mitmproxy.org/
    Follow my socials:
    / downthecrop
    / downthecrop
    downthecrop.xy...
    / downthecrop
    / downthecrop

КОМЕНТАРІ • 62

  • @downthecrop
    @downthecrop  3 роки тому +3

    Tencent WeGame Statistics Project! Open Source! github.com/downthecrop/wegame-tencent-china-opgg

  • @enigma7452
    @enigma7452 2 роки тому +42

    Been struggling for so long on doing this, then found out about a thing called "SSL pinning" which apps are using more and more to prevent this MITM attack for API monitoring, so if you're still stuck, look into that.

    • @rexintonegamers
      @rexintonegamers 2 роки тому +2

      In Android with Xposed modules I used sll Unpinning worked for some appp u have any other method?

    • @enigma7452
      @enigma7452 2 роки тому +2

      @@rexintonegamers I have IOS device so i ended up jailbreaking it and then installing a tweak (SSL KILL switch) which bypasses the SSL pinning, that's what i ended up doing.

    • @nuttolum
      @nuttolum Рік тому

      you can decompile the app, disable ssl pinning in the code, and recompile it but its very difficult

    • @methadonmanfred2787
      @methadonmanfred2787 Рік тому +2

      on android you can use a tool called apk-mitm to modify an apk and remove certificate pinning, works great on most apps

    • @methadonmanfred2787
      @methadonmanfred2787 Рік тому +2

      @@nuttolum apk-mitm basically automates this process

  • @the-web-scraping-guy
    @the-web-scraping-guy Рік тому +3

    Worked amazing. So easy. Super helpful video thank you

  • @bobmars8771
    @bobmars8771 2 роки тому +1

    I LOVED this.
    Thank you so much for sharing
    ez sub

  • @kqvanity
    @kqvanity Рік тому +4

    Speaking of replaying the request, when I was a kid, there was this web-based game that everyone hyped over. There was two kinds of attacks, whereby the first one you'd just typically inspect element/fiddle with its memory addresses with CE the specific value on your client browser, and gold coins - or whichever resource - would max out accordingly, or go raw, and alter it server-side, with surely permanent effects. The underlying principle behind the latter was surely more intricate, but fundamentally I can speculate that - according to the semantics of the later disclosed method - it was based off replaying a precious request. Say you're about to sell a goldmine you've been pouring your time and sweat in for the past week or so, you could defer this action, fire up something like Charles at that era, isolate the game's domain, get the game in a kind of a stale state with no actions of your side, then listen for its requests, conduct the purchase, and you're good to go. Keep replaying the last action over and over nonstop. I even came up with some cursor-movement-repeating-macro kind of apps, that would just keep clicking the replay button. I remember once abusing the clicking till my Win7 cursor just started glitching non-stop, and apparently the server didn't implement a BigDecimal or smh for players' values. ;), thus my game records just overflowed with negative value.

  • @mhamademad
    @mhamademad Рік тому

    out of all this, i think the image caching was the most pro move.

  • @evevoHD
    @evevoHD 3 роки тому

    bro I also listened to this japanese songs playlist on youtube while reversing/programming hahah glad i am not alone

  • @leonxger
    @leonxger 6 місяців тому

    So helpful, great stuff!

  • @TheJaniable
    @TheJaniable Рік тому

    Really useful. It's suprising to me that this is not possible on Android without rooting the phone. iOS - in this case - is more developer-friendly.

  • @thesystem_bz
    @thesystem_bz 3 роки тому +1

    Amazing! This helped!

  • @scottvrosenfeld
    @scottvrosenfeld 3 роки тому

    I'm telling! That youre da man! Thx G!

  • @andredinizo
    @andredinizo 5 місяців тому

    Awesome video, thanks

  • @steamsteam36
    @steamsteam36 3 роки тому +1

    Hey dude when I connected to proxy on my phone I don't get the wifi connection "502" problem. can you help me ?

  • @dishi1951
    @dishi1951 6 місяців тому

    Anyone managed to do this for Android apps? It forks in Chrome on my phone, but no advancement on any apps (shows I'm not connected to the internet...). Installed the CA certificate as well...

  • @DrewBrewsx
    @DrewBrewsx 11 місяців тому +1

    yup SSL pinning is always blocking me xD

    • @oakdesign4629
      @oakdesign4629 10 місяців тому

      I use Genymotion as Emulator burp suite as proxy and Frida for SSL unpinning. Can be setup within an hour and works like a charm for any android app I reversed engineered so far

  • @yacked
    @yacked 3 роки тому +1

    splendid video

  • @hyeonoppa
    @hyeonoppa 2 роки тому +1

    when using mitmproxy web, the client generates a token key which will expire but I need to grab it from mitmproxy itself. Is there a way to grab it using python?

    • @theblackrat7350
      @theblackrat7350 Рік тому +1

      Most token-based applications has a request used to generate the authorization token, in some cases it can be a response of an isolated request (which you can easily emulate if you find), a response of an authorization request (generally a login request) or either a response header of a request. If your target is a mobile application, the token can be generated by some specific algorithm, in that case, you will need to decompile the app and reverse engineer the function/class responsible for generating the token, after finding it, use Frida to inject malicious code into the application during runtime to replicate the function used to generate the required token.

  • @dp01452
    @dp01452 3 роки тому +2

    How to do you protect dll api?

  • @the-web-scraping-guy
    @the-web-scraping-guy Рік тому

    Amazing thank you

  • @bugs18-l5q
    @bugs18-l5q Місяць тому

    what windows version

  • @hrithik4515
    @hrithik4515 5 місяців тому

    Can you please tell how to find ip and ip port of any game in ios? For eg pubg

  • @JuniorBloxHD
    @JuniorBloxHD 8 місяців тому

    thank you!!!!

  • @jasonc6241992
    @jasonc6241992 2 роки тому

    How can i do this from a web server programmatically?

  • @jetzeto29
    @jetzeto29 Місяць тому

    So we could still access Pokemon go API?

  • @akshaykadamTalksfooty
    @akshaykadamTalksfooty 8 місяців тому

    appguard blocks it on mitmproxy

  • @hassen500
    @hassen500 2 роки тому

    could you ever make money or get a job in the security field? its so not in demand!

  • @who_owl
    @who_owl Місяць тому

    Your voice aaaaa

  • @bobsanders2145
    @bobsanders2145 3 роки тому +1

    I have TWC. It's not working for me. You think my provider is blocking it? when I go to mitm.it it shows a black screen. My firewall is off.

  • @nick-pu4zae
    @nick-pu4zae Рік тому

    👌

  • @AR-15K1
    @AR-15K1 Рік тому

    I'm having a lot of problem with an apk, they gave me this for work, can someone help me and maybe earn some money?

  • @drygordspellweaver8761
    @drygordspellweaver8761 2 роки тому

    Is mitm trustworthy? And what’s that workaround for android certificate? Thanks!

    • @theblackrat7350
      @theblackrat7350 Рік тому +2

      I don't know if you're still interested in hacking or either solved your doubts already, but the solution for SSL Pinning (on android) is kinda complicated in theory, it's about reverse engineering and injecting code into the app during runtime, and bypassing functions and classes which do the certificate pinning. The hacking community already did a tool to automate that, take a look at Frida (in their docs there are a lot of bypasses for SSL Pinning, Root detection and more) and in the Xposed framework which has a collection of scripts to bypass any trouble you can encounter during a reverse engineering session.

    • @drygordspellweaver8761
      @drygordspellweaver8761 Рік тому

      @@theblackrat7350 I got it working a while back with both Frida as well as an Xposed module. Currently using burpsuite and Enigma to reverse an app API. Cheers though and thanks for your reply!

  • @socialhubmarketing179
    @socialhubmarketing179 3 роки тому +1

    hi there....can u help reverse engineer a android apk and devlop the api....i need to use the api to make a bot...let me knw...we can discuss the project and the charges.

  • @elrisitas8508
    @elrisitas8508 3 роки тому +11

    nerd also reported

  • @aibi5532
    @aibi5532 3 місяці тому

    so android is secure 😅😅

  • @christcombiccombichrist2651
    @christcombiccombichrist2651 4 місяці тому +1

    I have no fucking Idea what i just watch. 😞