iBotPeaches / Apktool

A tool for reverse engineering Android apk files
https://apktool.org/
Apache License 2.0
19.94k stars 3.57k forks source link

[BUG] Couldn't Find Library, crash after recompiling without modify #3597

Open firdiar-mita opened 4 months ago

firdiar-mita commented 4 months ago

Information

  1. Apktool Version (apktool -version) - 2.9.3
  2. Operating System (Mac, Linux, Windows) - Windows
  3. APK From? (Playstore, ROM, Other) - Playstore extracted apk
  4. Java Version (java --version) - java 21 2023-09-19 LTS

Stacktrace/Logcat

0001/01/01 00:00:00.000 -1 -1 Info  --------- beginning of crash
2024/05/13 10:14:40.285 4850 4850 Error AndroidRuntime FATAL EXCEPTION: main
2024/05/13 10:14:40.285 4850 4850 Error AndroidRuntime Process: com.somecompany, PID: 4850
2024/05/13 10:14:40.285 4850 4850 Error AndroidRuntime java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.somecompany-1/base.apk"],nativeLibraryDirectories=[/data/app/com.somecompany-1/lib/x86, /system/lib, /vendor/lib]]] couldn't find "libpairipcore.so"
2024/05/13 10:14:40.285 4850 4850 Error AndroidRuntime  at java.lang.Runtime.loadLibrary0(Runtime.java:984)
2024/05/13 10:14:40.285 4850 4850 Error AndroidRuntime  at java.lang.System.loadLibrary(System.java:1562)
2024/05/13 10:14:40.285 4850 4850 Error AndroidRuntime  at com.pairip.VMRunner.<clinit>(VMRunner.java:30)
2024/05/13 10:14:40.285 4850 4850 Error AndroidRuntime  at com.pairip.VMRunner.invoke(VMRunner.java:49)
2024/05/13 10:14:40.285 4850 4850 Error AndroidRuntime  at com.pairip.StartupLauncher.launch(StartupLauncher.java:14)
2024/05/13 10:14:40.285 4850 4850 Error AndroidRuntime  at li.l.<clinit>(Hilt_MyApplication.java)
2024/05/13 10:14:40.285 4850 4850 Error AndroidRuntime  at java.lang.Class.newInstance(Native Method)
2024/05/13 10:14:40.285 4850 4850 Error AndroidRuntime  at android.app.Instrumentation.newApplication(Instrumentation.java:1007)
2024/05/13 10:14:40.285 4850 4850 Error AndroidRuntime  at android.app.Instrumentation.newApplication(Instrumentation.java:992)
2024/05/13 10:14:40.285 4850 4850 Error AndroidRuntime  at android.app.Instrumentation.newApplication(Native Method)
2024/05/13 10:14:40.285 4850 4850 Error AndroidRuntime  at android.app.LoadedApk.makeApplication(LoadedApk.java:796)
2024/05/13 10:14:40.285 4850 4850 Error AndroidRuntime  at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5434)
2024/05/13 10:14:40.285 4850 4850 Error AndroidRuntime  at android.app.ActivityThread.-wrap2(ActivityThread.java)
2024/05/13 10:14:40.285 4850 4850 Error AndroidRuntime  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1548)
2024/05/13 10:14:40.285 4850 4850 Error AndroidRuntime  at android.os.Handler.dispatchMessage(Handler.java:102)
2024/05/13 10:14:40.285 4850 4850 Error AndroidRuntime  at android.os.Looper.loop(Looper.java:154)
2024/05/13 10:14:40.285 4850 4850 Error AndroidRuntime  at android.app.ActivityThread.main(ActivityThread.java:6176)
2024/05/13 10:14:40.285 4850 4850 Error AndroidRuntime  at java.lang.reflect.Method.invoke(Native Method)
2024/05/13 10:14:40.285 4850 4850 Error AndroidRuntime  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:893)
2024/05/13 10:14:40.285 4850 4850 Error AndroidRuntime  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:783)

Steps to Reproduce

  1. Decompile -r
  2. Recompile i didn't modify anything, i tried both using APKLab and manual if i decompile without -r ,after recompiled to apk, the apk can't be installed, but if i put -r the apk can be installed but crash immidiately the error as above

APK

https://drive.google.com/file/d/1kzU6LnZDR5eEryeyOQbq1tb3QMPIqRr7/view?usp=sharing

Questions to ask before submission

  1. Have you tried apktool d, apktool b without changing anything? yes
  2. If you are trying to install a modified apk, did you resign it? yes
  3. Are you using the latest apktool version? yes
DummybugStudios commented 3 months ago

Doesn't seem like an apktool issue. If you unzip the APK you provided, that library is nowhere to be found so it doesn't come bundled with this APK. It seems that some play store utility puts this library there but your extraction method didn't let you extract it.

If you install the apk you provided and run it on an emulator, the library is not found either but it is found on my phone. From the brief googling I did, it seems that this library usually acts as an anti-tampering mechanism.

bala-murugan-dev commented 3 months ago

Doesn't seem like an apktool issue. If you unzip the APK you provided, that library is nowhere to be found so it doesn't come bundled with this APK. It seems that some play store utility puts this library there but your extraction method didn't let you extract it.

If you install the apk you provided and run it on an emulator, the library is not found either but it is found on my phone. From the brief googling I did, it seems that this library usually acts as an anti-tampering mechanism.

Could you share the resources where you referred for this as anti-tampering?