运营商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所示。

图 3.1 DNS安全体系模型
3.3 DNS安全整体解决方案框架
从两个维度来构建DNS整体解决方案,如图3.2所示:

图 3.2 DNS安全解决方案
时间维度
在安全评估阶段,DNS安全体系的建设内容主要是:依据风险管理思想,对DNS系统进行全面的安全评估,提出风险处置计划。
在安全防护阶段,构建DNS安全体系的主要工作是:对DNS系统进行全面的实时安全防护,保障业务的可用性。
在安全运维阶段,主要是从安全角度,完善DNS系统运维工作,依托技术从管理上保障DNS业务的正常运行。对于电信运营商而言,DNS系统的安全运维工作主要包括以下三个方面:(1)安全运维队伍:如何建立一个高效、具备解决问题能力的安全运维队伍;(2) 安全运维流程:如何建立适合核心业务需求的安全事件处理机制、流程;(3) 安全运维平台:依靠何种手段将众多的安全基础设施管理起来。
构成维度
主要从产品和服务两个方面,来构成DNS安全解决方案,产品主要包括安全基线检查系统、DNS专项防护系统、流量清洗系统;服务主要包括针对DNS系统的安全评估服务、渗透测试服务、安全值守服务、系统监控服务、安全事件处理、应急响应、事件追溯等
3.4 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攻击、权威解析篡改、缓存投毒等安全事件,协助客户编写应急预案并组织应急演练,完善安全事件的联动处理流程。
运营商DNS系统安全解决方案的更多相关文章
- 从运营商小广告到HTTPS
相信很多人都试过这样的经历,浏览一个正常的网站时,右下突然角弹出一堆小广告,而且这些广告的内容和你浏览的网站格格不入: 前几天还有某微博用户爆料访问github时居然也有广告: 又或者,你有没有试过因 ...
- 【入门】广电行业DNS、DHCP解决方案详解(一)——历史及现状篇
广电发展历史 单项网络 双向网络 智能网络 广电网络现状 广电网络典型特征 接入技术混杂 承载业务多样化 业务终端错综复杂 其他 网络现状模型 总结 广电发展历史 广电就是广播电视,广电发展可以分为三 ...
- BGP多线 有些BGP IP也会被极少数运营商劫持 取Ip逻辑
小结: 1.租用的服务器只有一个IP,用户的访问路线是由路由器根据访客的实际访问速度选择最优访问路径,来选择访问的.而且不占用任何的服务器资源.服务器的上行和下行都是有路由器来选择最佳的路线,所以这样 ...
- CSP -- 运营商内容劫持(广告)的终结者
缘由 我们公司最近手机端H5 经常受到商户和用户的投诉,说有广告并且导致不能正常进行操作,我们商户自己当然不会加广告了,但是商户和用户可不管这些了,就认为是我们的问题 探索发现根本 目前我们用的很多浏 ...
- IP地址数据库-ISP运营商列表(2017年1月)
IP地址数据库 微信号:qqzeng-ip [全球旗舰版][国内精华版][国外拓展版][英文版][掩码版] http://qqzeng.com 中国大陆:三大基础运营商 中国电信中国联通中国 ...
- Android 5.0 Default SMS App以及运营商授权SMS App
已同步更新至个人blog:http://dxjia.cn/2015/08/android-5-default-sms-app/ 题外话:博友们有没有好用的写博客客户端推荐啊,cnblogs推荐的win ...
- 你们以为运营商只是HTTP插点广告而已么?
国内某邮件服务商,近期在某南方地区有大量客户反应登录时出错和异常,于是工作人员进行了一下跟进,发现如下: 首先,邮件服务商登陆页面为普通HTTP协议发送,提交时通过JS进行RSA加密(没错,JS的RS ...
- Android手机上判断网络运营商
我们想获取手机的运营商信息.通常都会去调用系统的TelephonyManager类的取数据.但是很多时候可能取不到卡的信息(例如双卡手机和 一些特殊卡),这样就区别不了运营商了.但是有时候我们的需求要 ...
- APP安全环节缺失,手游运营商怎样应对APP破解困境
2013年手游行业的规模与收入均实现了大幅增长,发展势头强劲.然而,在手游快速发展的同一时候,因为监管.审核等方面存在着漏洞,手机游戏软件被破解后注入恶意代码.盗取用户財产.窃取用户设备信息的现象屡见 ...
随机推荐
- C语言中malloc函数返回值是否需要类型强制转换问题
1. 在C语言中, 如果调用的函数没有函数原型, 则其返回值将默认为 int 型. 考虑调用malloc函数时忘记了 #include <stdlib.h>的情况 此时malloc函数返回 ...
- springboot学习笔记-6 springboot整合RabbitMQ
一 RabbitMQ的介绍 RabbitMQ是消息中间件的一种,消息中间件即分布式系统中完成消息的发送和接收的基础软件.这些软件有很多,包括ActiveMQ(apache公司的),RocketMQ(阿 ...
- 【转】Python之日期与时间处理模块(date和datetime)
[转]Python之日期与时间处理模块(date和datetime) 本节内容 前言 相关术语的解释 时间的表现形式 time模块 datetime模块 时间格式码 总结 前言 在开发工作中,我们经常 ...
- 关于C++中的指针、数组
C++中指针和数组基本等价的原因在于指针算术和C++内部处理数组的方式:将整数变量加一后,其值将增加1:将指针变量加一后,增加的量等于其指向的数据类型的字节数: 指针中存储的是地址,地址在形式上和整数 ...
- freeRTOS中文实用教程5--内存管理
1.前言 不同的嵌入式系统具有不同的内存配置和时间要求.所以单一的内存分配算法只可能适合部分应用程序. FreeRTOS 将内存分配作为可移植层面(相对于基本的内核代码部分而言).这使得不同的应用程序 ...
- v4l2文档之——color and format【转】
转自:https://blog.csdn.net/zoe6553/article/details/17715407 v4l2文档第五A--颜色与格式 颜色与格式这是不定期发布的关于写视频驱动程序 ...
- MySQL5.7更改用户名密码
更改用户名密码,官方推荐使用alter ALTER USER test@'%' IDENTIFIED BY '; 还有一种 update mysql.user set authentication_s ...
- centos6下的lvm逻辑卷的管理
LVM:Logical Volume Manager 将多块设备组合成一个来使用 dm:device mapper 设备映射 设备文件 /dev/卷组名/逻辑卷名 /dev/mapp ...
- 使用RMS API 自定义Office(Word、Excel、PPT)加密策略
什么是RMS: Microsoft Windows Rights Management 服务 (RMS),是一种与应用程序协作来保护数字内容(不论其何去何从)的安全技术,专为那些需要保护敏感的 Web ...
- 对比synchronized与java.util.concurrent.locks.Lock 的异同
主要区别 1.Lock能完成几乎所有synchronized的功能,并有一些后者不具备的功能,如公平锁.等待可中断.锁绑定多个条件等: 2.synchronized 是Java 语言层面的,是内置的关 ...