一种基于IPC的数据库本地通信的审计方法技术

技术编号:20221690 阅读:48 留言:0更新日期:2019-01-28 20:13
本发明专利技术涉及一种基于IPC的数据库本地通信的审计方法,包括以下步骤:获取需要对Oracle动态库进行hack的动态库,该动态库用于实现自定义的hook函数功能;在Sql*plus程序启动时,将进行hack的动态库加载到Sql*plus的运行内存中,获取真正进行IPC通讯函数的地址,将Oracle动态库中原有的执行函数调用顺序进行篡改,利用劫取的Sql*plus进程与审计服务器通讯的信息进行审计。本发明专利技术在Oracle数据库使用客户端工具Sql*plus对数据库进行基于IPC通信的审计方式,根据对Sql*plus内存中的函数地址进行篡改,将通信中的数据镜像下来,再通过TCP将数据转发给审计服务器端进行审计,解决了原有数据库与客户端之间通信不通过网络便无法获取通信内容的难题,而且速度快,不会影响客户端的执行效率和执行结果。

【技术实现步骤摘要】
一种基于IPC的数据库本地通信的审计方法
本专利技术属于数据库审计
,尤其是一种基于IPC的数据库本地通信的审计方法。属于数据库审计

技术介绍
现有的数据库审计技术只能通过网络或者网卡抓包才能获取到数据库流量的审计方式,因此,在传统的数据库审计产品中,无法获取客户端与服务器端进行IPC通讯的内容,同时也无法无法审计命令行执行的客户端工具的内容。
技术实现思路
本专利技术的目的在于克服现有技术的不足,提出一种基于IPC的数据库本地通信的审计方法,解决了传统的数据库审计产品中无法获取客户端与服务器端进行IPC通讯的内容,以及无法审计命令行执行的客户端工具的内容的问题。本专利技术解决其技术问题是采取以下技术方案实现的:一种基于IPC的数据库本地通信的审计方法,包括以下步骤:步骤1、获取需要对Oracle动态库进行hack的动态库,该动态库用于实现自定义的hook函数功能;步骤2、在Sql*plus程序启动时,将进行hack的动态库加载到Sql*plus的运行内存中,获取真正进行IPC通讯函数的地址,将Oracle动态库中原有的执行函数调用顺序进行篡改,利用劫取的Sql*plus本文档来自技高网...

【技术保护点】
1.一种基于IPC的数据库本地通信的审计方法,其特征在于包括以下步骤:步骤1、获取需要对Oracle动态库进行hack的动态库,该动态库用于实现自定义的hook函数功能;步骤2、在Sql*plus程序启动时,将进行hack的动态库加载到Sql*plus的运行内存中,获取真正进行IPC通讯函数的地址,将Oracle动态库中原有的执行函数调用顺序进行篡改,利用劫取的Sql*plus进程与审计服务器通讯的信息进行审计。

【技术特征摘要】
1.一种基于IPC的数据库本地通信的审计方法,其特征在于包括以下步骤:步骤1、获取需要对Oracle动态库进行hack的动态库,该动态库用于实现自定义的hook函数功能;步骤2、在Sql*plus程序启动时,将进行hack的动态库加载到Sql*plus的运行内存中,获取真正进行IPC通讯函数的地址,将Oracle动态库中原有的执行函数调用顺序进行篡改,利用劫取的Sql*plus进程与审计服务器通讯的信息进行审计。2.根据权利要求1所述的一种基于IPC的数据库本地通信的审计方法,其特征在于:所述步骤1的具体实现方法为:设置linux平台上的LD_PRELOAD环境变量,利用环境变量使进程加载指定的动态库。3.根据权利要求1所述的一种基于IPC的数据库本地通信的审计方法,其特征在于:所述步骤2的具体实现方法包括以下步骤:步骤2.1、获取真正进行IPC通讯函数地址的过程;步骤2.2、将Oracle动态库中原有的执行函数调用顺序进行篡改;步骤2.3、调用系统函数在进程中映射出一块内存,将步骤1中对Oracle动态库进行hack的动态库中的hook函数写入内存中,使得Sql*plus进程运行内存中存在进行hack的函数;步骤2.4、将步骤2.2中原有的执行函数的函数地址篡改为步骤2.3中对Oracle动态库进行hack的动态库中的hook函数的函数地址,使得Oracle动态库在用汇编指令调用执行函数时,跳转到对Oracle动态库进行hack的动态库中的hook函数,通过hook函数劫取到Sql*plus进程和服务器进行通讯的信息,并将其转发到审计服务器;步骤2.5、劫取完信息之后,执行Oracle动态库中原有的执行函数,调用完hook函数之后,再次篡改hook函数的函数地址后面的汇编指令,使其跳转回Oracle动态库执行完...

【专利技术属性】
技术研发人员:杨海峰廉小伟付蓉洁王皓
申请(专利权)人:北京安华金和科技有限公司
类型:发明
国别省市:北京,11

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

1