Linux 中创建哪些审计日志文件来跟踪用户活动?

Linux 中创建哪些审计日志文件来跟踪用户活动?

我们网络上的一台机器消耗了大量的互联网带宽。然而没有用户使用该系统。

当我使用 SSH 连接到服务器并运行时,who它显示用户从我无法识别的 IP 登录。我没有在系统上创建这个用户。并且/etc/sudoers用户拥有无限的 root 访问权限:

test11   ALL = NOPASSWD: ALL

我终止了会话并更改了 root 密码。我也删除了该用户。

现在我可能安全了,但需要分析为什么会发生这种情况以及用户进行了哪些活动。

我如何找到有关该用户所做操作的更多信息?哪些系统日志文件可以帮助我获取有关 IP、持续时间、命令运行、访问的互联网站点等的更多信息?

注意:这是 CentOS 6 系统的默认安装。我没有安装任何安全或审核软件。我也没有更改任何系统配置。我需要知道可以从默认安装中提取什么。

答案1

由于您的系统已受到损害,因此您从该系统获得的任何信息都不可信。只有立即发送到外部系统的日志才是可信的(例如实时远程系统日志)。这意味着如果您有一些夜间日志轮换到 NFS 共享,您就不能信任它。

然而,用户可能并没有费心去掩盖他/她的踪迹,并且您可能在系统上仍然可以使用这些信息。

不幸的是,在默认的 Centos/RHEL 安装中,日志记录非常少。你基本上只能在/var/log.您应该深入研究哪个日志取决于该机器上运行的服务。不过我会从 ssh 日志开始。之后查看以 root 身份运行或具有访问权限的任何服务的日志sudo

如果幸运的话,该test11用户可能有一个主目录,其中包含一个.bash_history包含所做操作历史记录的文件。


此外,由于系统已被破坏到未知用户能够获得 root 访问权限的程度,因此必须从头开始重建系统。您不能重复使用系统中的任何内容。将每个文件视为已泄露。我还建议不要使用备份,因为您不知道系统多久前被破坏了。

一旦用户获得 root 访问权限,就可以安装无限数量的后门。如果我是访问您系统的人,那么简单地删除该test11用户并更改root密码甚至不会减慢我的速度。


未来,你可以做一些事情。

远程记录

如前所述,只有实时远程日志记录才是可信的,不会被篡改。确保你有这个。

审计

您应该安装并使用 2 个实用程序来监视和审核系统的关键组件。这些都是审计奥塞克

这两个实用程序的操作方式不同,但目的相同,即监视异常活动。

终端记录

还有另一个审计工具叫做pam_tty_audit它与前面提到的实用程序结合使用auditdpam_tty_audit是一个添加到 pam 堆栈的实用程序,它记录 TTY 上的所有输入和输出。这意味着如果用户通过交互式 ssh 访问该盒子,他们的活动将被记录。
但请注意,最重要的是不惜一切代价保护该日志。这主要是因为密码。当您在提示符下输入密码时,即使您没有看到正在输入的密码,模块pam_tty_audit也会看到它并记录下来。您也有可能会cat输出(或以其他方式查看)包含敏感信息的文件,这些信息也将被记录。因此,该日志必须立即从本地系统移出,以便入侵者无法获取它,或者必须对其进行加密(并且解密密钥不得位于本地系统上)。最好两者都应该执行、远程发送并加密。

相关内容