谁动了我的主机?之活用History命令

Linux 系统下可通过 history 命令查看用户所有的历史操作记录,在安全应急响应中起着非常重要的作用,但在未进行附加配置情况下,history 命令只能查看用户历史操作记录,并不能区分用户以及操作时间,不便于审计分析。

创新互联公司是一家专业提供顺城企业网站建设,专注与网站建设、成都网站建设、H5高端网站建设、小程序制作等业务。10年已为顺城众多企业、政府机构等服务。创新互联专业的建站公司优惠进行中。

当然,一些不好的操作习惯也可能通过命令历史泄露敏感信息。

下面我们来介绍如何让 history 日志记录更细化,更便于我们审计分析。

1、命令历史记录中加时间

默认情况下如下图所示,没有命令执行时间,不利于审计分析。

通过设置 export HISTTIMEFORMAT='% F % T ',让历史记录中带上命令执行时间。

注意”% T” 和后面的”’” 之间有空格,不然查看历史记录的时候,时间和命令之间没有分割。

要一劳永逸,这个配置可以写在 /etc/profile 中,当然如果要对指定用户做配置,这个配置可以写在 /home/$USER/.bash_profile 中。

本文将以 /etc/profile 为例进行演示。要使配置立即生效请执行 source /etc/profile,我们再查看 history 记录,可以看到记录中带上了命令执行时间。

如果想要实现更细化的记录,比如登陆过系统的用户、IP 地址、操作命令以及操作时间一一对应,可以通过在 /etc/profile 里面加入以下代码实现

export HISTTIMEFORMAT="\%F \%T`who \-u am i 2>/dev/null| awk '{print $NF}'|sed \-e 's/[()]//g'``whoami`

注意空格都是必须的。

修改 /etc/profile 并加载后,history 记录如下,时间、IP、用户及执行的命令都一一对应。

通过以上配置,我们基本上可以满足日常的审计工作了,但了解系统的朋友应该很容易看出来,这种方法只是设置了环境变量,攻击者 unset 掉这个环境变量,或者直接删除命令历史,对于安全应急来说,这无疑是一个灾难。

针对这样的问题,我们应该如何应对,通过修改 bash 源码,让 history 记录通过 syslog 发送到远程 logserver 中,大大增加了攻击者对 history 记录完整性破坏的难度。

history 高级用法

上面是记录 History 的方法。我们也可以通过写入文件,更加方便的记录和审计命令


文章题目:谁动了我的主机?之活用History命令
分享链接:https://www.cdcxhl.com/article4/sdeioe.html

成都网站建设公司_创新互联,为您提供商城网站云服务器网站内链品牌网站建设手机网站建设动态网站

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

绵阳服务器托管