一种基于文件访问的安全网关

作者:程丽君;莫林;陈涛;李林 刊名:微计算机信息 上传者:鹿斌

【摘要】安全网关产品众多,功能不一,本文在对SMB(Server Message Block)协议进行分析的基础之上,提出了一种基于文件访问的安全网关。该安全网关实现了网络共享资源在用户级别上对文件或文件夹进行访问控制。本文简单介绍了SMB协议和系统的整体结构,着重阐述了SMB协议分析及系统实现的具体方法。

全文阅读

引言目前的应用型防火墙主要用来检测不同的攻击和探测,例如缓冲区溢出,秘密端口扫描,CGI攻击,SMB探测,等等。但是,针对微软SMB协议进行访问控制的产品较少。网络中各种文件共享资源仅仅依赖于系统安全性是十分脆弱的,一旦系统出现漏洞,那么服务器上的文件就会受到严重的安全威胁。因此作者提出了以下的改进思路:首先,我们可以设计出与硬件安全产品同样针对低层协议进行监测控制功能的产品。然后,在高层协议上,针对WIN-DOWS系统进行网络资源共享所使用的协议SMB(ServerMessageBlock,服务信息块)协议,我们进行通讯过程分析,从而得出相应资源访问操作信息及用户信息,并根据这些信息我们制定相应规则进行数据包过滤,从而实现了网络共享资源在用户级别上进行访问控制。由于共享资源一般是以文件或文件夹的形式存在,而用户对共享资源的操作大都是对文件或文件夹进行的操作(读、写、删除等),因此,我提出了一种基于文件访问的安全网关。1SMB协议介绍SMB(ServerMessageBlock)主要是作为Microsoft?网络的通讯协议,其最常应用在局域网中,而将SMB协议搬到UNIX上来应用的Samba,其核心也是SMB协议。SMB协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。通过“NetBIOSoverTCP/IP”使得Samba不但能与局域网络主机分享资源,更能与全世界的电脑分享资源;因为互联网上千千万万的主机所使用的通讯协议就是TCP/IP。最近,Microsoft将SMB的功能进行改进后,使其可以应用在Internet上,并将该版本的SMB协议命名为CIFS(通用Internet文件系统CommonInternetFileSystem),使得SMB协议的应用范围更加广泛。关于SMB协议的报头结构不再具体给出,参考文献中有详细图解。2SMB协议分析协议是用来调整计算机之间数据传输的标准过程,协议分析是检验这些标准过程的进程。本实验使用Ethereal-0.10.14.0网络协议分析器对SMB协议进行分析。SMB是一个面向命令/响应的协议,其初始化连接步骤如下:SMB版本协商(SMB_COM_NEGOTIATE命令)SMB身份验证(SMB_COM_SESSION_SETUP_ANDX命令)与IPC$用户组连接(SMB_COM_TREE_CONNECT命令,在本文测试环境中SMB_COM_TREE_CONNECT命令作为SMB_COM_SESSION_SETUP_ANDX命令的子命令一并发送)因此,要对每个步骤中涉及的相关命令进行分析。由于我们只关心用户对文件的操作,所以在对SMB协议进行解析的过程中,重点分析下面一些SMB通信交互命令:NegotiateProtocol用于客户端同服务器的版本协商;SESSION_SETUP_ANDX用于进行SMB身份验证;TREE_CONNECT_ANDX用于在客户端和服务器端之间建立连接;TRANSACTION2主要用来查询文件和目录的信息;NT_CREATE_ANDX用于创建或打开一个文件或一个目录,对这些协议的分析构成了最后系统实现的基础。分析完SMB协议的一些针对文件进行操作的命令后,就要借助网络协议分析器对SMB协议的通信过程进程一帧一帧的分析比对,通过这一复杂而又耗时的过程,得到了下面一些重要信息:第8帧中包含了客户端登陆服务器所使用的用户名;第20帧包含了源主机所要访问的目录;第24帧包含了源主机想要访问的具体文件名;第28帧包含了用户想要对该文件进行的操作

参考文献

引证文献

问答

我要提问