恩佐2登录 > SEO培训 > 某拍App算法so层逆向分析

某拍App算法so层逆向分析

admin SEO培训 2020年03月01日

  签名算法是指数字签名的算法。数字签名,就是只有信息的发送者才能产生的别人无法伪造的一段数字串,这段数字串同时也是对信息的发送者发送信息真实性的一个有效证明。数字签名是通过一个单向函数,新宝7登录新宝7恩佐登录对要传送的信息进行处理得到的用以认证信息来源,并核实信息在传送过程中是否发生变化的一个字母数字串。目前应用最为广泛的三种签名算法是:Rabin签名、DSS签名、RSA签名。新宝7恩佐登录

  直接定位sig到代码区域, 搜出来会有很多个sig,具体是哪一个只能自己分析, 看封包内容就很好分析出来

  Arg7.put的几个参数在封包里都是加密的,所以直接跟到generatorSig方法去, 跟进来发现载入了so文件

  同时下面代码可以看见nativeGeneratorSig方法里什么东西都没有, 并且native暗示这些方法是有实现体的,所以一定是从release_sig这个so文件里实现的

  进入到该函数里再分析,就看见了之前在jeb静态分析的那个方法nativeGeneratorSig,

  之前在jeb里分析看见这个方法里面没有任何算法什么的东西,而是载入的so文件,

  跟进MD5_Calculate, 传进的参数直接给MD5加密,经过格式化字节流然后返回了加密后的东西

  R0-R3寄存器是传参, R0也可以用作返回的结果,选中R0 右键 jump

  然后现在我们想知道他的密文,那么根据之前静态分析, 密文返回在result中

  并且将sub_77CF4B18重命名为sprintf 方便之后下断点(当然此处下断点是不行的,因为在循环内部,调试会一直在循环里)

  我们动态调试出来的加密值相同,以上就是对sig加密算法生成过程的全部分析记录

标签: so算法