charleywright / spotify-analyze-v2

4 stars 1 forks source link

Not working anymore since last Spotify Update (8.9.66.543, Android) #11

Open maximilianosinski opened 2 months ago

maximilianosinski commented 2 months ago

Today i was trying to reverse the App (i downloaded it from apkpure as always), but suddenly it wasn't showing the mercury stuff / any other stuff anymore, i don't know what it is, maybe you can have a look at it. (yes, im logged in and everything)

here is the console log:

Unable to start: Error binding to address 127.0.0.1:27042: Address already in use
Target: android
Executable: com.spotify.music
Binary: \\?\C:\Users\lalo\Desktop\spotify-analyze\platform-tools\liborbit-jni-spotify.so
Found ELF relocation 0x0000000000-0x000112c180 -> 0x0000000000-0x000112c180 (0x0000000000 - 0x0001130000)
Found ELF relocation 0x0001130000-0x0001203038 -> 0x0001130000-0x0001203038 (0x0001130000 - 0x0001204000)
Found ELF relocation 0x0001203038-0x000123df08 -> 0x0001207038-0x0001279488 (0x0001204000 - 0x000127c000)
Detected JNI for arm64-v8a
Found server public key at liborbit-jni-spotify.so:0x0000315060 Offset: 0x0000315060 Address: 0x0000315060
Found shannon constant at liborbit-jni-spotify.so:0x0001074eec Offset: 0x0001074eec Address: 0x0001074eec
Found shannon constant at liborbit-jni-spotify.so:0x0001075558 Offset: 0x0001075558 Address: 0x0001075558
Found shannon constant at liborbit-jni-spotify.so:0x0001076dec Offset: 0x0001076dec Address: 0x0001076dec
Found function prologue at liborbit-jni-spotify.so:0x00010755e0 Offset: 0x00010755e0 Address: 0x00010755e0
Found function prologue at liborbit-jni-spotify.so:0x00010761d4 Offset: 0x00010761d4 Address: 0x00010761d4
Using offsets:
 - shannon_offset1:   0x00010755e0
 - shannon_offset2:   0x00010761d4
 - server_public_key: 0x0000315060
Found package.json at C:\Users\lalo\Desktop\spotify-analyze\spotify-analyze-v2\needle\package.json
Using script dir C:\Users\lalo\Desktop\spotify-analyze\spotify-analyze-v2\needle
v20.16.0
Der Befehl "yarn" ist entweder falsch geschrieben oder
konnte nicht gefunden werden.
10.8.1
Der Befehl "yarn" ist entweder falsch geschrieben oder
konnte nicht gefunden werden.
Running command `"node" "C:\\Users\\lalo\\Desktop\\spotify-analyze\\spotify-analyze-v2\\needle\\bootstrap.js" "--platform" "android" "--exec" "com.spotify.music" "--" "serverKey=0x315060" "shnAddr1=0x10755e0" "shnAddr2=0x10761d4"`
Spawned process 5869
[STATUS] Injected into process. Got arguments:
{
  "serverKey": "0x315060",
  "shnAddr1": "0x10755e0",
  "shnAddr2": "0x10761d4"
}
[STATUS] Hooked dlopen                                                                                                  
[INFO] android_dlopen_ext(/system/framework/oat/x86_64/org.apache.http.legacy.odex, 0 | RTLD_NOW, 0x7ffd48d48050)       
[INFO] android_dlopen_ext(/data/app/~~IUrC5-9UReocygv6yOEFaw==/com.spotify.music-PKqkkDPISqxtUkGQTCBTmg==/oat/x86_64/base.odex, 0 | RTLD_NOW, 0x7ffd48d481b0)
[INFO] android_dlopen_ext(/system/lib64/arm64/nb/libtcb.so, 0 | RTLD_NOW, 0x732f792e9470)                               
[INFO] android_dlopen_ext(/system/framework/oat/x86_64/com.android.media.remotedisplay.odex, 0 | RTLD_NOW, 0x732f75bea620)
[INFO] android_dlopen_ext(/vendor/lib64/hw/android.hardware.graphics.mapper@2.0-impl.so, 0 | RTLD_LAZY, 0x732f72a78198) 
[INFO] android_dlopen_ext(/vendor/lib64/hw/gralloc.default.so, 0 | RTLD_NOW, 0x732f72a74058)                            
[INFO] android_dlopen_ext(/system/framework/oat/x86_64/com.android.location.provider.odex, 0 | RTLD_NOW, 0x732f75bea620)
[INFO] android_dlopen_ext(/data/dalvik-cache/x86_64/data@priv-downloads@com.google.android.gms@base.apk@classes.dex, 0 | RTLD_NOW, 0x732f75bea780)
[INFO] android_dlopen_ext(/data/dalvik-cache/x86_64/data@downloads@com.android.chrome@base.apk@classes.dex, 0 | RTLD_NOW, 0x732f714b1340)
[INFO] android_dlopen_ext(libmonochrome.so, 0 | RTLD_NOW, 0x732f714b2de0)                                               
[INFO] android_dlopen_ext(/data/downloads/com.android.chrome/base.apk!/lib/x86_64/libmonochrome.so, 0 | RTLD_NOW, 0x732f714b2000)
[INFO] android_dlopen_ext(/system/lib64/libwebviewchromium_plat_support.so, 0 | RTLD_NOW, 0x732f714b2200)
maximilianosinski commented 2 months ago

Any updates on this?

maximilianosinski commented 2 months ago

I did some intensive testing today and it seems it only works with the previous Spotify App Versions not the latest one.

Do you also perhaps have a contact way, like email, discord, telegram or something?

charleywright commented 2 months ago

Apologies for taking a while to get to this, I just checked 8.9.64.548 arm64 and 8.9.66.543 arm64 and the injector is finding the correct functions which is good. From the log you posted it looks like the JNI library is not getting loaded or is being loaded by some other means (maybe new obfuscation?). This could be the same problem as #6, we will have to do more testing. I'll see if I can reproduce this but in the meantime feel free to post your Discord username then we can try to finally fix this :)

maximilianosinski commented 2 months ago

Can i send it to you over email or something? I want my discord to stay private.

maximilianosinski commented 2 months ago

?

charleywright commented 2 months ago

I sent you a friend request, I only have today though as I'm going away for a week

charleywright commented 2 months ago

For anyone else who runs into this issue, the problem is caused by using an APK that does not have the correct library for your architecture, e.g. if your device/emulator is x86_64 but the APK only contains libraries for ARM then you will run into this bug. When I have some time I'll look into this further and see if there is a feasible fix or if I can at least add a warning