CN107679412B - 一种拦截数据库访问数据的方法以及装置 - Google Patents

一种拦截数据库访问数据的方法以及装置 Download PDF

Info

Publication number
CN107679412B
CN107679412B CN201710833914.XA CN201710833914A CN107679412B CN 107679412 B CN107679412 B CN 107679412B CN 201710833914 A CN201710833914 A CN 201710833914A CN 107679412 B CN107679412 B CN 107679412B
Authority
CN
China
Prior art keywords
socket
vfs
pointer
read
database
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201710833914.XA
Other languages
English (en)
Other versions
CN107679412A (zh
Inventor
温祐麟
陈翔宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujian Sinoregal Software Co ltd
Original Assignee
Fujian Sinoregal Software Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujian Sinoregal Software Co ltd filed Critical Fujian Sinoregal Software Co ltd
Priority to CN201710833914.XA priority Critical patent/CN107679412B/zh
Publication of CN107679412A publication Critical patent/CN107679412A/zh
Application granted granted Critical
Publication of CN107679412B publication Critical patent/CN107679412B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems

Abstract

本发明提供一种拦截数据库访问数据的方法,生成一socket接口并开启,所述socket接口中包括VFS方法;从系统内核中找到第一个socket文件;从该socket文件中获取VFS方法的指针;将所述socket文件中获取VFS方法的指针进行修改为所述socket接口中的VFS方法的指针;socket接口中的VFS方法对数据库访问数据进行拦截;本发明还提供一种拦截数据库访问数据的装置,使得在拦截数据库访问数据的同时不影响数据库本身运行效率。

Description

一种拦截数据库访问数据的方法以及装置
技术领域
本发明涉及一种拦截数据库访问数据的方法以及装置。
背景技术
数据库访问监控是指对数据库的任何操作,包括增,删,改操作的监控,抵御数据库外部和内部的数据泄露威胁,通过对监控数据的分析,对可以操作发出警报或者终止可疑操作。
目前数据库软件种类繁多,既有免费的,也有需要付费购买的,免费的数据库往往没有数据库监控,需要付费的数据库软件的开发商也有提供数据库监控服务,但是数据库软件开发商提供的数据库监控服务是运行在数据库中的,其运行会严重影响数据库本身的运行效率,并且无法实时提供报警。
发明内容
本发明要解决的技术问题,在于提供一种拦截数据库访问数据的方法以及装置,使得在拦截数据库访问数据的同时不影响数据库本身运行效率。
本发明之一是这样实现的:一种拦截数据库访问数据的方法,包括如下步骤:
步骤1、生成一socket接口并开启,所述socket接口中包括VFS方法;
步骤2、从系统内核中找到第一个socket文件;
步骤3、从该socket文件中获取VFS方法的指针;
步骤4、将所述socket文件中获取VFS方法的指针进行修改为所述socket接口中的VFS方法的指针;
步骤5、socket接口中的VFS方法对数据库访问数据进行拦截。
进一步地,所述步骤5进一步具体为:通过IOCTL指令,使得socket接口中的VFS方法对数据库访问数据进行拦截。
本发明之二是这样实现的:一种拦截数据库访问数据的装置,包括如下步骤:
生成模块,生成一socket接口并开启,所述socket接口中包括VFS方法;
查找模块,从系统内核中找到第一个socket文件;
获取模块,从该socket文件中获取VFS方法的指针;
修改模块,将所述socket文件中获取VFS方法的指针进行修改为所述socket接口中的VFS方法的指针;
拦截模块,socket接口中的VFS方法对数据库访问数据进行拦截。
进一步地,所述拦截模块进一步具体为:通过IOCTL指令,使得socket接口中的VFS方法对数据库访问数据进行拦截。
本发明具有如下优点:本发明一种拦截数据库访问数据的方法以及装置,可以支持多种平台(类似与Unix的操作系统),多种数据库,并且能够将截取监控出的数据交给其他服务器进行处理,经过对数据的分析,提供告警等更多的处理手段,并且本身不会对数据库本身性能产生影响。
附图说明
下面参照附图结合实施例对本发明作进一步的说明。
图1为本发明方法执行流程图。
图2为本发明具体实施方式的示意图。
具体实施方式
如图1所示,本发明拦截数据库访问数据的方法,包括如下步骤:
步骤1、生成一socket接口并开启,所述socket接口中包括VFS方法;
步骤2、从系统内核中找到第一个socket文件;
步骤3、从该socket文件中获取VFS方法的指针;
步骤4、将所述socket文件中获取VFS方法的指针进行修改为所述socket接口中的VFS方法的指针;
步骤5、通过IOCTL指令,使得socket接口中的VFS方法对数据库访问数据进行拦截。
本发明拦截数据库访问数据的装置,包括如下步骤:
生成模块,生成一socket接口并开启,所述socket接口中包括VFS方法;
查找模块,从系统内核中找到第一个socket文件;
获取模块,从该socket文件中获取VFS方法的指针;
修改模块,将所述socket文件中获取VFS方法的指针进行修改为所述socket接口中的VFS方法的指针;
拦截模块,socket接口中的VFS方法对数据库访问数据进行拦截。
进一步地,所述拦截模块进一步具体为:通过IOCTL指令,使得socket接口中的VFS方法对数据库访问数据进行拦截。
本发明一种具体实施方式
如图2所示,数据库安装在某个操作系统上,以UNIX为例,UNIX使用VFS(VirtualFile System),也就是虚拟文件系统,虚拟文件系统让客户端对数据库的所有访问操作都经由open()/read()/write()/close()这四个systemcall(系统调用),不论是网络远程访问还是本机客户端访问,这样如果能够拦截监控这些system call(系统调用)的数据,就能够监控所有对数据库的访问的数据。Sino_module(系统中的一个模块):放到kernel(操作系统内核)内部的kernel module(操作系统内核模块),负责VFS方法的拦截
sino_user_app:user mode上的一个程序,负责调用sino_module以及开启socket
Sino_user_app开启sino_module
Sino_user_app生成一个socket并开启它
sino_user_app经由IOCTL指令对sino_module下拦截指令
Sino_module这时候是在sino_user_app的空间(指sino module被用户空间的程序调用,所以和用户空间程序是在同一空间),因为呼叫了IOCTL,这时候可以找当前的sino_user_app开启的所有文件,找第一个socket file
这个socket file会有相关的VFS方法指针,这时可以替换成我们自己提供的方法指针(例如:用user_read()来替换原来的系统调用read(),在读取数据库时,调用user_read()函数,其中将数据库处理的内容保存到用户空间,然后在调用系统的read()函数),因而替换socket原本的VFS方法。
返回sino_user_app,这时所有的socket的VFS方法都被替换,数据会经由sino_module内定义的VFS,再调用VFS原本的方法。
首先将系统的函数替换成我们自己的函数,然后在在我们的函数中调用系统的函数。在我们的函数中可以将用户处理数据保存下了,这样就截留了数据。
虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。

Claims (2)

1.一种拦截数据库访问数据的方法,其特征在于:包括如下步骤:
步骤1、生成一socket接口并开启,所述socket接口中包括VFS方法;
步骤2、从系统内核中找到第一个socket文件;
步骤3、从该socket文件中获取VFS方法的指针;
步骤4、将所述socket文件中获取VFS方法的指针进行修改为所述socket接口中的VFS方法的指针;
步骤5、通过IOCTL指令,使得socket接口中的VFS方法对数据库访问数据进行拦截;
所述socket接口中的VFS方法的指针为:用user_read()来替换原来的系统调用read(),在读取数据库时,调用user_read()函数,其中将数据库处理的内容保存到用户空间,然后在调用系统的read()函数。
2.一种拦截数据库访问数据的装置,其特征在于:包括如下步骤:
生成模块,生成一socket接口并开启,所述socket接口中包括VFS方法;
查找模块,从系统内核中找到第一个socket文件;
获取模块,从该socket文件中获取VFS方法的指针;
修改模块,将所述socket文件中获取VFS方法的指针进行修改为所述socket接口中的VFS方法的指针;
拦截模块,通过IOCTL指令,使得socket接口中的VFS方法对数据库访问数据进行拦截;
所述socket接口中的VFS方法的指针为:用user_read()来替换原来的系统调用read(),在读取数据库时,调用user_read()函数,其中将数据库处理的内容保存到用户空间,然后在调用系统的read()函数。
CN201710833914.XA 2017-09-15 2017-09-15 一种拦截数据库访问数据的方法以及装置 Active CN107679412B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710833914.XA CN107679412B (zh) 2017-09-15 2017-09-15 一种拦截数据库访问数据的方法以及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710833914.XA CN107679412B (zh) 2017-09-15 2017-09-15 一种拦截数据库访问数据的方法以及装置

Publications (2)

Publication Number Publication Date
CN107679412A CN107679412A (zh) 2018-02-09
CN107679412B true CN107679412B (zh) 2021-05-18

Family

ID=61136377

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710833914.XA Active CN107679412B (zh) 2017-09-15 2017-09-15 一种拦截数据库访问数据的方法以及装置

Country Status (1)

Country Link
CN (1) CN107679412B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110262787B (zh) * 2019-06-21 2022-12-13 北京搜房科技发展有限公司 语句替换方法、装置和电子设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101216850A (zh) * 2008-01-11 2008-07-09 清华大学 文件系统访问记录的动态采集方法
CN102662870A (zh) * 2012-03-20 2012-09-12 武汉噢易科技有限公司 基于vfs层拦截读写请求的安卓操作系统保护方法
CN102722500A (zh) * 2011-03-31 2012-10-10 中国电信股份有限公司 一种虚拟文件系统及其实现方法
CN103020527A (zh) * 2012-12-21 2013-04-03 北京奇虎科技有限公司 主动拦截恶意程序的方法、装置、系统
CN106778208A (zh) * 2016-12-01 2017-05-31 深圳Tcl新技术有限公司 应用程序的访问处理方法及装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080154986A1 (en) * 2006-12-22 2008-06-26 Storage Technology Corporation System and Method for Compression of Data Objects in a Data Storage System
US9002970B2 (en) * 2012-07-12 2015-04-07 International Business Machines Corporation Remote direct memory access socket aggregation
CN106161517B (zh) * 2015-03-31 2019-07-12 阿里巴巴集团控股有限公司 通过云文件系统实现云存储接入的方法和装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101216850A (zh) * 2008-01-11 2008-07-09 清华大学 文件系统访问记录的动态采集方法
CN102722500A (zh) * 2011-03-31 2012-10-10 中国电信股份有限公司 一种虚拟文件系统及其实现方法
CN102662870A (zh) * 2012-03-20 2012-09-12 武汉噢易科技有限公司 基于vfs层拦截读写请求的安卓操作系统保护方法
CN103020527A (zh) * 2012-12-21 2013-04-03 北京奇虎科技有限公司 主动拦截恶意程序的方法、装置、系统
CN106778208A (zh) * 2016-12-01 2017-05-31 深圳Tcl新技术有限公司 应用程序的访问处理方法及装置

Also Published As

Publication number Publication date
CN107679412A (zh) 2018-02-09

Similar Documents

Publication Publication Date Title
CN108133139B (zh) 一种基于多运行环境行为比对的安卓恶意应用检测系统
US10552610B1 (en) Adaptive virtual machine snapshot update framework for malware behavioral analysis
US8875296B2 (en) Methods and systems for providing a framework to test the security of computing system over a network
US9875353B2 (en) Log information generation apparatus and recording medium, and log information extraction apparatus and recording medium
EP3227819B1 (en) Security information and event management
CA2990405A1 (en) Monitoring of applications isolated in containers
EP3213193B1 (en) Monitoring and correlating a binary process in a distributed business transaction
AU2017206284A1 (en) Tracing system operations across remote procedure linkages to identify request originators
US20150161390A1 (en) Fast and accurate identification of message-based api calls in application binaries
US11178160B2 (en) Detecting and mitigating leaked cloud authorization keys
WO2019075994A1 (zh) 一种iOS端Mock数据的方法、存储介质、设备及系统
WO2021189257A1 (zh) 恶意进程的检测方法、装置、电子设备及存储介质
US10007562B2 (en) Business transaction context for call graph
CN110737891A (zh) 一种主机入侵检测方法和装置
CN111813774B (zh) 一种基于sysdig系统监控获取溯源信息的方法
CN107679412B (zh) 一种拦截数据库访问数据的方法以及装置
CN111324510A (zh) 日志处理方法、装置及电子设备
CN111371783B (zh) 一种sql注入攻击检测方法、装置、设备和存储介质
CN112953896A (zh) 日志报文的回放方法及装置
CN114462030A (zh) 隐私政策的处理、取证方法、装置、设备及存储介质
US11930019B2 (en) Methods and systems for fast-paced dynamic malware analysis
US10681048B1 (en) Systems and methods for intercepting WebView traffic
CN115174192A (zh) 应用安全防护方法及装置、电子设备和存储介质
CN113378180A (zh) 漏洞检测方法、装置、计算机设备及可读存储介质
CN106850701B (zh) 一种移动终端分享隔离方法及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: 350000 21 / F, building 5, f District, Fuzhou Software Park, 89 software Avenue, Gulou District, Fuzhou City, Fujian Province

Applicant after: FUJIAN SINOREGAL SOFTWARE Co.,Ltd.

Address before: Floor 20-21, building 5, area F, Fuzhou Software Park, 89 software Avenue, Gulou District, Fuzhou City, Fujian Province 350000

Applicant before: FUJIAN SINOREGAL SOFTWARE Co.,Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant