(华能济宁高新区热电有限公司济宁272000;北京铠撒信息技术有限公司北京101199)
摘要:截止到2017年底,仅360公司就累计监测到针对中国境内目标发动攻击的APT组织36个,最近仍处于活跃状态的APT组织至少有13个,这些组织的攻击目标涵盖了政府机关、高校、科研机构以及关键基础设施行业企业。尤其是在在国际、国内重大活动期间,国内外不法分子企图发起网络空间战,对重要网站实施渗透攻击,利用重大活动的影响力,以达到他们不可告人的目的。比如国外反推特的一些每三天都会攻克我们国内的一些网站,这些对于网络安全工作是一个巨大的挑战。
关键词:风险;风险检测;态势感知;SQL注入;防跨站脚本
一、安全背景
永恒之蓝与勒索病毒:
勒索病毒WannaCry(又叫WannaDecryptor),是一种“蠕虫式”,大小3.3MB,由不法分子利用NSA(NationalSecurityAgency,美国国家安全局)泄露的危险漏洞“EternalBlue”(永恒之蓝)进行传播。勒索病毒是自熊猫烧香以来影响力最大的病毒之一。WannaCry勒索病毒全球大爆发,至少150个国家、30万名用户中招,造成损失达80亿美元,已经影响到金融,能源,医疗等众多行业,造成严重的危机管理问题。中国部分Windows操作系统用户遭受感染,校园网用户首当其冲,受害严重,大量实验室数据和毕业设计被锁定加密。部分大型企业的应用系统和数据库文件被加密后,无法正常工作,影响巨大。
勒索病毒利用永恒之蓝漏洞暴发给我们的警示是:对互联网形成威胁的不仅是一般以经济利益为目的的黑客及不法分子,还有一批更专业更有背景的以政治军事为目的的国家层面的黑客组织。
二、目前主流的风险检测系统
(一)态势感知:
1、态势感知(SA)的概念
在特定时空下,对动态环境中各元素或对象的觉察、理解以及对未来状态的预测。或者,SA是经过某种信息的处理过程达到的知识状态,这种处理过程称为“态势评估”(SituationAssessment)。态势感知中的“觉察”又称为一级SA,本质上是“数据收集”;“理解”称为二级SA,本质上是掌握数据中的知识(数据中的对象及其行为和对象间的相互关系);“预测”称为三级SA,本质上是知识的应用。在大规模系统环境中,对能够引起系统态势发生变化的安全要素进行获取,理解,显示以及预测未来的发展趋势。目前广泛应用于军事、电力、交通、通信网络等领域“态势感知”(SA,SituationAwareness)概念起源于20世纪80年代的美国空军:分析空战环境信息,快速判断当前及未来形势并做出正确反应。无疑这对取得胜利具有决定性的作用,而信息到态势的转换并非易事,这正是SA产生的背景。20世纪90年代,SA进入“人为因素”(HumanFactors)研究领域,成为研究热点。目前SA已广泛应用于军事、航空、工业生产、安全防控等领域,对辅助决策起到重要作用。
2、态势感知的技术分类
一些研究者出于解决行业领域内具体问题这一目的,从信息收集、感知方法及过程等角度研究态势感知。如讨论军事与国土安全决策支持及知识管理,从信息获取、存储、解释等角度分析态势感知技术。又如讨论网络安全态势感知,将态势预测方法分为基于事件、环境两类。而专门讨论可视化技术,从可视化的需求、目的、内容等角度进行分类。本文不局限于某一具体的应用领域或角度,而从更高层面进行分类,以期更全面地探究态势感知技术。
(1)环境类型
环境类型分为封闭式环境和开放式环境,封闭环境或闭合系统,指不与外界有任何物质交换,不受任何外力控制或影响的系统。如一个核电厂的整个运行监控系统,其特点是:观察对象固定,对象的特征与对象间关系稳定且可枚举,此类环境的态势感知相对容易。
开放式环境如战场、互联网等,其特点是:环境中的对象类型、特征均可能发生变化,环境无边界或者边界模糊。为了简化,这类环境的感知模型会将对象进行粗略的分类,从而使对象类型固定。信息时代,这类环境更为常见,由于环境复杂度高,对态势感知技术的需求也更为迫切。
(2)应用类型
应用类型主要有3个:环境管理、安全监测与工业控制,不同类型间的区别在于感知的目的不同,而这主要体现在感知过程的不同。
环境管理,如观察某一区域的车辆通行情况,观察记录某地气象走势等。通过记录、统计、分析,为将来的设计提供决策等。
安全监测,这包括对环境中异常的检测,攻击的识别,威胁的评估,主要目的是宏观的安全管理。
工业控制包括对工业生产环境的过程控制,主要目的是确保工业生产活动的安全、质量、效率等。
以上应用类型的不同主要体现在态势感知过程的不同上。
(二)防SQL注入(SQLInject)系统
1.原理:
SQL注入就是把SQL命令插入到Web表单然后提交到所在页面请求(查询字符串),从而非法获取网站控制权,达到欺骗服务器执行恶意的SQL命令。
它是利用现在已有的应用程序,将SQL语句插入到数据库中执行,执行一些并非按照设计者意图的SQL语句。SQL注入攻击是输入参数未经过滤,然后直接拼接到SQL语句当中解析,执行达到预想之外的一种行为
SQL注入是发生在应用程序的数据库层上的安全漏洞。在设计程序,忽略了对输入字符串中夹带的SQL指令的检查,被数据库误认为是正常的SQL指令而运行,从而使数据库受到攻击,可能导致数据被窃取、更改、删除,以及进一步导致网站被嵌入恶意代码、被植入后门程序等危害。
2.危害:
数据库信息泄漏:数据库中存放的用户的隐私信息的泄露。
网页篡改:通过操作数据库对特定网页进行篡改。
网站被挂马,传播恶意软件:修改数据库一些字段的值,嵌入网马链接,进行挂马攻击。
数据库被恶意操作:数据库服务器被攻击,数据库的系统管理员帐户被窜改。
服务器被远程控制,被安装后门。经由数据库服务器提供的操作系统支持,让黑客得以修改或控制操作系统。
破坏硬盘数据,瘫痪全系统。
3.常见的防范方法
(1)所有的查询语句都使用数据库提供的参数化查询接口,参数化的语句使用参数而不是将用户输入变量嵌入到SQL语句中。当前几乎所有的数据库系统都提供了参数化SQL语句执行接口,使用此接口可以非常有效的防止SQL注入攻击。
(2)对进入数据库的特殊字符(’”<>&*;等)进行转义处理,或编码转换。
(3)确认每种数据的类型,比如数字型的数据就必须是数字,数据库中的存储字段必须对应为int型。
(4)数据长度应该严格规定,能在一定程度上防止比较长的SQL注入语句无法正确执行。
(5)网站每个数据层的编码统一,建议全部使用UTF-8编码,上下层编码不一致有可能导致一些过滤模型被绕过。
(6)严格限制网站用户的数据库的操作权限,给此用户提供仅仅能够满足其工作的权限,从而最大限度的减少注入攻击对数据库的危害。
(7)避免网站显示SQL错误信息,比如类型错误、字段不匹配等,防止攻击者利用这些错误信息进行一些判断。
(三)防跨站脚本(XSS)漏洞系统
1、定义:
跨站脚本攻击(Cross-sitescripting,通常简称为XSS)发生在客户端,攻击者往Web页面里插入恶意html标签或者javascript代码。可被用于进行窃取隐私、钓鱼欺骗、窃取密码、传播恶意代码等攻击。XSS攻击使用到的技术主要为HTML和Javascript,也包括VBScript和ActionScript等。XSS攻击对WEB服务器虽无直接危害,但是它借助网站进行传播,使网站的使用用户受到攻击,导致网站用户帐号被窃取,从而对网站也产生了较严重的危害。
2、危害:
(1)网络钓鱼,盗取各类用户的账号
(2)窃取用户Cookie,获取用户隐私,或者利用用户身份进一步执行操作
(3)劫持用户(浏览器)会话,从而执行任意操作,例如进行非法转账、强制发表日志等
(4)强制弹出广告页面,刷流量等
(5)进行恶意操作,例如任意篡改页面信息,删除文章等,传播跨站脚本蠕虫,网页挂等
(6)进行基于大量的客户端攻击,如DDOS攻击
(7)结合其它漏洞,如CSRF漏洞。
3、防护方法:
(1)与SQL注入防护的建议一样,假定所有输入都是可疑的,必须对所有输入中的script、iframe等字样进行严格的检查。仔细检查长度和对”<”,”>”,”;”,”’”等字符做过滤;其次任何内容写到页面之前都必须加以encode。这里的输入不仅仅是用户可以直接交互的输入接口,也包括HTTP请求中的Cookie中的变量,HTTP请求头部中的变量等。
(2)不仅要验证数据的类型,还要验证其格式、长度、范围和内容。
(3)不要仅仅在客户端做数据的验证与过滤,关键的过滤步骤在服务端进行。
(4)对输出的数据也要检查,数据库里的值有可能会在一个大网站的多处都有输出,即使在输入做了编码等操作,在各处的输出点时也要进行安全检查。
(5)在发布应用程序之前测试所有已知的威胁。
(6)避免直接在cookie中泄露用户隐私,例如email、密码等等。
(7)通过使cookie和系统ip绑定来降低cookie泄露后的危险。这样攻击者得到的cookie没有实际价值,不可能拿来重放。
(8)尽量采用POST而非GET提交表单
(四)网页防篡改系统
网页防篡改系统是用于保护网站安全,防止黑客入侵、篡改网站网页的网站防护产品。目前网页防篡改的实现技术主要有:外挂轮询技术、核心内嵌技术、事件触发技术。
(1)外挂轮询技术利用网页检测程序,以轮询方式读出要监控的网页,与真实网页相比较,来判断网页内容的完整性,对被篡改的网页进行报警和恢复。
(2)核心内嵌技术将篡改检测模块内嵌在Web服务器软件里,它在每一个网页流出时都进行完整性检查,对于篡改网页进行实时访问阻断,并予以报警和恢复。
(3)事件触发技术利用操作系统的文件系统接口,在网页文件被修改时进行合法性检查,对于非法操作进行报警和恢复。
三针对重大安保期间功能加强的防护系统
1、开发意义:
以上介绍的常用的防护检测手段(态势感知、日志分析XSS防注入、僵木儒分析、网页防篡改系统等)在重大安保事件中会有如下不足:
(1)告警太多:由于各个系统设计平台不统一,阀值门限各不相同,导致普通告警过多,从而安保技术人员的关注度,真正有威胁的风险可能被忽略。
(2)告警响应速度慢,常用的防护手段属于火力全覆盖,但是速度和精准度有待提高,无法准确把握攻击并进行应急,大部分的应急还是依赖于人力的事后分析告警太多。比如网页防篡改系统需要机器学习探测网页是否存在暗链,基本上需要30分钟以上的学习时间,而重大安保要求封堵时间不超过五分钟。
为此我们开发了这套检测准、速度快的智能检测系统用于重要安保期间的漏洞防护。
2、主要功能:
全流量抓取暴露面网站流量,进行实时监控;根据现有的典型攻击模型特征(XSS、SQL注入等)进行实时分析对比;在攻击发生的同时精确报警。告警准确率达到90%。主要应用于:1、重大活动的应急和检测2、日常互联网暴露面资产的检测维护。
其优点是:
1、定位精准:比态势感知系统更精准定位
2、发现快速:比网页防篡改系统反应更快速
3、增加威胁情报收集
4、跨平台部署,后续适合自主开发。
3、方案特点
结合重大活动网络安全保障期间的经验,增加了很多实用性的特性,以满足实际工作环境需求。
1、提供参数替换接口、防止参数中出现session等值。
2、提供host和session对照接口,可实时进行测试替换。
3、提供白名单接口,可无条件放过测试。
4、提供自定义规则接口,进行自定义漏洞检测,主要用于越权和常见漏洞检测。
5、各个模块的配置信息和规则均存储在redis中,可实时修改。
四、结束语
通过本课题,了解了当前主流的网络安全防护解决方案如态势感知系统、网页防篡改系统,对互联网上比较常见的SQL注入漏洞、XSS漏洞的产生原因、影响、检测方式进行了深入研究,进一步加深了对网络安全的理解。很大程度上缓解了重大活动期间网络安全保障工作的压力,也给日常的网络风险检测分析工作带来了很大的便利。
作者简介:
张智慧,1980年3月5日出生,女,1980年3月,汉族,籍贯山东省邹城市,最高学历本科,现职称助理工程师,研究方向电力系统网络信息安全,就职于华能济宁高新区热电有限公司
赵凤伟,1978年5月13日出生,男,汉族