信息内网与互联网隔离,理论上相对安全威胁较少,时间久之,u盘的交叉使用,必然存在安全隐患,由于内网补丁更新不及时,杀毒软件陈旧,为恶意软件提供滋生的温床。
信息内网涉及终端较多,分布较广,通过人工一一排查难以进行,因此需要借助技术手段,在网络层面上进行排查。思路如下:
流量分析
检测原理
一些恶意软件感染一台终端后,会企图在网络中传播,就会向网络中特殊端口发生数据流。一旦信息网络中发现特殊端口流量,基本可以肯定原地址感染了恶意软件。
检测特点
需要提前预知正常流量情况或者知道可能感染恶意软件的端口
此外发现某些端口的流量暴增,就需要关注
检测方法
以常见勒索病毒为例,检测思路方法如下:
- 在防火墙上建立安全策略,并启用log功能
- 将log发送至日志服务器
- 日志服务器对日志字段划分,提取
五元组
并发送至elasticsearch - 使用kibana查询分析,检查445端口,如:
dest_port:445
,显示源地址 - 使用高级查询,对原地址进行聚合
GET fwlog-today/_search
{
"query": {
"bool" : {
"must" : {
"query_string" : {
"query" : "dest_port:445"
}
}
}
}
"aggs" : {
"genres" : {
"terms" : { "field" : "source_ip" }
}
}
}
可视化展示
制作简单的可视化界面,用于更好的检测发现网络中异常情况:
![](https://img.haomeiwen.com/i73566/2fb8ef181a079a68.jpg)
DNS请求分析
检测原理
恶意软件感染后,如需要向外通讯,需要对域名进行解析,通常正规的软件不会使用一些字母间包含容易混淆的数字0、1的域名,发生解析异常域名的情况,需要进行核查,由于域名量大且难以判断,引入virustotal的结果作为情报源。
检测特点
- 判断方法简洁、部分域名能够直接判断恶意软件早期版本
- 域名量比较多样,通常大量请求的基本是正常的,需要分析的是请求解析量少的域名,出现长尾现象
- 对DNS加密请求无效
检测方法
检测思路如下:
- DNS服务器的启用日志功能,使用syslog发送日志或通过filebeat采集
- 将日志存放在elasticsearch中,便于对海量请求数据分析
- 通过kibana的表格功能,导出请求的域名列表(按请求数排序)
- 剔除量大的、可以判断的域名
- 对剩余的域名调用virustotal的API进行判断,确认异常后,立即查发起请求解析的设备IP
import requests
url = 'https://www.virustotal.com/vtapi/v2/domain/report'
params = {'apikey':'<apikey>','domain':'<domain>'}
response = requests.get(url, params=params)
print(response.json())
改进思路
端口检测
使用端口扫描工具,定期扫描所有机器开放的端口,自后对比分析增加的端口,一旦发现新的端口,立即排查。
本文遵守知识共享协议:署名-非商业性使用-相同方式共享 (BY-NC-SA 4.0) 协议
网友评论