基于Linux系统的应用层Hook实现方法、系统、装置及存储介质制造方法及图纸

技术编号:31496036 阅读:20 留言:0更新日期:2021-12-18 12:37
本发明专利技术提出的一种基于Linux系统的应用层Hook实现方法、系统、装置及存储介质,所述方法包括:编译动态链接库,并导出预设接口;修改优先加载的环境变量和默认配置文件,增加动态链接库的绝对路径,使预设程度启动后实时加载动态链接库;当目标进程调用被Hook的API时,优先调用动态链接库的接口;在动态链接库的接口中获取并保存系统API的原始地址;动态链接库的接口通过与预设控制中心交互,进行策略判断业务操作;策略判断业务操作完成后,调用系统API的原始地址,并将调用结果返回给目标进程。本发明专利技术能够通过修改系统配置,完成自定义动态库的加载,实现系统API的替换,可以Hook到更接近用户行为的API接口,从而可以更精确地实现行为分析和控制。为分析和控制。为分析和控制。

【技术实现步骤摘要】
基于Linux系统的应用层Hook实现方法、系统、装置及存储介质


[0001]本专利技术涉及计算机
,更具体的说是涉及一种基于Linux系统的应用层Hook实现方法、系统、装置及存储介质。

技术介绍

[0002]Hook技术又叫做钩子函数,在系统没有调用该函数之前,钩子程序就先捕获该消息,钩子函数先得到控制权,这时钩子函数既可以加工处理该函数的执行行为,还可以强制结束消息的传递。简单来说,就是把系统的程序拉出来变成我们自己执行代码片段。可见,hook可以监视系统或者进程中的各种事件消息,截获发往目标窗口的消息并进行处理。
[0003]当前,对于Hook技术,可以分为两块,第一块是在Ring3层的Hook,俗称应用层Hook技术,另外一块自然是在Ring0层得Hook,俗称为内核层Hook技术。针对Hook的实现方法主要存在以下缺陷:
[0004]1、当前内核层Hook的实现,需要开发人员具备内核开发的经验,开发难度较高,而且一旦出现问题会导致系统崩溃。
[0005]2、当前应用层Hook的实现,虽然有多种实现方法,本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种基于Linux系统的应用层Hook实现方法,其特征在于,包括如下步骤:S1:编译动态链接库,通过动态链接库导出预设接口;S2:修改优先加载的环境变量和默认配置文件,增加动态链接库的绝对路径,使预设程度启动后实时加载动态链接库;S3:当目标进程调用被Hook的API时,优先调用动态链接库的接口;S4:在动态链接库的接口中获取并保存系统API的原始地址;S5:动态链接库的接口通过与预设控制中心交互,进行策略判断业务操作;S6:策略判断业务操作完成后,调用系统API的原始地址,并将调用结果返回给目标进程。2.根据权利要求1所述的基于Linux系统的应用层Hook实现方法,其特征在于,所述步骤S4具体为:通过dlvsym接口,获取指定版本号的API原始地址。3.根据权利要求1所述的基于Linux系统的应用层Hook实现方法,其特征在于,所述预设接口为与被Hook的API定义完全一致的接口。4.根据权利要求1所述的基于Linux系统的应用层Hook实现方法,其特征在于,所述动态链接库为libhook.so。5.根据权利要求1所述的基于Linux系统的应用层Hook实现方法,其特征在于,所述优先加载的环境变量和默认配置文件为/etc/ld.so.preload文件。6.根据权利要求2所述的基于Linux系统的应用层Hook实现方法,其特...

【专利技术属性】
技术研发人员:苗功勋袁浩崔新安李本学
申请(专利权)人:中孚安全技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1