一种SOHO路由器数据修改方法技术

技术编号:37986314 阅读:8 留言:0更新日期:2023-06-30 10:01
本发明专利技术涉及SOHO路由器数据安全技术领域,具体涉及一种SOHO路由器数据修改方法,利用Netfilter和RAW_SOCKET相结合的方式,对流经SOHO路由器的数据进行修改,该数据修改方法不影响路由器正常运行,也不影响通信双方的正常通信,可在网络安全检测和网络攻击等多个场景应用,能够在数据包进入Netfilter处理之前捕获数据包并根据需要进行修改,在Netfilter的挂载点处设置规则将原始数据包丢弃,最后绕过路由器对数据包的处理规则,直接将修改后的数据包发送到网络中。据包发送到网络中。据包发送到网络中。

【技术实现步骤摘要】
一种SOHO路由器数据修改方法
[0001]
:本专利技术涉及SOHO路由器数据安全
,具体涉及一种SOHO路由器数据修改方法。
[0002]
技术介绍
:SOHO路由器一般用来为连接到它上面的终端设备提供网络服务,其主要功能是处理局域网中设备的互联网访问的请求并转发至互联网的目标服务器和将互联网服务器的返回数据转发给内网设备,由于SOHO路由器一般没有专门的安全防护软件,且用户对路由器的安全性关注较少,所以SOHO路由器存在较多安全漏洞,且有可能长期存在,通过对SOHO路由器架构进行分析可以看出,其Web服务、应用程序和底层linux内核均可能存在漏洞,漏洞类型包含内存破环漏洞,XSS和CSRF等传统的Web漏洞,命令注入漏洞,文件上传漏洞等多种类型,使攻击者可获取底层linux系统的root访问权限,给SOHO路由器带来安全隐患;攻击者控制SOHO路由器以后,往往会通过修改流经路由器的数据包实现对路由器的进一步利用,网络安全人员为了发现攻击行为并对攻击者追踪溯源,也需要通过修改数据包,插入特定的标签,从流量层面对恶意行为进行检测,但是现有的修改数据包方式有可能会影响路由器的正常运行,影响到通信双方的正常通信,同时路由器安全技术的研究主要集中在漏洞挖掘方面,目的是拿到SOHO路由器底层linux内核操作系统的root权限,并没有针对获取控制权以后的数据利用问题,存在一定的缺陷,因此有必要研发一种SOHO路由器数据修改方法。
[0003]
技术实现思路
:针对上述存在的的缺陷和问题,本专利技术提供一种SOHO路由器数据修改方法,其目的是利用Netfilter和RAW_SOCKET相结合的方式,对流经SOHO路由器的数据进行修改,该数据修改方法不影响路由器正常运行,也不影响通信双方的正常通信,可在网络安全检测和网络攻击等多个场景应用,能够在数据包进入Netfilter处理之前捕获数据包并根据需要进行修改,在Netfilter的挂载点处设置规则将原始数据包丢弃,最后绕过路由器对数据包的处理规则,直接将修改后的数据包发送到网络中。
[0004]本专利技术解决其技术问题所采用的方案是:1.一种SOHO路由器数据修改方法, SOHO路由器底层linux内核中的Netfilter机制对需要修改的数据包丢弃,用raw socket(原始套接字)捕获进入网卡的原始数据包,修改原始数据包以后绕过系统内核协议栈将修改后的数据包从网卡发出;S1:丢弃数据包SOHO路由器对数据包的过滤基于底层linux内核中的Netfilter机制实现,Netfilter是设置在报文处理路径上的嵌入内核IP协议栈的一系列调用入口,Netfilter根据网络报文的流向,提供对数据包修改的挂载点,利用Netfilter在用户空间的配置组件iptables,根据需修改的数据包特征,在挂载点处设置数据包过滤规则,进行数据包的初步筛选,丢弃数据包;S2:捕获数据包修改发出
采用raw socket(原始套接字),并利用PF_PACKET的套接字协议,在原始数据包进入到Netfilter处理之前捕获来自数据链路层的原始数据帧,通过数据包处理系统对数据包进行处理,数据包处理系统包括数据包嗅探模块、数据包分析模块、数据包修改模块和数据包发送模块;(1)原始数据包进入到Netfilter处理之前,数据包嗅探模块从网卡捕获需处理的原始数据包;(2)数据包分析模块对捕获的原始数据包进行解析,确定该数据包是否为需要修改的数据包,若该数据包不是需要修改的数据包则直接发出,若该数据包为需要修改的数据包,则通过数据包修改模块对数据包进行修改,同时修改数据包头部中的数据包长度、SEQ、ACK字段并重新计算校验和,确保数据包的正确性和通信的接续性;(3)数据包发送模块利用raw socket(原始套接字),绕过TCP / IP协议栈,将修改后的数据包从网卡发出。
[0005]进一步的,数据包捕获的原则是在数据包被Netfilter框架处理之前进行捕获,数据包发送的原则是绕过Netfilter框架和内核协议栈处理,将修改后的数据包发送到网络中。
[0006]进一步的,Netfilter根据网络报文的流向,可提供五个对数据包进行修改的挂载点,Prerouting、Forward、Postrouting三个挂载点均可对流经路由器的数据包进行丢弃,为了不影响进入路由器的数据包和路由器发出的数据包,选择在Forward挂载点处设置数据包过滤规则,丢弃数据包。
[0007]进一步的,SOHO路由器为ARM或MIPS架构,使用Buildroot工具搭建对应的交叉编译环境,交叉编译出能在SOHO路由器上运行的数据捕获、数据处理和数据发送程序,实现对数据包的修改。
[0008]本专利技术的有益效果:本专利技术该方法利用Netfilter和RAW_SOCKET相结合的方式,利用SOHO路由器底层linux内核中的Netfilter机制对需要修改的数据包丢弃,用raw socket捕获进入网卡的原始数据包,修改原始数据包以后绕过系统内核协议栈直接将修改后的数据包从网卡发出,该数据修改方法不影响路由器正常运行,也不影响通信双方的正常通信,可在网络安全检测和网络攻击等多个场景应用,通用性强,保证了数据包丢弃时数据发送方无感,使只有修改后的数据包到达接收方,原数据包无法到达接收方,避免数据包重复到达,且通过RAW_SOCKET数据处理效率较高,数据修改的延时较小,不会影响正常的通信,同时发出的数据包是用户自行构造的数据包,数据包构造功能可根据需要编写,可实现对数据包的任意修改。
附图说明
[0009]图1为本专利技术原理流程图。
[0010]图2为数据包捕获发送原理流程图。
[0011]图3为捕获数据的位置和发送数据的位置与数据包在SOHO路由器中流进位置关系图。
[0012]图4为数据包处理系统原理流程图。
[0013]图5为SOHO路由器对数据包的过滤流程图。
[0014]图6为“丢弃

重发”数据修改方法论证实验环境示意图。
[0015]图7为正常网络环境中发送方向接收方发起连接告知发送方无法连接结果图。
[0016]图8为“丢弃

重发”数据修改方法中丢弃数据包时不返回任何信息结果图。
[0017]图9为发送方发出的数据示意图。
[0018]图10为接收方收到的数据示意图。
[0019]图11为对数据包的IP进行修改实现伪造身份通信的程序代码。
[0020]图12为发送方发送两个数据包的时间差信息示意图。
[0021]图13为接收方收到两个数据包的时延信息示意图。
[0022]具体实施方式:下面结合附图和实施例对本专利技术进一步说明。
[0023]实施例1,攻击者控制SOHO路由器以后,往往会通过修改流经路由器的数据包实现对路由器的进一步利用,网络安全人员为了发现攻击行为并对攻击者追踪溯源,需要通过修改数据包,插入特定的标签,从流量层面对恶意行为进行检测,但是现有的修改数据本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种SOHO路由器数据修改方法,其特征在于,SOHO路由器底层linux内核中的Netfilter机制对需要修改的数据包丢弃,用raw socket(原始套接字)捕获进入网卡的原始数据包,修改原始数据包以后绕过系统内核协议栈将修改后的数据包从网卡发出;S1:丢弃数据包SOHO路由器对数据包的过滤基于底层linux内核中的Netfilter机制实现,Netfilter是设置在报文处理路径上的嵌入内核IP协议栈的一系列调用入口,Netfilter根据网络报文的流向,提供对数据包修改的挂载点,利用Netfilter在用户空间的配置组件iptables,根据需修改的数据包特征,在挂载点处设置数据包过滤规则,进行数据包的初步筛选,丢弃数据包;S2:捕获数据包修改发出采用raw socket(原始套接字),并利用PF_PACKET的套接字协议,在原始数据包进入到Netfilter处理之前捕获来自数据链路层的原始数据帧,通过数据包处理系统对数据包进行处理,数据包处理系统包括数据包嗅探模块、数据包分析模块、数据包修改模块和数据包发送模块;(1)原始数据包进入到Netfilter处理之前,数据包嗅探模块从网卡捕获需处理的原始数据包;(2)数据包分析模块对捕获的原始数据包进行解析,确定该数据包是否为需要修改的数据包,若该数据包不是需要修改的数据...

【专利技术属性】
技术研发人员:刘胜利盖贤哲蔡瑞杰杨启超赵方方贾凡陈宏伟蒋思康
申请(专利权)人:中国人民解放军战略支援部队信息工程大学
类型:发明
国别省市:

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

1