IDC用户网站非法信息检测系统技术实现

2019-07-12 08:28张宏丙
电子技术与软件工程 2019年9期
关键词:关键字IP地址管理员

文/张宏丙

1 引言

随着互联网产业高速发展,信息化需求激增,采用服务器托管或是应用直接部署上云的现象已十分普遍。而与此同时,作为信息内容汇聚地的IDC,也成为某些不法分子用于传播色情、反动、赌博等非法信息的重灾区。此外,随着G20峰会、进博会等重大国际活动的相继举办,非法信息的检测过滤也显得尤为重要。一旦发布了非法信息,而一时间各监管部门又难以及时发现,势必会造成极其恶劣的负面影响。因此,对于那些浏览人数众多,影响面大的网站,尤其需要对其网页内容进行定期的主动检测。这样,对上海电信而言,一方面,可以主动落实包括工信厅网安函【2017】337号文在内的相关工作要求;另一方面,也可以体现上海电信的社会责任感,从而提升自身的社会形象。

由此可见,无论是从管理要求还是社会责任考虑,无论是从提升服务等级还是管理水平考虑,定期对IDC所辖用户网站内容进行自动检测都是十分必要的。为此,上海电信近年来一直致力于IDC用户网站非法信息检测系统的建设及完善,本文就该系统研发过程中遇到了若干技术问题以及相应的解决方案做一简单探讨。

2 系统概述

IDC用户网站非法信息检测系统主要采用爬虫技术,定期对IDC用户网站的网页文本进行扫描和关键字匹配,以主动发现那些含有非法信息的网站。所谓爬虫技术,又称为网络爬虫,其基本思想就是根据网页上的超级链接,逐层递归地进行爬取和扫描。同时,该系统对扫描结果进行保存,并生成统计报表以供安全管理员查看。

图1:IDC用户网站非法信息检测系统总体架构图

图2:IDC用户网站非法信息检测系统核心要素逻辑结构图

考虑到集中管理和可扩展性,该系统采用大家所熟知的C/S架构,即中央管理控制器+分布式扫描代理的结构,总体架构如图1所示。

图1中蓝色背景部分是系统的组件:

(1)中心管理服务器(CMS,Central Management Server)。系统的核心服务器,安全管理员通过web接口访问,在该服务器上配置扫描规则、扫描策略及扫描对象;生成、调度扫描任务;展现扫描结果。

(2)数据库(DB)。保存系统的核心数据,包括用户、服务器和扫描任务的配置,以及扫描结果信息和含有非法信息的网页快照。

(3)网站扫描代理(SSA,Site Scanning Agent)。根据中心管理服务器(CMS)的安排,执行针对用户网站的扫描。扫描从指定页面开始,在一定约束下跟踪每个引用到的URL。

图1中白色背景部分是互联网数据中心及其用户服务器:

(1)互联网数据中心(IDC)。托管用户服务器及用户网站的机房。

(2) 用 户 服 务 器(CWS,Client Web Server)。系统进行扫描监控的对象,主要通过IP地址进行标识。

图1中橙色背景部分是系统的使用者:

(1)系统管理员(admin)。对系统进行维护管理的人员,负责定义用户、划分权限等。系统管理员同时负责维护组成系统的各类服务器。

(2)安全管理员(user)。系统一般使用者,主要工作包括监控用户网站内容,设置关键字集和扫描策略,发起手工扫描任务,检查扫描任务的执行情况,制作报表等。

3 系统核心要素及其之间的逻辑关系

正如之前所介绍的,该系统是采用爬虫方式对用户网站的内容进行主动扫描和检测,因此,扫什么、怎么扫自然就成为系统设计的考虑重点,由此也引申出构成系统的若干核心要素,其中包括:

(1)扫描对象,即受扫描监控的网站。其中一部分来自IDC域名备案系统,另一部分来自非法信息检测系统本身的录入。

(2)扫描规则,包括关键字数据集及对应的权重值,这也是用来判断某个网页是否含有非法信息及其危害程度的依据。

(3)扫描策略,包括扫描频率、深度约束、每一层页面抓取上限值等。对扫描层数及每一层页面抓取上限值的限定,可以使对网站的总体扫描时间变得可控。

(4)扫描任务,由扫描规则和扫描策略作用于扫描对象上而形成的特定任务。扫描任务包含执行该次扫描所需的所有信息,并根据触发条件自动运行。

(5)扫描结果,以IP地址为桥梁,通过结合来自IDC资源管理系统的相关资源信息,形成拥有详细信息的扫描结果,其中包括域名、IP地址、关键字、权重值、URL、快照、时间戳等。安全管理员可以根据不同查询条件,获得其所关心的统计报表。

它们之间的逻辑关系如图2所示。

4 若干关键问题探讨

系统总体架构已经搭建,而为了使之有效地运转起来,有两个关键问题值得我们去思考和关注。

(1)如何准确定位非法信息源头。通过对问题网站实施内容检测,我们可以获得含有非法信息的网页快照,当然这只是工作的第一步,检测的最终目的是清除这些非法信息,因此,能否准确地定位网站归属就显得尤为重要。

(2)如何使问题网站扫描变得更加高效。由于我们IDC机房内的网站成千上万,如果要逐个爬取,其代价可想而知,而且效率也不高,因为大多数网站上的大部分网页是合法的。如何充分运用有限资源,有针对性地扫描,在某种程度上,就成为决定系统成败的关键。下面我们先就这两个问题分别加以探讨。

4.1 准确定位非法信息源头

为了说明问题,我们首先来看扫描结果会包含哪些信息。考虑到尽可能方便安全管理员对非法信息的处理,一条完整的扫描结果会包含如下11个字段:域名、IP地址、用户名、用户联系人、联系方式、所属机房、包含的关键字、权重值、问题URL、问题网页快照、记录时间。它们之间的逻辑关系如图3所示。其中,有三对关系是非静态的,可能会发生变化,分别是:域名与IP地址之间的关系、IP地址与用户名之间的关系、IP地址与所属机房之间的关系。

图3:一条完整扫描结果所包含字段间的逻辑关系

考虑到上述第一对关系可能随时被打破,为了避免误关联,非法信息检测系统在扫描之前,会对域名进行实时解析,以获得该域名当前实际对应的IP地址。

而为了确保后两对关系的准确性,与IP地址、用户及所属机房相关的信息将会定期同步于IDC资源管理系统,因为后者的设计初衷就是为了实现IDC资源的集中管理和统一维护。

4.2 高效扫描问题网站

不同于我们经常使用的搜索引擎,对非法信息检测系统有效性的评判,更多地在于如何在特定时间内发现更多的含有非法信息的网页。在系统资源极为有限的前提下,我们采取一系列措施来使得扫描更加高效。

(1)将扫描对象做进一步细分:一类称作常规监控网站列表;另一类称作重点监控网站列表。对后者给予重点关注,加强扫描频次。这样做主要是基于以下事实考虑:有过前科的网站较之其他网站往往更易再次发布非法信息。对于重点监控网站列表,有两方面来源:一是由非法信息检测系统自动发现的问题网站,二是由公安局、安全局、通管局报来的问题网站。这样,也使得那些被人工处理过的信息得到了有效继承和再利用。

(2)对于大型网站,扫描一次所花费的时间动辄十几小时,甚至几天。因此,对大型网站做全扫描开销太大。而经过深入分析,对大网站而言,其非法信息往往只集中于某几个版块,如bbs、娱乐版等。为扫描对象添加URL入口及URL匹配规则属性,可以使扫描从指定入口开始,并且限定在匹配规则范围内,如此能使安全管理员控制大型网站的扫描,快速有效地扫描所关注的内容。

(3)在扫描代理上做文章。一方面,通过多代理多线程设计,使得单个对象的扫描时间进一步缩短。另一方面,由于扫描代理与扫描对象之间的物理位置关系会直接影响到扫描效率,因此,允许安全管理员可以根据实际需要来指定代理对特定对象进行扫描。

为使IDC非法信息检测系统更加实用、高效,在研发过程中,除了着重考虑和解决前面提到的两个关键问题外,还实现了如下功能:

(1)对由域名备案系统传来的扫描对象,可以自动配置扫描策略,生成扫描任务,并根据安全期限,来淘汰那些“改邪归正”的网站,从而保证整个系统自动有序运转,减少人工干预。

(2)系统支持自定义扫描关键字,并可对已定义的关键字集实现分组管理。通过为不同扫描对象配置不同关键字集,以达到差异化扫描的目的。

(3)关键字匹配支持整体匹配和局部匹配,有效提升了匹配效率。利用关键字加权求和来对问题网页进行评分,使安全管理员可以区分问题网页的危害程度。

(4)使安全管理员能最大限度了解和控制扫描任务的运行情况,增加了系统的灵活性。

5 结束语

IDC用户网站非法信息检测系统采用爬虫技术,定期对受控网站的网页文本进行扫描和关键字匹配,以主动发现那些含有非法信息的网页。尽管由于技术上的限制,该系统对那些需要密码才能访问的网站,还无法实现有效爬取。但是借助它,我们对大多数常规网站已经能实现主动检测,从而在一定程度上提高了IDC信息安全管理能力。

猜你喜欢
关键字IP地址管理员
履职尽责求实效 真抓实干勇作为——十个关键字,盘点江苏统战的2021
我是图书管理员
我是图书管理员
铁路远动系统几种组网方式IP地址的申请和设置
成功避开“关键字”
IP地址切换器(IPCFG)
基于SNMP的IP地址管理系统开发与应用
公安网络中IP地址智能管理的研究与思考
智能垃圾箱