1、论Hook技术的攻防对抗
首先,简单认识下Hook 技术。
Hook技术是一门广泛用于计算机攻防对抗的技术。它可以监视系统或者进程中的各种事件消息,截获发往目标窗口的消息进行处理。
我们可以简单的把使用Hook技术的人比作钓鱼人,而Hook技术就像他的渔具,系统中不断传递的事件就像一条条游鱼,钓鱼人通过Hook技术将他想要的目标事件钓上(Hook技术一般是有指向性的),然后就可以对事件进行修改,再让其正常运行,达到技术人员的目的。Hook技术常用于热补丁上线、API劫持、软件破解等技术操作。
比如我们常见的鼠标和键盘,如果你的电脑被Hook,那么也就意味着你的任何操作都在对方的掌握中。
Hook技术不但适用于x86系统,也适用于基于简单指令集的移动平台系统,比如手机等设备。其中,针对移动设备的Hook技术主要以手机为主。
对于Android的Hook框架,主要分为三类,一类是针对Native层,即系统层的Hook框架,使用PLT/GOT
Hook或inline-Hook的框架,如bhook、xhook、yahfa等,一类是针对Java层的Hook框架,如Xposed,还有一类是比较特殊的Hook框架——Frida,它是针对全平台Hook而设计的框架,适用于x86\x86_64\arm\arm64架构的系统,在iOS端上的Hook主要通过Frida框架进行技术实现,而Frida在Android上的Hook技术实现也有不少的受众,但主要仍以Xposed类框架为主,主要原因就是Xposed在Andorid上的稳定性更好,并且特征更容易隐藏。
原作者:顶象
更多回帖