通过集中日志记录来减少安全风险
创始人
2024-03-02 05:46:25
0

集中日志并结构化待处理的日志数据可缓解与缺少日志相关的风险

日志记录和日志分析对于保护基础设施安全来说至关重要,尤其是当我们考虑到通用漏洞的时候。这篇文章基于我在 FOSDEM'19 上的闪电秀《Let’s use centralized log collection to make incident response teams happy》,目的是提高大家对日志匮乏这种安全问题的重视,提供一种避免风险的方法,并且倡议更多的安全实践(利益声明: 我为 NXLog 工作)。

为什么要收集日志?为什么要集中日志记录?

确切的说,日志是写入磁盘的仅追加的记录序列。在实际生活中,日志可以在你尝试寻找异常的根源时帮助你调查基础设施的问题。当你有多个使用自己的标准与格式的日志的异构系统,并且想用一种可靠的方法来接收和处理它们的时候,挑战就来临了。这通常以元数据为代价的。集中日志记录解决方案需要共性,这种共性常常会去除许多开源日志记录工具所提供的丰富的元数据。

日志记录与监控匮乏的安全风险

开源 Web 应用程序安全项目 Open Web Application Security Project (OWASP)是一个为业界贡献了许多杰出项目(包括许多专注于软件安全的工具)的非营利组织。OWASP 定期为应用开发人员和维护者报告最危险的安全挑战。在最新一版《10 项最严重的 Web 应用程序安全风险》中,OWASP 将日志记录和监控匮乏加入了列表中。OWASP 警告下列情况会导致日志记录、检测、监控和主动响应的匮乏:

  • 未记录重要的可审计性事件,如:登录、登录失败和高额交易。
  • 告警和错误事件未能产生、产生不足或不清晰的日志信息。
  • 日志信息仅在本地存储。
  • 对于实时或准实时的主动攻击,应用程序无法检测、处理和告警。

可以通过集中日志记录(例如,不仅将日志本地存储)和结构化日志数据以进一步分析来缓解上述情形(例如,在告警仪表盘和安全套件中)。

举例来说, 假设一个 DNS 查询会导向名为 hacked.badsite.net 的恶意网站。通过 DNS 监控,管理员监控并且主动的分析 DNS 请求与响应。DNS 监控的效果依赖于充足的日志记录与收集来发现潜在问题,同样也依赖于结构化 DNS 日志的结果来进一步分析。

2019-01-29
Time (GMT)      Source                  Destination             Protocol-Info
12:42:42.112898 SOURCE_IP               xxx.xx.xx.x             DNS     Standard query 0x1de7  A hacked.badsite.net

你可以在 NXLog 社区版 中自己尝试一下这个例子,也可以尝试其他例子和代码片段。 (再次声明:我为 NXLog 工作)

重要的一点:非结构化数据与结构化数据

花费一点时间来考虑下日志数据格式是很重要的。例如,让我们来考虑以下日志消息:

debug1: Failed password for invalid user amy from SOURCE_IP port SOURCE_PORT ssh2

这段日志包含了一个预定义的结构,例如冒号前面的元数据关键词(debug1)然而,余下的日志字段是一个未结构化的字符串(Failed password for invalid user amy from SOURCE_IP port SOURCE_PORT ssh2)。因此,即便这个消息是人类可轻松阅读的格式,但它不是一个计算机容易解析的格式。

非结构化的事件数据存在局限性,包括难以解析、搜索和分析日志。重要的元数据通常以一种自由字符串的形式作为非结构化数据字段,就像上面的例子一样。日志管理员会在他们尝试标准化/归一化日志数据与集中日志源的过程中遇到这个问题。

接下来怎么做

除了集中和结构化日志之外,确保你收集了正确的日志数据——Sysmon、PowerShell、Windows 事件日志、DNS 调试日志、ETW、内核监控、文件完整性监控、数据库日志、外部云日志等等。同样也要选用适当的工具和流程来来收集、汇总和帮助理解数据。

希望这对你从不同日志源中集中日志收集提供了一个起点:将日志发送到仪表盘、监控软件、分析软件以及像安全性资讯与事件管理(SIEM)套件等外部源。

你的集中日志策略会是怎么样?请在评论中分享你的想法。


via: https://opensource.com/article/19/2/reducing-security-risks-centralized-logging

作者:Hannah Suarez 选题:lujun9972 译者:leommxj 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

相关内容

AI攻防“倍速”激战,Ch...
生成式AI的爆发式发展,正将网络安全攻防推向一场“不对称战争”。攻...
2025-10-15 12:15:30
紫光国微:在特种集成电路方...
紫光国微在投资者互动平台表示,在特种集成电路方面,公司将导入AI技...
2025-10-14 10:22:25
开源鸿蒙技术大会2025 ...
转自 IT产业网 数字时代浪潮奔涌,万物智联加速推进。随着数字经济...
2025-10-11 15:45:41
抖音集团张莹:以AI技术构...
通信世界网消息(CWW)9月25日,智创“新”北京暨2025(第二...
2025-10-01 10:18:45
美国加州立法要求大型AI科...
(央视财经《天下财经》)当地时间29日,美国加利福尼亚州州长纽森签...
2025-09-30 23:15:30

热门资讯

Helix:高级 Linux ... 说到 基于终端的文本编辑器,通常 Vim、Emacs 和 Nano 受到了关注。这并不意味着没有其他...
《Apex 英雄》正式可在 S... 《Apex 英雄》现已通过 Steam Deck 验证,这使其成为支持 Linux 的顶级多人游戏之...
使用 KRAWL 扫描 Kub... 用 KRAWL 脚本来识别 Kubernetes Pod 和容器中的错误。当你使用 Kubernet...
JStock:Linux 上不... 如果你在股票市场做投资,那么你可能非常清楚投资组合管理计划有多重要。管理投资组合的目标是依据你能承受...
从 Yum 更新中排除特定/某... 作为系统更新的一部分,你也许需要在基于 Red Hat 系统中由于应用依赖排除一些软件包。如果是,如...
如何在 Github 上创建一... 学习如何复刻一个仓库,进行更改,并要求维护人员审查并合并它。你知道如何使用 git 了,你有一个 G...
Epic 游戏商店现在可在 S... 现在可以在 Steam Deck 上运行 Epic 游戏商店了,几乎无懈可击! 但是,它是非官方的。...
通过 SaltStack 管理... 我在搜索Puppet的替代品时,偶然间碰到了Salt。我喜欢puppet,但是我又爱上Salt了:)...
如何检查你的 Linux 系统... 不知道在使用哪个初始化系统?以下是方法。每个主流 Linux 发行版(包括 Ubuntu、Fedor...
如何理解Apache 2.0许... 提要:Apache 2.0许可证中的专利许可条款使得开源代码可以安全使用,但它经常被误解。Apach...