程序调用了名为phcm的so文件,并从so文件中导入getFlag与encrypt函数。
分析apk,发现getFlag函数返回值与用户输入值后encrypt后的值相等即可。所以接下来思路是找到getFlag返回值。
将程序的libphcm.so使用IDA打开,encrypt函数功能是将输入字符串减1
但是getFlag函数有些复杂。采用HOOK方式直接查看返回值给方便一些。
只要HOOK到getFlag的返回值,再每位加1,便得到flag。
使用objection对getFlag进行HOOK便得到其返回值,再每位加1便得到flag