一、 Windows系统日志清除
攻击者可能会清除Windows事件日志以隐藏入侵活动。Windows事件日志是计算机警报和通知的记录。系统定义的事件源共有三种:系统、应用程序和安全性,并具有五种事件类型:错误、警告、信息、成功审核和失败审核。前提需要判断命令前的管理权限问题
您可以使用以下实用程序命令清除事件日志:
wevtutil cl system #清除系统日志
wevtutil cl application #清除应用程序日志
wevtutil cl security #清除安全日志
or
Remove-EventLog -LogName Security #删除安全事件日志
参考:
https://attack.mitre.org/techniques/T1070/001/
二、清除Linux或Mac系统日志
攻击者可能会清除系统日志以隐藏入侵证据。macOS 和 Linux 都通过系统日志跟踪系统或用户启动的操作。大多数本机系统日志记录都存储在该/var/log/目录下。该目录中的子文件夹按相关功能对日志进行分类,例如:
/var/log/messages #一般和系统相关的消息日志。
/var/log/secure 或 /var/log/auth.log #身份验证日志,记录用户登录、认证和授权相关的信息。
/var/log/utmp 或 /var/log/wtmp #登录记录日志,用于跟踪用户登录和注销的信息。
/var/log/kern.log #内核日志,记录与内核相关的事件和错误。
/var/log/cron.log #克朗德日志,记录定时任务调度器(cron)的执行日志。
/var/log/maillog #邮件服务器日志,记录邮件服务器的活动和邮件传递信息。
/var/log/httpd/ #Web服务器访问和错误日志,记录Web服务器(例如 Apache)的访问日志和错误日志。
可以参考:
https://attack.mitre.org/techniques/T1070/002/
三、清除命令历史记录
在Windows和Linux/macOS操作系统中,您可以使用以下命令来清除命令历史记录:
在 Windows 操作系统中(使用命令提示符或 PowerShell):
doskey /listsize=0
该命令将清除命令历史记录,设置历史记录缓存大小为0,这样在当前会话中就不会保存任何历史记录。
在 Linux/macOS 操作系统中(使用终端或控制台):
history -c
该命令将清除当前会话的命令历史记录。但请注意,一旦您关闭终端或控制台,以前的历史记录将会重新加载。
要永久清除 Linux/macOS 中的命令历史记录,您可以编辑用户主目录下的 “.bashrc” 或 “.bash_profile” 文件,并在其中添加以下内容:
unset HISTFILE
然后重新打开一个终端或控制台,历史记录将不再保存。
请注意,清除命令历史记录是一个潜在的安全风险,因为它会删除您输入的所有命令,使得在需要时回溯和诊断问题变得困难。在使用这些命令之前,请确保您了解清除历史记录可能带来的后果,并且谨慎操作。如果您希望仅删除特定命令而不是整个历史记录,可以使用编辑器打开相应的历史记录文件并删除特定行。
参考:https://attack.mitre.org/techniques/T1070/003/
四、文件删除
关于文件删除可以可以用命令或者一些工具去删除,但是在执行后日志会有记录,如果需要完全规避,需要一个正确的操作思路达到不被取证发现某些特定的痕迹,当然入侵痕迹肯定是会被发现。操作流程越少越好,能够一次解决就一次性搞定,步骤多了痕迹就明显了!
五、登录IP历史清除
关于Linux系统清除方式
- 清除当前登录的IP记录:
utmpdump /var/run/utmp | grep -v 172.20.111. | utmpdump -r > /tmp/1
env mv /tmp/1 /var/run/utmp
- 清除当前登录的pty名称记录:
utmpdump /var/run/utmp | grep -v ${SSH_TTY:5} | utmpdump -r > /tmp/1
env mv /tmp/1 /var/run/utmp
- 清除历史登录的IP记录:
utmpdump /var/log/wtmp | grep -v 172.20.111. | utmpdump -r > /tmp/1
touch /tmp/1 -r /var/log/wtmp
env mv /tmp/1 /var/log/wtmp
六、Linux不记录命令历史
Linux不记录命令历史
set +o history //设置命令不记录进history
set -o histoty //设置命令记录进history
bash去掉history记录,让系统不记录history
export HISTSIZE=0
export HISTFILE=/dev/null
七、日志伪造
Linux伪造日志
#其中192.168.1.3是我们的IP,8.8.8.8是我们伪造的IP,-i直接编辑文件,必须在后边
sed 's/192.168.1.3/8.8.8.8/g' -i /var/log/btmp*
sed 's/192.168.1.3/8.8.8.8/g' -i /var/log/lastlog
sed 's/192.168.1.3/8.8.8.8/g' -i /var/log/wtmp
sed 's/192.168.1.3/8.8.8.8/g' -i secure
sed 's/192.168.1.3/8.8.8.8/g' -i /var/log/utmp
Web日志
sed 's/192.168.1.3/8.8.8.8/g' –i /var/log/apache/access.log
sed 's/192.168.1.3/8.8.8.8/g' –i /var/log/apache/error_log
Mysql日志
log-error=/var/log/mysql/mysql_error.log #错误日志
log-slow-queries=/var/log/mysql/mysql_slow.log #慢查询日志
sed 's/192.168.1.3/8.8.8.8/g' –i /var/log/mysql/mysql_error.log
sed 's/192.168.1.3/8.8.8.8/g' –i /var/log/mysql/mysql_slow.log
php日志
sed 's/192.168.1.3/192.168.1.4/g' –i /var/log/apache/php_error.log