运营商DNS系统安全解决方案

DNS系统面临的主要风险

目前,DNS面临的安全问题主要可以分为三类:DNS欺骗攻击、拒绝服务攻击、系统漏洞,下文将分别进行介绍。

 DNS欺骗攻击

当一个DNS服务器遭到欺骗攻击,使用了来自一个恶意域名信息记录的,将会产生许多安全问题。常见的DNS欺骗方式有以下种:缓存投毒(cache poison或缓存污染)、域名劫持、IP欺骗(IP Spoofing)、不安全的动态更新。

 拒绝服务攻击

一旦DNS系统遭受拒绝服务攻击,其服务将停止,会导致互联网将处于瘫痪状态。针对DNS的拒绝服务攻击主要有:通用型DDoS攻击、、DNS Query Flood攻击(常见的Query Flood攻击有IP Spoofing型攻击、Random Qname型攻击、滥用型攻击等);利用DNS的拒绝服务攻击主要有反射DDoS攻击(DrDDoS)、放大攻击等。

 系统与应用漏洞

BIND已经是DNS服务器的事实标准,但是BIND自身存在安全漏洞,如远程缓存破坏漏洞、可预测DNS查询ID漏洞、验证远程拒绝服务漏洞、上下文远程拒绝服务漏洞等。

三.  DNS系统安全防护解决方案

3.1  DNS系统安全目标

对运营商而言,DNS系统的安全目标是:第一,保障DNS系统自身的安全,第二,DNS服务的高可靠性、可用性、连续性,第三,为其他相关业务系统提供支持。也可以说,对运营商而言,DNS系统的安全目标就是为用户提供可信、安全、可靠的DNS服务。

3.2  DNS安全体系模型

一个完备的DNS系统保障体系,应该包括四个部分(策略体系、管理体系、技术体系、运作体系)、四个层次(物理安全、网络安全、主机安全、应用及数据安全)和三个阶段(安全评估、安全防护、安全运维),它们共同构成一个有机的整体,协同作用,使DNS系统可以提供高可靠性、高可用性、高连续性的DNS服务,如图3.1所示。

运营商DNS系统安全解决方案

图 3.1  DNS安全体系模型

3.3  DNS安全整体解决方案框架

从两个维度来构建DNS整体解决方案,如图3.2所示:

运营商DNS系统安全解决方案

图 3.2  DNS安全解决方案

 时间维度

在安全评估阶段,DNS安全体系的建设内容主要是:依据风险管理思想,对DNS系统进行全面的安全评估,提出风险处置计划。

在安全防护阶段,构建DNS安全体系的主要工作是:对DNS系统进行全面的实时安全防护,保障业务的可用性。

在安全运维阶段,主要是从安全角度,完善DNS系统运维工作,依托技术从管理上保障DNS业务的正常运行。对于电信运营商而言,DNS系统的安全运维工作主要包括以下三个方面:(1)安全运维队伍:如何建立一个高效、具备解决问题能力的安全运维队伍;(2) 安全运维流程:如何建立适合核心业务需求的安全事件处理机制、流程;(3) 安全运维平台:依靠何种手段将众多的安全基础设施管理起来。

 构成维度

主要从产品和服务两个方面,来构成DNS安全解决方案,产品主要包括安全基线检查系统、DNS专项防护系统、流量清洗系统;服务主要包括针对DNS系统的安全评估服务、渗透测试服务、安全值守服务、系统监控服务、安全事件处理、应急响应、事件追溯等

3.4  DNS系统安全防护方案部署

构建DNS系统双层立体防护体系:运营商骨干网部署流量清洗中心,进行大流量级清洗;在DNS系统前部署DNS专项防护系统,进行有针对性的细粒度的清洗,基线检查工具;用于日常安全检查评估工作。部署示意图如下所示:

运营商DNS系统安全解决方案

图 3.3  DNS立体防护体系示意图

3.5  DNS系统安全服务方案

3.5.1  安全评估

对运营商DNS系统进行安全评估,应该从技术和管理两个方面的评估展开。

技术评估主要包括网络安全评估、主机安全评估、业务及应用安全评估、数据安全评估,目的是从网络、主机、业务及应用、数据等层面对DNS系统进行完整的安全评估,掌握其整体安全状况。管理评估主要包括安全管理制度、安全管理组织、人员管理安全、系统建设管理、系统运维管理等方面的管理评估,目的是掌握DNS的安全管理状况。

3.5.2  安全加固

对DNS系统的应用软件、主机、网络设备、管理制度等四个方面进行检查加固工作。

对于服务器加固而言,就是:根据服务器功能类型的不同,分别完成各自服务器在补丁更新、密码策略设置、运行策略配置、用户授权控制、日志审计等方面的分析与加固工作。

很多DNS系统使用BIND软件进行域名解析。BIND安全选项非常多,应针对BIND服务软件进行安全配置,充分利用BIND自身已经实现的保护功能加强BIND安全性,从而能抵御目前已知的BIND安全漏洞,并尽可能使潜在的安全漏洞对DNS服务造成最小的影响。

BIND安全配置可完成针对限制域传输、限制查询、防止DNS欺骗、设置重试查询次数、修改BIND的版本信息等Bind系统安全配置,具体配置项目包括:

 隐藏BIND版本信息

 禁止DNS域名递归查询

 增加查询ID的随机性

 限制域名查询

 限制域名递归查询

 指定动态DNS更新主机

 指定不接受区域请求

 系统资源限制

 定义ACL地址名

 控制管理接口

 设置重试查询次数

3.5.3  渗透测试

通过采用渗透测试的方式,完成DNS系统的渗透测试,找出面临的威胁,发现弱点、了解设计和执行的缺陷,提前做针对性的防范工作。

3.5.4  安全巡检服务

对DNS系统进行定期的安全状态巡查,借助专业工具在实际环境中检验系统的运作情况,检测、分析系统的运行健康状况、策略的适用情况、安全方案应用的实际效果等,对其中发现的问题及时进行修复,并提供优化建议。

3.5.5  安全值守服务

在重大/特定时期,提供DNS安全值守服务,即提供现场及远程的7*24小时DNS安全监控服务,及时发现DNS的安全问题,随时处理,保障DNS的安全运营。

3.5.6  应急响应

当DNS系统遭受攻击,或出现异常情况时,提供应急响应服务,使DNS系统恢复正常业务。同时,针对域名系统可能发生的DDoS攻击、权威解析篡改、缓存投毒等安全事件,协助客户编写应急预案并组织应急演练,完善安全事件的联动处理流程。

上一篇:JVM 系列(一)类加载


下一篇:phpunit测试学习 1:一点简单的扼要有用的东西的总结 一点入门认识