基于云安全的DNS网页挂马探测系统分析与设计Word文件下载.docx
- 文档编号:17819423
- 上传时间:2022-12-11
- 格式:DOCX
- 页数:6
- 大小:19.71KB
基于云安全的DNS网页挂马探测系统分析与设计Word文件下载.docx
《基于云安全的DNS网页挂马探测系统分析与设计Word文件下载.docx》由会员分享,可在线阅读,更多相关《基于云安全的DNS网页挂马探测系统分析与设计Word文件下载.docx(6页珍藏版)》请在冰豆网上搜索。
针对挂马网页,目前常见的解决方案有3类:
浏览器内置过滤功能;
浏览器插件过滤;
反病毒软件提供过滤功能。
1.1浏览器内置过滤功能
目前常用的浏览器软件,包括InternetExplorer7.0、Firefox2.0、Opera9.1、Safari3.2及其之后的版本均内置挂马网页过滤功能。
其中,Firefox使用Google提供的反挂马数据,Opera使用PhishTank和GeoTrust提供的数据。
浏览器实现的挂马网页过滤具有以下两个缺点:
挂马网页过滤依赖于浏览器实现,与其支持的操作系统有关,并且不能为计算机上安装的其他网络软件或浏览器提供保护;
浏览器需要将用户访问的页面地址发送给服务器进行比对,增加了网络带宽消耗、页面处理延迟,并且可能泄露用户的隐私。
1.2浏览器插件过滤
基于浏览器插件的反挂马解决方案,典型应用有AVGLinkScanner、McAfeeSiteAdvisor,除了提供挂马网页过滤,还包括了对搜索引擎搜索结果安全性的标注,帮助用户甄别搜索引擎结果中的有害网页。
浏览器插件提供的挂马网页过滤和浏览器内置功能相比,提供更强的安全保护能力,然而,此类插件对于浏览器的依赖更强,一般只能安装于InternetExplorer和Firefox浏览器,并且同样存在需联网检查用户访问内容的问题。
1.3反病毒软件提供过滤功能
目前越来越多的反病毒软件具有包括反挂马网页在内的网络威胁过滤能力。
此类软件对挂马网页过滤的实现方法与其查杀网页恶意代码的做法相似,杀毒软件的Web监控通常在本地提供HTTP透明代理,应用程序访问网页HTTP服务的流量都会经过杀毒软件的Web监控扫描。
在此过程中,杀毒软件可以对网页的URL地址进行过滤,以屏蔽挂马网页。
与浏览器或浏览器插件提供的反挂马功能不同,反病毒软件过滤挂马网页的功能可以适用于计算机上安装的各类软件,并且,挂马网址数据库一般在反病毒软件更新病毒定义时同时下载,检测网址过程在本地即可完成。
但是,此类实现方法对系统资源的消耗较大,依赖于操作系统(通常为Windows设计),且挂马网址数据库需频繁更新以应对最新的威胁。
2融合云计算及多扫描引擎技术的DNS挂马网页过滤系统
针对以上反挂马过滤实现方法存在的弊端,基于DNS的挂马网页过滤系统可以提供一个较好的解决方案。
域名解析是用户访问网页所必须经历的过程,在DNS服务器上实现挂马网页过滤不会对用户的网络访问过程增加额外的步骤或产生任何影响。
基于DNS的实现适合任何接入网络的计算机或设备,与客户端运行的操作系统和浏览器无关,无需安装任何客户端程序或插件,适用范围广。
挂马网页识别过程由DNS服务器完成,减轻客户端对资源消耗的压力。
通过云计算技术,客户端无需下载保存任何挂马网址数据,所有的数据更新过程在DNS端完成,省去客户端数据库下载和更新,也避免了客户端数据库更新不及时造成的安全隐患,同时,通过多扫描引擎查杀,可向客户端提供针对最新威胁的及时保护。
总结以上4种反挂马解决方案,对比其性能特点如表1所示,基于DNS的挂马网页过滤系统在提供同样的保护能力的同时,可解决过滤系统对客户端的依赖,部署和维护更为简便。
3多扫描引擎技术
在当今的网络安全解决方案中没有一款使用单个杀毒引擎能最快最有效地识别木马及其他威胁。
利用多引擎反病毒能有效地减少病毒感染的几率。
每一个病毒实验室所研制的扫描引擎是不一样的,没有一种可以称得上在各方面是最优
秀的,它们都有各自的优势与劣势。
防病毒软件产品一般会使用混合式的技术去检测及击败病毒。
以下是最主要的3种方法:
特征文件、启发式检测、沙箱。
每一种技术方法都能十分有效地检测到病毒,但都不能百分之百成功检测。
没有任何一个方法是最佳的检测病毒的解决方案,所以一些反病毒产品集合了两个或者更多的这些检测技术方法。
最有效并且是唯一的方式保证上网用户拥有最高等级的防护就是通过使用多扫描病毒引擎,采用多层深度防御。
值得注意的是,多扫描引擎是一个很好的解决方案,但重要的是明白我们获得了什么。
当我们拥有5个反病毒扫描引擎时,并不意味着能提供给我们5倍的网络防御能力,它只不过给我们提供了5次正确应对网络威胁的机会,更恰当的来说,这是5次独立的判断、作出应对的事件。
这就好比我们在机场通过5道安检,每一道安检的内容或方式都会有些微的不同,这样能增加发现威胁情况的几率。
在此系统中我们引入了多个防病毒扫描引擎的使用,以此增强扫描的可靠性。
4Hadoop分布式计算平台
Hadoop是一个能够分布式处理大规模海量数据的软件框架。
它的长期目标是提供世界级的分布式计算工具,也是对下一代业务(如搜索结果分析等)提供支持的Web扩展(Web-scale)服务。
Hadoop主要由HDFS(HadoopDistributedFileSystem)和MapReduce引擎两部分组成。
最底部是HDFS,它存储Hadoop集群中所有存储节点上的文件。
HDFS的上一层是MapReduce引擎,该引擎由JobTrackers和TaskTrackers组成。
HDFS可以执行的操作有创建、删除、移动或重命名文件等,架构类似于传统的分级文件系统。
需要注意的是,HDFS的架构基于一组特定的节点而构建(见图1),这是它自身的特点。
HDFS包括唯一的NameNode,它在HDFS内部提供元数据服务;
DataNode为HDFS提供存储块。
JobTracker(Google称为Master)是负责管理调度所有作业,它是整个系统分配任务的核心。
它也是唯一的。
TaskTracker具体负责执行用户定义操作,每个作业被分割为任务集,包括Map任务和Reduce任务。
任务是具体执行的基本单元,TaskTracker执行过程中需要向JobTracker发送心跳信息,汇报每个任务的执行状态,帮助JobTracker收集作业执行的整体情况,为下次任务分配提供依据。
Map操作是独立的对每个元素进行操作,在函数式编程中,操作是没有副作用的,换句话说,Map操作将产生一组全新的数据,而原来的数据保持不变。
因此,它是高度并行的。
Reduce操作虽然不如Map操作并行性那么好,但是它总会得到一个相对简单的结果,大规模运算也相对独立,因此也是比较适合并行的。
5系统分析与设计
当用户访问一个网站时,向DNS服务器发送的域名查询仅包含该网址的域名部分,考虑到一些网站只有部分页面存在挂马和欺诈信息,以及一些允许用户发布页面或内容的大型网站上可能存在少量有害页面,对域名的过滤容易造成误报,影响网站正常内容的访问。
为了解决这个问题,我们设计了基于DNS服务器、HTTP透明代理服务器和Web服务器以及数据库群的挂马网站过滤系统架构(图2),以提供基于域名和基于URL的两种过滤方式。
我们通过实现BIND服务器的反挂马模块,作为挂马网站过滤系统的基础。
挂马网站记录在内存中以哈希表的链式结构存储以提高查询效率,反挂马模块提供域名查询、数据文件读入、数据重新载入等接口函数。
查询函数返回3类结果:
被查询的域名不是挂马网站、域名被拦截和域名需进行URL过滤。
定义如下:
typedefenum{
sdns_phish_false=0,//NotPhishing
sdns_phish_domain=1,//Phishing:
blockeddomain
sdns_phish_url=2//Phishing:
URLfiltering
}sdns_phishtype_t;
#defineSDNS_PHISH_FALSEsdns_phish_false
#defineSDNS_PHISH_DOMAINsdns_phish_domain
#defineSDNS_PHISH_URLsdns_phish_url
及时有效的挂马网址数据是挂马网站过滤系统使用效果的基本保障。
通过提供一个数据转换和整合程序,将不同来源的挂马网站数据转换为便于DNS服务器和代理服务器读取的统一的数据格式。
我们也可以使用防病毒软件公司的扫描接口直接为数据进行过滤服务。
数据整合程序负责将不同来源的数据转换为统一的格式,供DNS服务器和代理服务器读取。
数据整合程序由5个模块组成:
pdb_file数据文件写入模块以指定的格式将挂马网站记录写入文件;
pdb_hash哈希表模块用于检索并去除重复项;
pdb_text模块读取文本格式存储的数据;
pdb_mysql模块连接并读取MySQL数据库中的数据,使用libmysqlclient库;
pdb_phishtank模块处理PhishTank格式的数据,使用libxml2库以解析XML数据。
由于DNS服务器和代理服务器使用的数据文件格式不同,因此设计有两个数据整合程序,两者只有数据文件写入模块pdb_file不同。
pdb_file模块提供文件创建、写入域名记录、写入URL记录和关闭文件的接口函数。
pdb_resultpdb_file_create(constchar*filename);
pdb_resultpdb_file_close()
voidpdb_file_writeentry(constchar*name,unsignedinttype);
voidpdb_file_writeurl(constchar*name);
pdb_hash模块提供标准的哈希表插入和查询功能。
pdb_text提供文本数据处理接口。
pdb_resultpdb_text_process(constchar*filename);
pdb_mysql提供MySQL数据处理接口。
pdb_resultpdb_mysql_process(constchar*host,constchar*username,
constchar*password,
constchar*database,constchar*table);
pdb_phishtank提供接口函数以处理PhishTank的数据。
pdb_resultpdb_phishtank_process(constchar*filename);
数据整合程序允许通过配置文件方便地定义、添加数据来源。
main函数解析配置文件,并根据配置选项调用各模块的接口函数,读取相应的数据。
挂马网站内容过滤的警告页面由Web服务器提供,实现基于ApacheHTTPServer和PHP。
对网页中不同文件类型的处理通过mod_rewrite根据路径中的文件后缀进行URL重写。
文件中的主要规则如下:
ErrorDocument400/index.php
ErrorDocument403/index.php
ErrorDocument404/index.php
RewriteEngineOn
RewriteCond%{REQUEST_URI}^(.*).(jpg|png|gif|jpeg)$[NC]
RewriteRule^(.*)$images/empty.png[L]
RewriteCond%{REQUEST_URI}^(.*).(js|css)$[NC]
RewriteRule^(.*)$blank.html[L]
此系统为用户提供针对网页挂马网站、网页恶意代码和有害信息的防护,如果用户无意间访问了这些网站,系统将禁止访问。
6结束语
基于云安全的DNS网页挂马探测系统为用户提供及时有效的反挂马网站保护,且不依赖于操作系统和浏览器,可适用于各类计算机和设备。
本文对挂马网站过滤系统的实现方法同样适用于其他互联网内容过滤的应用要求,可作为基于DNS的内容过滤系统使用,具备基于域名和基于URL地址的过滤能力,可灵活地过滤网页挂马、违法信息等各类互联网威胁,应用范围较广。
参考文献:
[1]胡双双,秦杰.搜索引擎技术及其发展趋势[J].福建电脑,2008(3).
[2]陈达.网络钓鱼的现状、方式及防范初探[J].网络安全技术与应用,2006(7).
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 云安 DNS 网页 探测 系统分析 设计