最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

一种基于Netfilter的认证方法研究与实现

来源:动视网 责编:小OO 时间:2025-09-25 17:37:27
文档

一种基于Netfilter的认证方法研究与实现

设计与应用计算机测量与控制.2005.13(4)ComputerMeasurement&Control・363・收稿日期:2004-06-28;修回日期:2004-08-03。基金项目:湖南省自然科学基金资助项目(02JJY2094)。作者简介:周诚(1976-),男,山东单县人,硕士,主要从事网络安全、计算机通讯技术方面的研究。施荣华(1963-),教授,主要从事计算机通信保密和计算机网络方面的研究。文章编号:1671-4598(2005)04-0363-03中图分类号:TP393.08文献
推荐度:
导读设计与应用计算机测量与控制.2005.13(4)ComputerMeasurement&Control・363・收稿日期:2004-06-28;修回日期:2004-08-03。基金项目:湖南省自然科学基金资助项目(02JJY2094)。作者简介:周诚(1976-),男,山东单县人,硕士,主要从事网络安全、计算机通讯技术方面的研究。施荣华(1963-),教授,主要从事计算机通信保密和计算机网络方面的研究。文章编号:1671-4598(2005)04-0363-03中图分类号:TP393.08文献
设计与应用

计算机测量与控制.2005.13(4) Computer Measurement &Control  

 ・363・

收稿日期:2004-06-28; 修回日期:2004-08-03。基金项目:湖南省自然科学基金资助项目(02JJ Y2094)。

作者简介:周诚(1976-),男,山东单县人,硕士,主要从事网络安全、计算机通讯技术方面的研究。

施荣华(1963-),教授,主要从事计算机通信保密和计算机网络方面的研究。

文章编号:1671-4598(2005)04-0363-03       中图分类号:TP393.08      文献标识码:B

一种基于N etf ilter 的认证方法研究与实现

周 诚,施荣华,杨政宇

(中南大学信息科学与工程学院,湖南长沙 410075)

摘要:随着网络的迅速发展,网络安全显得越来越重要,认证是其中重要的手段。通过对Linux 内核中的Netfilter 模块进行研究,

提出了一种基于Netf ilter Hook 编写网络认证体系的思想、方法,并根据信息隐藏技术的要求,给出了一个认证方法的框架。

关键词:网络安全;认证;Netfilter

R esearch and Implementation of a Certif ication Method B ase d on N etf ilter

Zhou Cheng ,Shi Rong Hua ,Yang Zhengyu

(School of Information Science &Engineering ,Centeal South U niversity ,Changsha 410075,China )

Abstract :wit h development of network ,t he security of net work is more and more important ,aut hentication is one of t he more used met hods to identify t he user ’s ID.After studying t he Netfilter module in t he Linux kernel ,a t hought and met hod based on t he Netfilter HOO K is presented and a aut hentication frame is discussed according to information hiding.

K ey w ords :network security ;aut hentication ;Netfilter

0 前言

Linux 214系统的网络安全体系是由Netfilter -iptables 、

连接跟踪、NA T 共同组成的[1],其中Netfilter 是其中最关键的部分。在现在防火墙系统中,很多就是采用Netfil ter -ipt 2ables 结构体系实现的[2],而本文将讨论如何利用

Netfilter 实现新的应用扩展———构造一种网络认证体系。

本文中所有的开发和试验都在运行于X86系列主机上的Linux 214120中完成。

图1 Netfilter 在内核中的位置

1 Netfilter Frame 简介[3]

IP 协议栈是Linux 操作系统的主要组成部分,是Linux 的

特色之一,素以高效稳定著称。Netfilter 与IP 协议栈是密切结合在一起的,与Linux 内核集成的IP 信息包过滤系统(如图1),其原理就是在协议栈中提供了一些钩子函数,从而实现对流经它的数据包的处理[5-6]。

Netfilter 是嵌入内核IP 协议栈的一系列调用入口,设置在报文处理的路径上,钩子(HOO K )类型定义在netfilter _ipv41h 中[6]。报文按照来源和去向,可以分为三类:流入的、流经的和流出的,其中流入和流经的报文需要经过路由才能区

分,而流经和流出的报文则需要经过投递。Netfilter 就是根据网络报文的流向,在这几个点插入处理过程,钩子类型和所在的位置如表1所示,钩子处理的相应动作如表2所示。

表1 Netfilter HOO K 的位置及描述

HOO K 类型

描  述

N F_IP_PRE_ROU TIN G:在报文作路由以前执行;

N F_IP_FORWARD :在报文转向另一个NIC 以前执行N F_IP_POST_ROU TIN G:在报文流出以前执行;

N F_IP_LOCAL_IN :在流入本地的报文作路由以后执行;N F_IP_LOCAL_OU T :

在本地报文做流出路由前执行。

表2 钩子处理的动作

N F_ACCEP T :继续正常的报文处理;N F_DROP :

将报文丢弃;

N F_STOL EN :由钩子函数处理了该报文,不要再继续

传送;

N F_QU EU E :将报文入队,通常交由用户程序处理;N F_REPEA T :

再次调用该钩子函数。

2 基于内核的认证方法工作原理和流程

核心模块编程也许是Linux 开发中最有趣的部分之一。以恶意的观点来看,可以隐藏文件、进程,并且做各式各样的,任何的root 能够做的事情。但是如果从系统安全的角度来看,可以隐藏文件、进程、网络认证以及做很多安全有关的各式各样事情。

有了赋予内核级程序员的强大力量,很多事情成为可能。其中最有趣的一个就是嵌入到内核中的后门,作为隐藏后门的守护进程,而在这里本文所提出的是安放一个用作内核后门

 ・3・计算机测量与控制 第4期

的网络认证服务,而这就正是利用Netfilter HOO K 完成的!

在这里将展现的是一个简单、原理性的,采用Netfilter 做的后门模块。该模块吸收了包过滤防火墙的思想:首先在服务器端做了一个防火墙,监控所有进入网络的报文,从中找出所需要的特殊报文,而其它的则直接丢弃,然后根据这个特殊报文的格式完成相应的操作(如图2所示)。根据不同要求和目的,可以选择多种协议用来作为报文的载体[4]

图2 基于内核认证系统原理图

下面将以ICMP 协议(ICMP ,网络控制报文协议--In 2

ternet Control Message Protocol )[7]为例具体介绍这种认证方法,流程如图3所示。

图3 认证系统工作流程图

该模块是在N F _IP _LOCAL _IN 处加载,可以监控所

有进入本机的报文。首先判断进入的报文是否是ICMP 数据包。如果是,则查找其数据格式是否满足要求。当有这样一个ICMP 报文(格式1)被发现,则清除记录的IP 地址和访问标志,结束本次认证。当另一个“魔法”ICMP 报文(格式2)被发现后,该模块就记录该报文中的IP 地址,并设置允许访问的标志,完成本次认证,从而该IP 地址就可以进行允许范围之内控制操作;否则立即返回N F _DROP ,丢弃该数据包。

如果模块监控发现输入的是TCP 数据包,则进一步检查标志是否设置,如果没有设置则立即返回N F _DROP ,丢弃该数据包;如果设置,则比较IP 地址,满足返回N F _AC 2CESS ,允许该IP 进行下一步的访问;否则也返回N F _DROP ,丢弃该数据包。

如果两者都不是,则表示不满足认证系统的需要,立即返

回NF _DROP ,丢弃该数据包。

客户端认证程序相对简单,就是在发送ICMP 数据包的时候,要注意使用服务器端相约定的报文格式,注意认证和结束认证的报文格式是不同的[7]。

3 综合性能分析

311 安全性分析

如图2所示,从服务器外面看,服务器不存在任何事先打开的网络端口,服务器是采用动态的开启网络访问端口,只有在基于内核的网络认证成功之后,才会开启网络服务所要的端口。同时,在网络访问端口开启之后,也只有开启者的IP 地址才能访问这个端口,其它IP 地址依然是不能看到和访问该端口的。也就是说不管是否认证,整个服务器对于没有认证的IP 地址都是一个黑箱[4],即隐藏了认证的路径。

具体而言:如果进入服务器的协议或报文格式不对,则直接丢弃,也就不会给攻击方以任何突破口。即使使用网络或端口扫描工具,由于网络端口是动态开启的,而且开启之后也只有开启着才能访问,因此也是无法找出可用的端口,从而保证了认证的安全和可靠性,也就是说相当于利用Netfilter 的特性在服务器外面加了一层包过滤的防火墙保护。

如果不泄漏特殊报文格式(钥匙),攻击方甚至是无法知道服务器是否正在工作。只有知道密钥,才能通过服务器的后门,打开所需要的网络端口(通道),进行下一步控制操作。

由于从图2中,可以看到在访问结束后,会利用另一钥匙把打开的通道关闭,保证服务器重新进入黑箱状态,以防止假冒IP 的攻击。

经过前面的介绍,可以看出这种方法能和目前的网络安全策略相结合,从而进一步提高完成某些网络设置、配置文件的修改等网络控制操作的安全系数。

由于采用特殊的报文作为开启网络访问的钥匙,在网络传递过程中,也存在可能被截取的情况。如果采用明文传递,很容易被黑客截取和分析出密钥的格式,安全系数明显不高;如果对传递的ICMP 报文加入IP 信息、采用时间戳、一次一密等防护手段,就可以做到即使报文被截取,密钥的数据格式,黑客也很难得到,也就可以相对提高系统的安全系数。312 效率分析

从流程图(图3)可以看到,对于除ICMP 的其他协议报文,模块很快就返回(这里是NF _DROP ,把报文丢弃),等待下一个报文的到来。

对于TCP 协议的报文,在标志设置完成后,客户端要访问服务器,只要再经过两次比较,就可以了,速度几乎可以到达线性,影响忽略不计;在标志没有设置情况,则很快返回,等待下一个报文。

当为ICMP 协议时,因为需要耗时间进行两次检测ICMP 报文的格式,而这部分速度则受匹配算法影响。在检测结束后,也很快返回,等待下一个报文。

也就是说,当条件不满足的时候,该方法将丢弃所有接收的报文,即使以后进行功能扩展,需要这些数据包的时候,也不会因为采用这种方法,而影响整个网络的性能。整个系统对速度影响最大的就是在对ICMP 格式的检测。

第4期周诚,等:一种基于Netfilter 的认证方法研究与实现・365・ 

  所以,整个系统的效率依赖于ICMP 格式的检测上。要安全系数高,则要采用高难度的算法;要效率高,则要采用高速的算法。因此最终采用何种算法,要根据现场需要,综合安全和效率考虑,选择相应的算法。313 系统测试

测试1:在加载模块后,不管系统是否完成认证,用端口扫描、DoS 等方法攻击服务器[4],都得到一个结果:“数据包无法到达……”,也就是即服务器处于黑箱子状态。

测试2:截取报文,从报文中,很难知道其报文格式,再将把截取到的报文,修改ICMP 报文头中的IP 信息后重发,由于报文中的IP 信息和ICMP 头中的不一致,也会被丢弃,同时记录下该IP 。

测试3:在完成系统认证后,客户端则可以对服务器进行相应的控制和操作,速度几乎不受影响;操作结束后,关闭通道,服务器又回复到黑箱子状态,这样可以防假冒IP 进行访问。测试结果说明,该认证系统能够抵御很大部分的网络攻击,而且对系统其它性能也不会产生较大影响,因此该认证系统具有一定的可行性和较高的安全性。

4 小结

本文给出了一个Netfilter 的一种扩展———网络认证,介绍

了该方法的工作原理和流程,可以看出该方法具有高效、安全的优点。如果在该方法上再结合SSL 、数字签名、证书等认证手段,形成多种认证方法相结合的安全认证体系,则可以把网络认证做到更安全,可靠。该方法在防火墙配置、核心信息查询等安全要求高的场所都有广泛的应用价值。

参考文献:

[1]Russell R.Linux 214Packet Filtering HOW TO [Z].mailing list

netf ilter @list s.samba.org v1.0.1CST ,2000.

[2]赵萍,等.防火墙和入侵检测技术分析[J ].计算机测量与控制,

2002,10(5):335-338.

[3]Russell PR.Writing a module for netfilter [J ].Linux Magazine ,

http ://www.linux -mag.com/2000-06/gear _01.ht ml ,2000.

[4]沈勇,等.Netfilter 在拒绝服务防范中的应用[J ].计算机应用

研究,2002,19(5):67-69.

[5]王宏健,等.基于Linux 内核防火墙Netfilter 的安全应用的设计

方法[J ].小型微型计算机系统,2001,22(12):1516-1518.

[6]毛德操,胡希明.Linux 内核源代码情景分析[M ].杭州:浙大

出版社,2001.

[7]Stevens W R.TCP/IP 详解[M ].北京:机械工业出版社,2000.

(上接第345页)

上图中采用PID1指令作为TIC201的温度调节器,也是该串级调节回路的主调节器;采用PID2指令作为FIC101的流量调节器,也是该串级调节回路的副调节器。PID1的输出MV1作为PID2的给定值SV2,PID2的输出MV2通过D/A 单元控制F TV601,流量信号F101经A/D 转换作为PID2的测量值PV2,温度信号T201经A/D 转换作为PID1的测量值PV1。实现的聚合反应控温曲线如图7所示。本例PL C 系统采用的PID 指令均为二自由度PID 指令,实现控温过程平稳,限于篇幅,参数整定从略

图7 反应过程中的温度曲线

3 结论

基于PL C 的二自由度PID 控制算法具有编程简单、调试

方便、适应性广等特点,由于在顺序控制方面独具优势,因此,较适合于间歇生产过程的控制。采用该算法在中试聚合反应系统上投运后,工作正常,控制效果稳定可靠,具有很好的实用和推广价值。

参考文献:

[1]曹辉,霍罡.可编程序控制器系统原理及应用[M ].北京:电子

工业出版社,2003.

[2]游文虎,姜复兴.一种改进PID 算法在组合导航仿真实验台中的

应用[J ].计算机测量与控制,2004,12(7):675-677.

[3]王振鹏,段晨东,何正嘉.基于虚拟仪器技术实现PLC 控制系统

的状态监测和故障诊断[J ].计算机测量与控制,2004,12(8):

711-713.

[4]霍罡,曹辉.变频的在线故障检测技术的应用研究.计算机测量

与控制,2004,12(12):1134~1136.

专业提供各种军用民用Flash

  M -systems 产品系列:315英寸、215英寸FFD 系列电子盘。与机械硬盘兼容、接口与安装结构基本一致。容量128MB 至9011G B 。电子盘(宽温、普温)产品系列:DiskOnChip (DOC )、DiskOnModule (DOM )C ompactFlash 2Card (CF 卡)PCMCIA Card (PC 卡)

中国指定代理商 诚征区域经销商

华高科技北京分公司

地 址:北京海淀区西大街70号305室(100080)联系人:冯闰生   电 话:010282872251626592华高科技深圳分公司地 址:深圳市深南大道6007号创展中心1711室(518040)联系人:罗定安   电 话:0755-8386701883867718华高科技成都分公司联系人:赵欣    电 话:02828555695185533246

文档

一种基于Netfilter的认证方法研究与实现

设计与应用计算机测量与控制.2005.13(4)ComputerMeasurement&Control・363・收稿日期:2004-06-28;修回日期:2004-08-03。基金项目:湖南省自然科学基金资助项目(02JJY2094)。作者简介:周诚(1976-),男,山东单县人,硕士,主要从事网络安全、计算机通讯技术方面的研究。施荣华(1963-),教授,主要从事计算机通信保密和计算机网络方面的研究。文章编号:1671-4598(2005)04-0363-03中图分类号:TP393.08文献
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top