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

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

Info

Publication number
CN107679412A
CN107679412A CN201710833914.XA CN201710833914A CN107679412A CN 107679412 A CN107679412 A CN 107679412A CN 201710833914 A CN201710833914 A CN 201710833914A CN 107679412 A CN107679412 A CN 107679412A
Authority
CN
China
Prior art keywords
socket
vfs
data
methods
pointer
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.)
Granted
Application number
CN201710833914.XA
Other languages
English (en)
Other versions
CN107679412B (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 Star Software Co Ltd
Original Assignee
Fujian Star 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 Star Software Co Ltd filed Critical Fujian Star 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

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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Bioethics (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

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

Description

一种拦截数据库访问数据的方法以及装置
技术领域
本发明涉及一种拦截数据库访问数据的方法以及装置。
背景技术
数据库访问监控是指对数据库的任何操作,包括增,删,改操作的监控,抵御数据库外部和内部的数据泄露威胁,通过对监控数据的分析,对可以操作发出警报或者终止可疑操作。
目前数据库软件种类繁多,既有免费的,也有需要付费购买的,免费的数据库往往没有数据库监控,需要付费的数据库软件的开发商也有提供数据库监控服务,但是数据库软件开发商提供的数据库监控服务是运行在数据库中的,其运行会严重影响数据库本身的运行效率,并且无法实时提供报警。
发明内容
本发明要解决的技术问题,在于提供一种拦截数据库访问数据的方法以及装置,使得在拦截数据库访问数据的同时不影响数据库本身运行效率。
本发明之一是这样实现的:一种拦截数据库访问数据的方法,包括如下步骤:
步骤1、生成一socket并开启,所述socket中包括VFS方法;
步骤2、从系统内核中找到第一个socket文件;
步骤3、从该socket文件中获取VFS方法的指针;
步骤4、将该VFS方法的指针进行修改为所述socket中的VFS方法的指针;
步骤5、socket中的VFS方法对数据库访问数据进行拦截。
进一步地,所述步骤5进一步具体为:通过IOCTL指令,使得socket中的VFS方法对数据库访问数据进行拦截。
本发明之二是这样实现的:一种拦截数据库访问数据的装置,包括如下步骤:
生成模块,生成一socket并开启,所述socket中包括VFS方法;
查找模块,从系统内核中找到第一个socket文件;
获取模块,从该socket文件中获取VFS方法的指针;
修改模块,将该VFS方法的指针进行修改为所述socket中的VFS方法的指针;
拦截模块,socket中的VFS方法对数据库访问数据进行拦截。
进一步地,所述拦截模块进一步具体为:通过IOCTL指令,使得socket中的VFS方法对数据库访问数据进行拦截。
本发明具有如下优点:本发明一种拦截数据库访问数据的方法以及装置,可以支持多种平台(类似与Unix的操作系统),多种数据库,并且能够将截取监控出的数据交给其他服务器进行处理,经过对数据的分析,提供告警等更多的处理手段,并且本身不会对数据库本身性能产生影响。
附图说明
下面参照附图结合实施例对本发明作进一步的说明。
图1为本发明方法执行流程图。
图2为本发明具体实施方式的示意图。
具体实施方式
如图1所示,本发明拦截数据库访问数据的方法,包括如下步骤:
步骤1、生成一socket并开启,所述socket中包括VFS方法;
步骤2、从系统内核中找到第一个socket文件;
步骤3、从该socket文件中获取VFS方法的指针;
步骤4、将该VFS方法的指针进行修改为所述socket中的VFS方法的指针;
步骤5、通过IOCTL指令,使得socket中的VFS方法对数据库访问数据进行拦截。
本发明拦截数据库访问数据的装置,包括如下步骤:
生成模块,生成一socket并开启,所述socket中包括VFS方法;
查找模块,从系统内核中找到第一个socket文件;
获取模块,从该socket文件中获取VFS方法的指针;
修改模块,将该VFS方法的指针进行修改为所述socket中的VFS方法的指针;
拦截模块,socket中的VFS方法对数据库访问数据进行拦截。
进一步地,所述拦截模块进一步具体为:通过IOCTL指令,使得socket中的VFS方法对数据库访问数据进行拦截。
本发明一种具体实施方式
如图2所示,数据库安装在某个操作系统上,以UNIX为例,UNIX使用VFS(VirtualFile System),也就是虚拟文件系统,虚拟文件系统让客户端对数据库的所有访问操作都经由open()/read()/write()/close()这四个system call(系统调用),不论是网络远程访问还是本机客户端访问,这样如果能够拦截监控这些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 (4)

1.一种拦截数据库访问数据的方法,其特征在于:包括如下步骤:
步骤1、生成一socket并开启,所述socket中包括VFS方法;
步骤2、从系统内核中找到第一个socket文件;
步骤3、从该socket文件中获取VFS方法的指针;
步骤4、将该VFS方法的指针进行修改为所述socket中的VFS方法的指针;
步骤5、socket中的VFS方法对数据库访问数据进行拦截。
2.如权利要求1所述的一种拦截数据库访问数据的方法,其特征在于:所述步骤5进一步具体为:通过IOCTL指令,使得socket中的VFS方法对数据库访问数据进行拦截。
3.一种拦截数据库访问数据的装置,其特征在于:包括如下步骤:
生成模块,生成一socket并开启,所述socket中包括VFS方法;
查找模块,从系统内核中找到第一个socket文件;
获取模块,从该socket文件中获取VFS方法的指针;
修改模块,将该VFS方法的指针进行修改为所述socket中的VFS方法的指针;
拦截模块,socket中的VFS方法对数据库访问数据进行拦截。
4.如权利要求1所述的一种拦截数据库访问数据的装置,其特征在于:所述拦截模块进一步具体为:通过IOCTL指令,使得socket中的VFS方法对数据库访问数据进行拦截。
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 true CN107679412A (zh) 2018-02-09
CN107679412B 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)

Cited By (1)

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

Citations (8)

* 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
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 北京奇虎科技有限公司 主动拦截恶意程序的方法、装置、系统
US20140019572A1 (en) * 2012-07-12 2014-01-16 International Business Machines Corp. Remote Direct Memory Access Socket Aggregation
CN106161517A (zh) * 2015-03-31 2016-11-23 阿里巴巴集团控股有限公司 通过云文件系统实现云存储接入的方法和装置
CN106778208A (zh) * 2016-12-01 2017-05-31 深圳Tcl新技术有限公司 应用程序的访问处理方法及装置

Patent Citations (8)

* 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
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层拦截读写请求的安卓操作系统保护方法
US20140019572A1 (en) * 2012-07-12 2014-01-16 International Business Machines Corp. Remote Direct Memory Access Socket Aggregation
CN103020527A (zh) * 2012-12-21 2013-04-03 北京奇虎科技有限公司 主动拦截恶意程序的方法、装置、系统
CN106161517A (zh) * 2015-03-31 2016-11-23 阿里巴巴集团控股有限公司 通过云文件系统实现云存储接入的方法和装置
CN106778208A (zh) * 2016-12-01 2017-05-31 深圳Tcl新技术有限公司 应用程序的访问处理方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
项国富: "虚拟计算环境的安全监控技术研究", 《中国博士学位论文全文数据库 信息科技辑》 *

Cited By (1)

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

Also Published As

Publication number Publication date
CN107679412B (zh) 2021-05-18

Similar Documents

Publication Publication Date Title
CN108133139B (zh) 一种基于多运行环境行为比对的安卓恶意应用检测系统
US10581879B1 (en) Enhanced malware detection for generated objects
US9781144B1 (en) Determining duplicate objects for malware analysis using environmental/context information
CN103399812B (zh) 基于Xen硬件虚拟化的磁盘文件操作监控系统及监控方法
EP3227819B1 (en) Security information and event management
CN110213207B (zh) 一种基于日志分析的网络安全防御方法及设备
CN105184166A (zh) 基于内核的安卓程序实时行为分析方法及系统
CN104956376A (zh) 虚拟化环境中应用和设备控制的方法和技术
CN106557355A (zh) 虚拟机镜像的生成方法及生成装置
CN106302404B (zh) 一种收集网络溯源信息的方法及系统
US20130111018A1 (en) Passive monitoring of virtual systems using agent-less, offline indexing
US11178160B2 (en) Detecting and mitigating leaked cloud authorization keys
CN104102878A (zh) 一种Linux平台下的恶意代码分析方法及系统
CN111813774B (zh) 一种基于sysdig系统监控获取溯源信息的方法
CN106778264A (zh) 一种移动客户端的应用程序分析方法及分析系统
CN110865866B (zh) 一种基于自省技术的虚拟机安全检测方法
CN105718796B (zh) 一种安卓用户隐私数据访问的系统调用级监控方法
Cui et al. Towards unsupervised introspection of containerized application
WO2021243555A1 (zh) 一种快应用检测方法、装置、设备及存储介质
CN107679412A (zh) 一种拦截数据库访问数据的方法以及装置
Rana et al. Automated windows behavioral tracing for malware analysis
Yuan et al. Research of intrusion detection system on android
Oliveira et al. A cloud-native monitoring and analytics framework
US11930019B2 (en) Methods and systems for fast-paced dynamic malware analysis
CN113031964B (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