windows日志清除

目录

在我们日常的安全攻击过程中,登录尝试、流程开发、其他用户和设备行为都记录在 Windows 事件日志中,这将会增大自身被溯源的风险,针对于windows日志痕迹清除主要总结了以下这些方法

关闭日志服务

1
2
3
4
5
#找出日志进程的PID
Get-WmiObject -Class win32_service -Filter "name = 'eventlog'"

#kill掉对应PID
taskkill /F /PID 1792

重启可进行恢复

wevtutil

它是一个系统工具,可让您查找有关事件日志和发布者的详细信息。您还可以使用此命令安装和卸载事件清单、导出、存档和清除日志。

1
2
统计日志列表,查询所有日志信息,包含时间,数目
wevtutil.exe gli Application

1
2
查看指定类别的日志内容
wevtutil qe /f:text Application

1
2
删除该类日志所有内容
wevtutil cl Application

但清除完会留下1012或104的系统日志

1
2
获取最近十条日志
wevtutil.exe qe Security /f:text /rd:true /c:10

日志导出过滤

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
wevtutil.exe epl Security 1.evtx
过滤分两种:

按日志号过滤:
wevtutil epl Security 1.evtx "/q:*[System [(EventID!=1112)]]"

通过加or语句
wevtutil epl Security 1.evtx "/q:*[System [(EventID>13032) or (EventRecordID<13030)]]"

按时间过滤:
wevtutil epl Security new.evtx "/q:*[System [TimeCreated[@SystemTime >'2021-09-08T17:21:00' or @SystemTime <'2021-09-08T09:20:00']]]"
这里删除SystemTime为2021-08-20T03:20:00至2018-08-29T03:21:00之间的日志,结果保存为new.evtx,然后可以把删除处理后的日志进行重新导入

组合过滤:
wevtutil epl Security asd.evtx "/q:(Event/System/TimeCreated[@SystemTime >'2021-09-07T03:21:00' or @SystemTime <'2021-09-04T03:20:00']) and Event/System/EventID=4624"

注意:首先需要确定系统时间,如图时差为8小时,对应清除日志时间要向前移8小时
wevtutil.exe qe Security /f:xml /rd:true /c:1

编译:通过GitHub的项目重新进行导入

https://github.com/3gstudent/Homework-of-C-Language/blob/master/DeleteRecordbyTerminateProcess(ReplaceFile).cpp

编译在代码位置添加

#include <stdio.h> #include <tchar.h>

该项目的原理:

1
2
3
4
5
1、解除本身日志文件的占用
2、结束日志进程
3、释放日志文件句柄
4、替换日志文件
5、重启日志服务

运行完成后把删除处理后的日志重新导入安全日志,但会留下7034的系统日志

EventLogMaster

这是一款用于日志清除的Cobalt Strike插件,可指定地址、ip等

https://github.com/QAX-A-Team/EventLogMaster

如图所示源地址172.20.10.3记录在remoteconnectionmanager日志中,选择相应的日志类型并填写好源地址进行清除

成功清除该IP相关的日志

Powershell

执行以下两条命令

1
2
Clear-Eventlog -LogName Security
Clear-Eventlog -LogName System

清除完会分别留下104和1102的清除日志

Phantom

在Windows操作系统上,svchost.exe管理服务,而服务实际上是在svchost.exe下作为线程运行的。Phant0m以事件日志服务为目标,找到负责事件日志服务的进程,它会检测并终止负责事件日志服务的线程。因此,虽然事件日志服务似乎在系统中运行,但是Phant0m终止了线程而没有终止进程,所以系统不收集日志。

项目地址:https://github.com/hlldz/Phant0m

可以通过编译后的exe程序或者项目的cs插件运行

或通过Powershell分别执行以下三条命令

1
2
3
1、powershell -ep bypass
2、Import-Module .\Invoke-Phant0m.ps1
3、Invoke-Phant0m

重新启动日志事件服务

重启会留下1100事件号的日志

MiniNT注册表

可以使用注册表,创建一个新的注册表项,然后重新启动机器以加载配置单元。

1
reg add “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\MiniNt”

此键禁用事件查看器,从而限制它生成日志。

删除重启后可正常查看日志

中间这段时间日志不会被记录