日志文件的安全性 - 在日志文件中注入恶意代码

信息安全 攻击 日志记录 注射
2021-08-14 01:02:26

作为我课程项目的一部分,我试图了解各种安全框架和最佳实践。

一种非常流行的方法是维护日志。我的问题是关于日志文件本身的安全性。由于大多数日志都提供了应用程序如何处理错误的清晰跟踪,那么日志文件的安全性如何?

黑客可以在日志文件中注入恶意代码吗?如果日志文件产生漏洞(可能是编码,但它的有效性如何),有哪些方法可以保护日志文件?

最后,是否值得花费大量时间、精力和金钱来保护日志?

2个回答

是的,日志文件注入在利用过程中很有用。例如, 这是一个利用PHP 本地文件包含漏洞在 Apacheaccess_log文件中执行 PHP 代码的漏洞这种利用模式在 LAMP 世界中很常见。

大多数系统缺乏针对这种攻击模式的保护。通常日志文件受操作系统文件访问控制的保护。AppArmor 和 SELinux 可以阻止进程访问任意文件或目录。PHPopen_base_dir可以防止 PHP 包含应用程序目录之外的文件。

远程日志记录是解决本地文件包含攻击以及攻击者破坏机器并操纵日志文件以隐藏其踪迹所构成的威胁的绝佳解决方案。

这是证明可审计性时的一个主要问题,因为 IT 人员倾向于访问服务器并且理论上可以更改日志。

一个常见的解决方案是将日志写入除核心系统日志服务器之外的 IT/系统管理员等无法访问的地方,例如异地或 WORM 驱动器(一次写入 - 多次读取)

这允许您使用您的正常系统日志服务器进行日常故障排除、性能分析等,同时保留“安全”日志以用于审计或调查目的。

当然,一个坚定而熟练的攻击者可以拦截流量,但其目的是使其变得足够困难,以至于会留下一些痕迹。

至于保护它们的价值 - 取决于组织的需求。对于银行和大公司来说,这可能是必不可少的/强制性的,而对于一个 5 人的小型组织来说,它可能远没有那么重要。