#反溯源
#痕迹清理
#攻防演练
在授权攻防演练中,攻击结束后,如何不留痕迹的清除日志和操作记录,以掩盖入侵踪迹,这其实是一个细致的技术活。
在蓝队的溯源中,攻击者的攻击路径都将记录在日志中,所遗留的工具也会被蓝队进行分析,在工具中可以查找特征,红队自研工具更容易留下蛛丝马迹。
你所做的每一个操作,都要被抹掉;你所上传的工具,都应该被安全地删掉,以防被溯源在演练中失分。
一、Windows入侵痕迹清理
1.1 Windows日志清除
【系统日志】:%SystemRoot%\System32\Winevt\Logs\System.evtx
【安全日志】:%SystemRoot%\System32\Winevt\Logs\Security.evtx
【应用程序日志】:%SystemRoot%\System32\Winevt\Logs\Application.evtx
【日志在注册表的键】:HKEY_LOCAL_MACHINE\system\CurrentControlSet\Services\Eventlog
1.2 windows日志清除方式:
(1)最简单粗暴的方式
开始→运行,输入 eventvwr
进入事件查看器,右边栏选择清除日志。
或者使用wevtutil
wevtutil el 列出系统中所有日志名称
for /F "tokens=*" %a in ('wevtutil.exe el') DO wevtutil.exe cl "%a" 清除所有日志
wevtutil cl system 清理系统日志
wevtutil cl application 清理应用程序日志
wevtutil cl security 清理安全日志
(2)powershell一键清除Windows事件日志
PowerShell -Command "& {Clear-Eventlog -Log Application,System,Security}"
或
Get-WinEvent -ListLog Application,Setup,Security -Force | % {Wevtutil.exe cl $_.Logname}
(3)利用脚本停止日志的记录
通过该脚本遍历事件日志服务进程(专用svchost.exe)的线程堆栈,并标识事件日志线程以杀死事件日志服务线程。
该脚本没有杀死进程,而是杀死了线程。因此,虽然事件日志服务似乎在系统中运行(因为没有终止进程),但它实际上并没有运行(因为终止了线程)并且系统不收集日志。
项目地址:
hlldz/Phant0m: Windows Event Log Killer (github.com)
使用:
执行phant0m之后,尝试远程登录该服务器,并不会记录日志
(4)Windows单条日志清除
项目地址:
QAX-A-Team/EventCleaner: A tool mainly to erase specified records from Windows event logs, with additional functionalities. (github.com)
该工具主要用于从Windows事件日志中删除指定的记录。
同时也可以暂停日志线程,停止日志记录。
使用步骤:
1、EventCleaner closehandle #解除 security.evtx的文件占坑
2、EventCleaner 100 #删除 event record id 为 100 的日志
3、EventCleaner suspend #暂停日志线程,停止日志记录
4、do anything without worrying about logs
5、EventCleaner normal #恢复日志线程
6、delete EventCleaner
(5)Windows日志伪造
使用eventcreate这个命令行工具来伪造日志或者使用自定义的大量垃圾信息覆盖现有日志。
eventcreate -l system -so administrator -t warning -d "this is a test" -id 500
IIS日志:
IIS默认日志路径:
%SystemDrive%\inetpub\logs\LogFiles\W3SVC1\
清除WWW日志:
停止服务:net stop w3svc
删除日志目录下所有文件:del *.*
启用服务:net start w3svc
利用Windows自带命令进行安全擦除
(1)Shift+Delete快捷键永久删除
直接删除文件,还是能在回收站找到的,使用Shift+Delete快捷键可以直接永久删除了。
可以用数据恢复软件,删除的文件尽快恢复,否则新的文件存入覆盖了原来的文件痕迹就很难恢复了。
(2)Cipher 命令多次覆写
在删除文件后,可以利用Cipher 命令通过 /W 参数可反复写入其他数据覆盖已删除文件的硬盘空间,彻底删除数据防止被恢复。
比如,删除D:\tools
目录下的文件,然后执行这条命令:
cipher /w:D:\tools
这样一来,D 盘上未使用空间就会被覆盖三次:一次 0x00、一次 0xFF,一次随机数,所有被删除的文件就都不可能被恢复了。
(3)Format命令覆盖格式化
Format 命令加上 /P 参数后,就会把每个扇区先清零,再用随机数覆盖。而且可以覆盖多次。比如:
format D: /P:8
这条命令表示把 D 盘用随机数覆盖 8 次。
清除远程桌面连接记录
当通过本机远程连接其他客户端或服务器后,会在本机存留远程桌面连接记录。代码保存为clear.bat文件,双击运行即可自动化清除远程桌面连接记录。
@echo off
reg delete "HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client\Default" /va /f
reg delete "HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client\Servers" /f
reg add "HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client\Servers"
cd %userprofile%\documents\
attrib Default.rdp -s -h
del Default.rdp
清除recent
在文件资源管理器中点击“查看”->“选项”->在常规->隐私中点击”清除”按钮
或直接打开C:\Users\<Administrator>\Recent
并删除所有内容
或在命令行中输入
del /f /s /q “%userprofile%\Recent*.*“
标签:攻防,删除,windows,清除,wevtutil,Windows,线程,日志,溯源
From: https://www.cnblogs.com/o-O-oO/p/18315651