[原创]聊聊大厂设备指纹其三&如何在风控对抗这场“猫鼠游戏”中转换角色
这篇文章是大厂设备指纹其三,可能是最终一篇,也可能不是(主要看后续有没有更好的代替) 看这篇文章之前需要准备一下前奏知识,之前文章叙述过的,这里面不就一一叙述了。 风控对抗基础随笔https://bbs.kanxue.com/thread-277637.htm 设备指纹第一篇: 聊聊大厂设备指纹获取和对抗&设备指纹看着一篇就够了! 设备指纹第二篇: 聊聊大厂设备指纹其二&Hunter环境检测思路详解! 这篇文章会详细叙述客户端风控对抗的“边界值”在哪里,如果你是在做风控对抗 ,不管你是这场游戏中在演“猫”的角色还是“老鼠”的角色 。 这篇文章将站在上帝视角去讲解对应的“规则” 和“玩法”,以及如何实现角色转换。 通过之前的文章,配合这篇文章希望每个小白玩家都能知道大厂是怎么玩的,如何设置游戏规则,我们应该如何进行解谜。 在第一篇文章中介绍了一个细节点,就是IPC代理 ,但是现在在讲这篇文章的时候,需要更详细的叙述一下 。 第一篇文章里面介绍了Android是基础的CS架构,客户端和服务端架构 。安卓为什么要这么设计呢?当时问了GTP,他给出的回答是稳定性。如果服务端和客户端在一个进程内,客户端崩溃了,服务端也会一起崩溃,导致整个系统不稳定 。 安卓和Java相比多个一个Context,这个Context是调用安卓本身提供api的桥梁 ,里面有各种安卓系统提供的各种基础API , 这些API可以直接操作Android系统 ,安卓本身通过各种各样的Manager去提供对应的Api去获取和修改 。比如PackageManager,ActivityManager等,这些Manager里面都会持有一个代理人 。当我们去调用这个Manager里面的一些Api的时候,一些简单的Api他会尝试去自己在本进程Native或者Java去实现,如果一些复杂的字段,比如查询系统的一些信息,或者调用一些系统关键函数,这种时候他会去调用“IPC代理人 ”,这个IPC代理人就是像服务端通讯的关键 。他相当于是向服务端的传话得人 ,代理设计模式 。对不同的Manager提供不一样的功能 ,而他传的话就是对应的IPC协议 。这个协议如何传递的,就是通过底层的共享内存Binder去实现的 。 而这个协议里面具体发送的内容,就是IPC协议装的“包裹”就是用的P...