I have experience with android reverse engineering through modification of smali codes after de-assembling. I did modify some apps already for educational purposes. However, I am facing an issue for signle apk app that has so many files and obfuscations. I can deal with obfuscations but I want to analyze the code flow, for example I want to see what methods and return values are triggered after pressing a button. Android studio has smali add-ons but stopped working and cannot get even the specified return values at given debugging point. I read about Frida, IDA pro and ghidra. I want to start one of them at least so I can do the most difficult tasks. I will dedicate my time to master it but I want a hint from experts in this regard. Could you please suggest a direction for me.
-
An experienced developer may use any of the mentioned tools. Questions that require an opinion-based answer (respectively personal preference) are considered off-topic as this site focuses on answers that are based on facts not opinions. My personal opinion is that Frida is good for starting as it is not too complex as long as You are an experienced Android and JavaScript developer.– RobertJul 30, 2022 at 8:59
-
Great, thanks Robert– Riva11Jul 30, 2022 at 15:33
-
I usually use github.com/skylot/jadx, it decompiles classes*.dex to java, and also converts the .xml files to readable format. For the .so library files you would need a tool like IDAPro, or ghidra.– Willem HengeveldAug 1, 2022 at 21:07
-
Thank you Willem, I have jadx and use it sometimes to trace. I learnt many think in ghidra in the past days.– Riva11Aug 5, 2022 at 22:04