[发明专利]一种基于网卡抓包的终端上网审计方法有效
| 申请号: | 201810644498.3 | 申请日: | 2018-06-21 |
| 公开(公告)号: | CN108924106B | 公开(公告)日: | 2020-11-03 |
| 发明(设计)人: | 李建华;陈璐艺;伍军;李高勇 | 申请(专利权)人: | 上海鹏越惊虹信息技术发展有限公司;上海鹤优信息科技有限公司 |
| 主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L29/08 |
| 代理公司: | 北京华仲龙腾专利代理事务所(普通合伙) 11548 | 代理人: | 李静 |
| 地址: | 201203 上海市浦东新区中国(上海)自*** | 国省代码: | 上海;31 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 网卡 终端 上网 审计 方法 | ||
1.一种基于网卡抓包的终端上网审计方法,其特征在于,包括以下步骤:
S1,获取用户访问的网址;
S2,根据拦截URL库实现对非法网页的拦截;
S3,根据关键字库对出现非法关键字的网页进行拦截;
在步骤S1中,利用windows提供的底层的原始套接字抓包功能,接收到本机网卡上的数据帧或者数据包,根据数据的类型,将TCP/UDP数据存放入待处理数据容器内;根据容器里是否有数据,依次取出容器内的内容;根据TCP/UDP协议以及相关的应用层协议对数据包进行分析,从而获取到相关的信息;对数据帧或者数据包进行分析,是不是URL地址信息,方法是检查包数据的类型是否为TCP协议和前3个字节是不是“GET”;如果是URL,就取出URL信息;
在步骤S2中,在应用层,利用Apiinlinehook技术对ws2_32.dll里的Send和WSASend函数进行挂钩,当浏览器进程调用Send和WSASend函数时,先执行拦截处理代码,如果是要拦截的URL,函数立即返回,否则恢复寄存器和内存堆栈结构,并将代码恢复成挂钩前的样子,然后跳转到对应的地址处执行;
在步骤S2中,对URL拦截的具体步骤为:
a)安装WH_GETMESSAGE全局消息钩子,将拦截dll注入到浏览器进程;
b)浏览器进程加载拦截dll的时候,修改send或WSASend函数入口处5个字节的内容,会变成一个跳转指令jmpxxxxxx;其中xxxxxx为拦截处理函数的入口地址;
c)在拦截处理函数中检测发送的内容,是不是请求URL地址信息,方法是检查包数据的前3个字节是不是“GET”;如果是URL,就取出URL信息;判断是不是要拦截的,如果是,函数立即返回;否则恢复寄存器和堆栈,然后将包发出去;
在步骤S3中,先于用户获取网页内容,对网页内容进行检查,如果网页内容中含有非法关键字,则替换网页内容为事先准备好的网页被拦截提示信息页;
在步骤S3中,对网页关键字拦截的具体步骤为:
A)设置超时时间和网络连接请求时的重试次数;
B)解析URL字符串,并返回其组成部分的服务和类型;
C)连接URL地址;
D)向服务器发送“GET”请求;
E)发送HTTP报头;
F)获得HTTP请求相关联的状态号,如果HTTP状态号标识请求为成功,则接收数据;如果HTTP状态号标识为[300,306]范围,获取HTTP请求中的请求头,重新定向URL地址;按照A-F的步骤重新获取网页信息;
G)与关键字库的信息做比对。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海鹏越惊虹信息技术发展有限公司;上海鹤优信息科技有限公司,未经上海鹏越惊虹信息技术发展有限公司;上海鹤优信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810644498.3/1.html,转载请声明来源钻瓜专利网。





