记录和监控不足
当出现问题时,记录和监控通常是事后才想到的,但实际上,未能确保进行适当的日志记录和监控可能会付出非常昂贵的代价。
在一个极端情况下,当事件发生时(无论是否与安全有关),很少或根本没有日志都无法弄清楚实际发生了什么。在另一个极端,记录过多的数据会导致隐私问题,进而导致监管机构出现问题。
下面,我们将介绍一些最佳实践,这些实践可以帮助指导您更好地进行日志记录和监控。
最佳实践
让我们来看看一些良好的日志记录和监控的最佳实践。
敏感功能的审计日志
为诸如登录尝试(无论尝试是否成功)、用户帐户更改、访问/更改敏感数据以及其他类似实例等敏感事件创建审计日志非常重要。普通用户和任何内部/管理用户的访问都是如此。
在据信发生了未经授权的访问的情况下,无论是内部人员还是局外人,记录这些信息就变得极其重要。
当此类事件发生时,必须能够说明谁访问了哪些数据,以了解事件的规模和范围。
错误记录
拥有错误和警告日志不仅是监控应用程序运行状况的一般工程最佳实践;它们还可以用作警告标志。
当攻击者发现漏洞时,他们通常会生成大量错误和警告,这可以告诉你攻击者可能在你的应用程序中发现了漏洞。
将日志存储在集中的位置
日志应始终实时传输和存储在集中的地方。这既是为了确保日志可以立即供 SIEM 分析,也是为了防止可能入侵服务器的攻击者修改或删除日志。
在规定的时间内保留日志
不幸的现实是,大多数漏洞需要几天才能被发现,实际上,20%的漏洞需要花费数天才能被发现 月份 来检测。当从漏洞到检测的时间很长时,日志通常是确定可能发生了什么的唯一数据来源。
因此,在明确定义的时间段内存储日志尤为重要。像 PCI 这样的标准要求可以毫不拖延地访问日志,可以追溯到 3 个月前,而 12 个月前的日志必须能够根据要求恢复。
这种方法在能够轻松开始调查潜在事件和通过冷藏日志管理成本之间取得了良好的平衡。
定期审计 PII 日志
日志非常适合调查潜在事件,但现实情况是,日志本身也可能导致事件。
在包括调查事件所需信息与记录过多信息之间存在微妙的平衡。很容易意外地在日志中包含个人身份信息,这可能会导致隐私法规出现问题。
定期审计 PII 日志并确保将其删除非常重要。
Secure coding made practical
Explore secure coding guidelines to understand and mitigate software vulnerabilities like the OWASP Top 10, and dive into guided training Missions to practices in real-world app simulations.