交换机
园区网交换机
数据中心与云计算交换机
行业精选交换系列
工业交换机
意图网络指挥官
无线
放装型无线接入点
墙面型无线接入点
智分无线接入点
室外无线接入点
场景化无线
无线控制器
行业精选无线系列
统一运维
身份管理
服务产品
运营商
政府
金融
互联网
制造业
高教/职教
医疗卫生
交通
公共安全
作者:吴影 刘辉辉
2020年伊始,一种名为“COVID-19”的新型冠状病毒在全球肆虐,而在网络世界里,病毒也没闲着。借助于真实世界里的病毒肆虐,网络攻击者趁机传播恶意软件,大批用户“惨遭感染”。这批被感染的用户,借助于“黑域名”的帮助,继续在网络空间内对病毒“肆意传播”,那么“黑域名”是什么,对我们有什么影响,本篇将为各位一一道来。
黑域名是什么?
“黑域名”一般指的是如下两种类型的域名:
这里我们所指的“黑域名”特指第二类,即恶意软件(如挖矿病毒、僵尸网络、勒索病毒等)通过“黑域名”实现被控制终端与控制服务器之间保持通信的域名。“黑域名”还可分为静态和动态两类。
静态黑域名常用于挖矿、勒索病毒等网络攻击行为。
动态黑域名常用于僵尸网络或C&C等网络攻击行为,常常使用DGA算法(Domain Generate Algorithm)生成。
对恶意程序而言,固定的恶意IP地址极易被安全设备检测并阻断,无法实现隐蔽与有效地控制。所以,僵尸网络与C&C攻击在设置恶意软件时极力避免使用固定IP地址作为被控终端与服务器端的连接。在程序中常常使用DGA算法来生成随机域名(黑域名),以绕过常见的安全防护手段,实现对被控制端持续、有效的控制。
通过DGA算法生成的黑域名在互联网中常常无法访问,因为恶意攻击者在恶意软件运行时,才对域名进行注册,所以我们发现的黑域名常常无法直接进行访问。
黑域名与普通域名的区别有哪些?
现用现注册
由于注册域名需要费用,故恶意攻击者常常在黑域名计划上线前才注册域名,在此时黑域名才可在互联网环境中访问。
使用时间短
由于现有安全防护措施对网络流量中的行为进行检测,发现可疑请求后将上传云端安全管理中心。所以在黑域名生效使用后,现有检测、防护设备可快速识别并广播防护规则实现有效阻断,为了避免长时间动态域名的暴露,恶意攻击使用一个特定黑域名的时间都不长,通过在1-7天左右。
同一款恶意软件硬编码多个黑域名
同一款恶意软件在制作时可能会内置多个黑域名,以提高成功连接僵尸网络的几率。
黑域名的常见通信过程是怎样的?
当下互联网环境中,常常使用黑域名来实现隐藏僵尸网络中主控端真实IP,因其使用域名的动态性,可绕过基于特征检测的安全防护设备防护功能。
以动态黑域名为例,说明黑域名的使用场景及使用过程。
1、感染并生成随机域名
恶意人员通过恶意邮件、网络入侵等手段,向用户计算机投放恶意病毒,释放C&C被控端软件。被控端软件部署后,根据DGA算法生成伪随机域名。
2、注册随机域名,被控端反向连接主控端
恶意攻击者可提前注册部分黑域名,在恶意程序感染终端后使用DGA算法生成伪随机域名池,使用池中域名逐一向DNS服务器请求对应的IP地址,直至成功获取IP地址后即进行C&C会话连接,进行反向连接。
恶意攻击者可提前注册部分黑域名,在恶意程序感染终端后使用DGA算法生成伪随机域名池,使用池中域名逐一向DNS服务器请求对应的IP地址,直至成功获取IP地址后即进行C&C会话连接,进行反向连接。
对于历史上发现的黑域名示例:
黑域名的识别
一些第三方威胁情报公共平台可以进行黑域名的协助确认(以下截图以微步在线威胁情报社区为例):
同时借助于我司RG-BDS大数据安全平台、RG-BDS-TSP流量探针以及RG-APT高级威胁检测系统,均能第一时刻发现黑域名的解析与访问,并进行告警。
RG-BDS大数据安全平台统一告警:
RG-BDS-TSP流量探针告警:
RG-APT高级威胁检测系统告警:
黑域名防护常见场景
某客户存在被恶意软件感染的主机,向外网发送异常的黑域名连接请求,上端运营商、上级单位等机构发现客户处存在的异常流量,同步客户处理要求。
除了及时对遭受恶意软件感染的主机进行病毒清除等安全加固措施外,可使用锐捷全新NGFW的DNS过滤功能(或DNS清洗功能),进一步控制黑域名的异常访问,将相关风险降至最小。
常见拓扑如下:
前置条件说明:
原理说明
锐捷全新NGFW的DNS过滤功能,顾名思义,防火墙在内部中毒主机访问黑域名时的DNS交互阶段起控制限制作用。
在防火墙进行DNS过滤过程中:
以防火墙对某个域名(假设为域名A)进行DNS过滤的工作流程的描述,可用下图简述:
具体配置
1、用户基本上网配置:
根据实际需求,将防火墙部署到网络中,实现基本上网需求;
2、防火墙授权注册与激活:
按照防火墙授权注册流程完成注册与激活,激活完成后确保当前设备仍处在授权有效期内,如下图所示:
3、配置DNS过滤模板:
通过Web 进入 对象配置--DNS过滤模板,设备默认已有DNS模板“default”,可点击右上角的增加按钮,新增一个模板,如本例增加的模板“dns_filter”:
配置选项说明:
阻断发送到botnet C&C的DNS请求:防火墙设备在导入授权后,会将云端的Botnet地址库、C&C地址库下载到本地;开启此功能后,当DNS请求的域名在Botnet地址库或C&C库中,DNS请求将直接阻断,不会进行后续处理;
基于安全中心分类的过滤器:将DNS请求的域名发送到云端,云端会返回请求的域名的分类信息,用户可基于分类结果,对不同的分类执行不同的动作;
静态域过滤器-域过滤:可手工定义一个域名列表,人为指定对特定域名的处理动作;
静态域过滤器-外部IP阻断清单:与域过滤类似,可手工定义一组IP列表,当域名解析出的地址在该地址列表范围内,人为指定处理动作;
可选项-当发生网址分类错误时允许DNS请求:开启此功能后,当请求的域名发送给云端,云端暂未对其进行分类,或者防火墙与云端无法正常通信时,用户的DNS解析报文可正常转发;关闭此功能后,如出现域名没有分类,或云端连接异常时,DNS报文将不进行转发。
可选项-记录所有DNS查询及相应日志:开启此功能后,可同时记录DNS的请求与回复内容。
推荐必须开启的功能选项:阻断发送到BotnetC&C的DNS请求,基于安全中心分类的过滤器(务必根据实际需要对特定分类的动作进行修改与确认),可选项-当发生网址分类错误时允许DNS请求。
4、配置SSL深度检测模板
在防火墙6.0软件版本上,为了提高安全性,在安全策略开启UTM功能时,要求必须选择SSL/SSH深度检测模板。设备默认已内置SSL深度检测模板,但默认模板中都会对SSL、SSH协议进行代理检测,在实际应用中可能导致出现业务异常。因此如实际场景中没有SSL加密内容的解密需求,需要重新设置一个不加密检测的SSL模板。
配置方法:通过WEB方式进入 对象配置--SSL/SSH深度检测模板,点击右上角新建按钮,创建一个新的SSL/SSH深度检测模板,如下图新建的SSL/SSH深度检测模板“no_ssl”:
新建的模板中,将“检查所有端口”以及“HTTPS”等协议后的开启选项全部关闭即可。
5、安全策略中调用DNS过滤模板
通过Web界面,在策略设置--IPv4策略中,对现有策略进行调整。如下图所示,在对上网上网的“安全配置”进行设置后,调用DNS过滤模板“dns_filter”以及SSL/SSH深度检测模板“no_ssl”:
效果检验
通过防火墙下PC尝试解析黑域名,查看防火墙阻断效果,在防火墙上通过查看日志以及内外网接口抓包方式确认效果。
1、本案例中使用“v.y6h.net” “lpp.ackng.com” “loseyourip.com” 3个黑域名进行测试,(以下是使用VirusTotal工具验证所测试的3个域名风险性截图,确认属于高风险域名):
2、为确保效果,强制测试PC使用常见DNS服务器(案例中使用114.114.114.114 DNS服务器)对风险域名进行解析
测试说明:
a)参数“-qt=A”为nslookup的补充参数,意为强制进行IPv4的域名解析;
b)命令最后的地址,意为强制使用该地址作为DNS服务器;
c)每次测试前,均使用命令“ipconfig /flushdns”清空DNS缓存,避免缓存影响测试结果。
3、防火墙端阻断效果日志:
防火墙日志说明:
a)动作为“block”且消息字段显示“Domain belongs to a denied category in policy”,表明该DNS报文是通过DNS分类手段被阻断;
b) 动作为“block”且消息字段显示“Domain was blocked by dns botnet C&C”表明该DNS报文是匹配到本地的Botnet C&C库被阻断;
4、防火墙内外网报文情况:
(截图左侧为防火墙内网口报文,右侧有防火墙外网口报文)
其他注意事项