[发明专利]旁路式解析和还原TNS协议中SQL命令的方法有效
申请号: | 201210261746.9 | 申请日: | 2012-07-26 |
公开(公告)号: | CN102801714A | 公开(公告)日: | 2012-11-28 |
发明(设计)人: | 徐明;孔飞;郑宁;张海平;徐建 | 申请(专利权)人: | 杭州电子科技大学 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L12/56;H04L29/08 |
代理公司: | 杭州求是专利事务所有限公司 33200 | 代理人: | 杜军 |
地址: | 310018 浙*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明涉及一种旁路式解析和还原TNS协议中SQL命令的方法。本发明首先利用开源库获取并输出所有网络设备接口号、名称和描述信息,选择需要捕获的网络设备接口号作为指定的数据捕获网络设备接口。其次设置参数device、参数snaplen、网络设备接口工作模式、超时时间参数、参数ebuf,打开指定的数据捕获网络设备接口。然后判断捕获数据的数据链路层类型,若为以太网,则编译包过滤表达式“TCP”进入驱动程序。最后开始循环捕获网络数据帧,根据包过滤表达式对每个数据帧调用回调函数解析出SQL语句。本发明可提供对Oracle数据库细粒度审计、精准化行为回溯、全方位风险控制功能和安全审计基础功能。 | ||
搜索关键词: | 旁路 解析 还原 tns 协议 sql 命令 方法 | ||
【主权项】:
旁路式解析和还原TNS协议中SQL命令的方法,该方法采用旁路获取网络中客户端对Oracle数据库服务器发送的TNS协议数据包,并进行过滤、缓存和解析,最后还原出客户端完整的SQL命令,其特征在于该方法包括以下步骤:步骤(1)利用开源库libpcap或winpcap中的函数pcap_findalldevs( )获取并输出所有网络设备接口号、名称和描述信息;步骤(2)从步骤(1)中输出的所有网络设备接口号中选择需要捕获的网络设备接口号作为指定的数据捕获网络设备接口;步骤(3)设置device参数为指定打开的网络设备接口名称,捕获数据的最大字节数参数snaplen为65535,网络设备接口工作模式参数promisc为1,超时时间参数为1000毫秒,准备好函数出错返回NULL时用于传递错误消息的参数ebuf,调用libpcap或winpcap中的函数pcap_open_live( ),打开步骤(2)中指定的数据捕获网络设备接口,使其处于混杂模式捕获其连接网络的所有数据,并将函数pcap_open_live( )的返回值保存到变量adhandle中;步骤(4)以变量adhandle为输入参数,调用libpcap或winpcap中的函数pcap_datalink( )判断捕获数据的数据链路层类型,若函数pcap_datalink( )的返回值为DLT_EN10MB,则捕获的数据链路层类型为以太网,进入步骤(5),否则结束;步骤(5)设置包过滤参数packet_filte为“TCP”,优化参数optimize为1,网络掩码参数netmask为数据捕获网络设备接口所在网络的掩码,调用libpcap或winpcap中的函数pcap_compile()和pcap_setfilter(),编译包过滤表达式“TCP”进入驱动程序并设置使其起作用;步骤(6)设置回调函数参数为自定义的packet_handler()函数,调用libpcap或winpcap中的pcap_loop( )函数,开始循环捕获网络数据帧,根据包过滤表达式对每个数据帧调用回调函数packet_handler()解析出其中的SQL语句。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州电子科技大学,未经杭州电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201210261746.9/,转载请声明来源钻瓜专利网。