数码在线
白蓝主题五 · 清爽阅读
首页  > 网络排错

网络日志审计告警设置:让异常行为无处可藏

为什么需要做日志审计告警

前两天朋友公司出事了,一台服务器半夜被挖矿,等发现时CPU已经跑满三天。查了半天才发现是某个旧后台被爆破登录,其实登录失败的日志一直在记,就是没人看。这就是典型的有日志、无告警。

网络设备、服务器、防火墙每天产生的日志成千上万条,靠人工翻不现实。真正有用的信息往往藏在大量正常记录里,得靠自动化手段揪出来。设置合理的审计告警,等于给网络装了个24小时值班的保安。

从哪几类日志下手最有效

不是所有日志都值得设告警。优先盯这几类:

登录异常:比如连续5次失败后成功登录,可能是撞库成功;非工作时间的管理员登录,也得警惕。

权限变更:用户被加进管理员组、角色权限突然提升,这种操作一旦发生必须立刻知道。

敏感操作:删除关键文件、修改网络配置、导出数据库,这类动作不管谁做的,都该留痕并触发提醒。

流量突变:某台内网主机突然对外发起大量连接,可能是中了木马在发包。

用ELK简单搭个告警流程

很多公司用ELK(Elasticsearch + Logstash + Kibana)收集日志。在Kibana里可以基于查询设阈值告警。比如检测SSH暴力破解:

{
  "query": {
    "bool": {
      "must": [
        { "match": { "service.name": "ssh" } },
        { "match": { "event.action": "failed_login" } }
      ],
      "filter": {
        "range": { "@timestamp": { "gte": "now-5m" } }
      }
    }
  },
  "size": 0
}

把这个查询放进Kibana的Alerting模块,设定5分钟内匹配到超过10条就发邮件或钉钉通知,基本就能拦住大部分扫端口撞密码的行为。

别忘了Windows事件日志

内网大量Windows主机,安全日志里的ID 4625(登录失败)、4670(权限变更)、4688(新进程启动)都很关键。可以用WEC(Windows Event Collector)把日志集中拉到Linux服务器,再交给SIEM处理。

比如监控域控上的4720(创建用户),如果有人新建了带“admin”关键字的账户,立即推送告警到手机。曾经有公司就是因为这条规则,及时发现了伪装成IT人员创建的后门账号。

告警太多怎么办

一开始设太松,手机一天响几十次,最后干脆关掉通知。合理做法是先观察一周日志,统计各类事件频率,再定阈值。

比如某接口每分钟正常请求约20次,突然飙到200可以告警;但如果直接设“超过50就报警”,可能每次促销活动都误报。另外,把告警分级:红色紧急(如root登录失败)、黄色注意(如磁盘使用超85%),不同级别走不同通道。

真正的高手不是堆一堆规则,而是挑最关键的几个,确保每次响都有价值。宁可漏一点,也不要让自己对告警麻木。