提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 一、windows操作系统基础入门
  • 二、windows渗透痕迹清除
    • 1.为避免入侵操作行为被发现时,攻击者往往通过各种方式来隐藏自己操作痕迹,比如:删除日志、隐藏后门、日志伪造。

前言

我们在做痕迹清理时,一定要对windows的基础理论,基础知识点明确于心,废话不多说,接下来开始学习。

记录MS08068学习红队三期windows痕迹清除
1、windows用户基础入门
2、windows用户命令入门
3、windows渗透痕迹清除


一、windows操作系统基础入门

1、了解windows用户
2、了解windows用户组
3、了解用户的权限划分
百度脑图:

https://naotu.baidu.com/file/80a2365213702de526fd9a988c91f572

二、windows渗透痕迹清除

1.为避免入侵操作行为被发现时,攻击者往往通过各种方式来隐藏自己操作痕迹,比如:删除日志、隐藏后门、日志伪造。

01、windows日志清除在哪?如何清除?:
window日志路径一般在如下几个地方:
备注:主机日志路径

系统日志:%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) 全部清除,容易被发现
方法一:cmd命令输入:eventvwr 打开事件管理器,如图,点击一键删除clear loading

方法二:通过命令删除:

  • cmd环境:
PowerShell -Command "& {Clear-Eventlog -Log Application,System,Security}"
PowerShell -Command "& {Get-WinEvent -ListLog Application,System,Security -Force | % {Wevtutil.exe cl $_.Logname}}"
  • powershell环境:
Clear-Eventlog -Log Application,System,Security
Get-WinEvent -ListLog Application,System,Security -Force | % {Wevtutil.exe cl $_.Logname}

(2)定向清除
(1)停止日志服务
方法一:工具实现
在我们清除日志的动作期间,这个清除动作已经被计算机记录,所有首先要停止日志记录,借助第三方工具:原理:定位并杀掉日志服务的相关进程,而对其应的svchost.exe进程并没有被杀掉,所以日志几率服务器看起来是正常运行。

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

工具老版本是用powershell写的,执行命令powershell -File Invoke-Phant0m,如果提示脚本文件无法执行,则可能是由于执行策略限制,通过命令修改执行策略即可(管理员权限):

新版本需要自己编译生成可执行文件,原理在于定位并杀死日志服务运行线程,工具提供了两种定位日志服务线程的方法,在编译时要注意选择下。注意待日志清除后要恢复日志服务,命令是net start evevtlog。
方法二:手动实现
首先利用ps命令找出日志记录服务器(eventlog)对应的进程PID,Get-WmiObject或Get-CimInstance命令都可以:

运行结果中可以看出eventlog服务对应的PID都是1736,然后利用工具找出pid=1706的进程:(此处利用的工具为process)

选择该scvhost.exe,点选右键->属性->线程,找出服务为eventlog的线程TID、如图:依次选择Kill这些线程,注意Suspend是不行的:

这样日志服务实际上就关闭了,但由于只是杀掉了其进程下运行的线程,而进程仍然存在,所以服务看起来是没有异样的,这和方法一中用工具实现的原理是相同的。
恢复正常:需要恢复日志记录服务时,在进程列表界面选择该scvhost.exe,点选右键->重新启动(restart),然后运行命令net start eventlog就可以了。


2、删除日志
一般我们获取shell时,在做敏感操作的时候,需要借助第三方工具清除单独日志,以下的工具就是奇安信工具,根据EventRecordID删除单挑日志功能。

项目地址:https://github.com/QAX-A-Team/EventCleaner

使用方法:

EventCleaner suspend      # 暂停日志进程,停止日志记录EventCleaner normal       # 恢复日志进程EventCleaner closehandle  # 解除security.evtx的文件占坑EventCleaner 100

2、应用日志
在删改windows安装的应用程序的日志相对简单,应为定位其中路径后就可以手动进行修改:总结三部曲。
1、找到应用程序的日志路径,
2、停止其响应服务。
3、对日志内容进行修改
停止服务的命令一般用net stop即可,如net stop “World Wide Publishing Service”,删除命令用Shift + Delete或cmd命令del。

(二)搜索&链接
获取shell后一般我们的操作会需要远程桌面链接,远程桌面链接会使我们留下痕迹
1、远程桌面记录
(1)删除缓存
缓存文件默认一般为:C:\Users\Administrator\Documents\Default.rdp ,已隐藏,可到用户的Document目录下,文件夹选项选择隐藏文件可见,然后删除,也可以用cmd命令删除。

cd C:\Users\Administrator\Documents\
attrib Default.rdp -s -h
del Default.rdp

(2)删除注册表
对应注册表项为HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client\Default\和HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client\Servers\,可以用regedit打开注册表编辑器,找到这两个键,在右边定向删除对应的值,也可以用cmd命令将其全部清除:

eg delete "HKCU\Software\Microsoft\Terminal Server Client\Default" /f
reg delete "HKCU\Software\Microsoft\Terminal Server Client\Servers" /f

2、文件搜索记录
对应注册表

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\WordWheelQuery,打开注册表编辑器,找到该键并删除对应的值。

3、文件浏览记录

对应注册表项为

HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\TypedPaths,打开注册表编辑器,找到该键并删除对应的值。

4、最近访问位置
win7的位置在我的电脑、最近访问位置右键-》删除最近项目列表;
win10的位置在我的电脑或资源管理其中,选择查看-》选项-》常规,将隐私一栏的”快速访问“两个选项去掉,并选择删除历史记录;


5、运行命令行记录
对应注册表项为

HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\RunMRUdakai 打开注册表编辑器,找到该键并删除对应的值。

(三)浏览器记录
如果使用了浏览器访问,尽量使用隐私模式的浏览器,开启隐私模式可以避免在本地计算机留下历史记录、缓存文件、和cookies。
注释:不同的浏览器存储的日志 路径可能不同。
IE:
(1)存放的位置
在工具-》internet 选项-》常规-》浏览历史记录-》设置中记录了缓存文件的存放路径。

(2)删除方法

  • 方法一:浏览器搜索下拉栏中,直接选择删除相应的历史记录
  • 方法二:在工具-》inter选项-》常规->浏览器历史记录表删除所有的缓存、文件、cookies

2、chrome
(1)存放位置
在浏览器搜索栏中输入:chrome://version/可以看到个人资料路径。


(2)删除方法

  • 方法一:在浏览器搜索栏中输入:chrome://history。选择删除单条浏览记录
  • 方法二:在设置-》隐私设置和安全中,或在搜索栏中输入chrom://history/后选择清除浏览数据,选择删除特定时间范围的浏览器记录,缓存文件、cookies。

3、firefox
(1)存放位置
在浏览器搜索栏中输入:about:cache,就可以看到缓存文件的磁盘存储路径

(2)删除方法

  • 方法一:在Library->History->Recent History栏中右键删除特定的浏览记录
  • 方法二:方法二:在Library->History->Clear Recent History,或在Options->Privacy & Security中选择Clear History,删除指定时间范围的历史记录

(四)隐藏用户
低级新建隐藏用的方式就是在新建的用户名称结尾加上$,虽然这样net user命令看不到,但是一下三种情况可以看到

  • powershell命令:powershell -c Get-LocalUser

  • 在计算机管理中(cmd命令:compmgmt.exe)选择”本地用户和组->用户“,或者通过cmd命令lusrmgr直接打开。


  • 控制面板(cmd:control)中选择”用户账户-用户账户-管理其他账户“

    (5)超级隐藏影子用户
    推荐使用新建 影子用户 的方式隐藏用户,这样只能通过注册表查看,其它方式无法查看隐藏用户信息。
    方法:
    (将新建用户admin$作为Administrator的影子用户,Administrator已激活)
    1、新建用户

net user admin$ QWERtrewq /add   注释,添加隐藏用户,密码QWERtrewq
net localgroup administrators admin$ /add 注释将隐藏用户添加到administrators组总。

2、导出注册表
打开注册表,右键HKEY_LOCAL_MACHINE\SAM\SAM,编辑-》当前用户 (组) 权限选择完全控制,然后重新打开注册表,再次选择HKEY_LOCAL_MACHINE\SAM\SAM就可以看见HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users中的内容,如下所示:


HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\Names显示了系统当前存在的所有账户。如图

选中admin,在其右侧可见对应键值为"0x3ee",此键值为用户SID的结尾,即RID。同理找到Administrator右侧对应键值为"0x1f4",相应地将00003EE、00001F4、admin,在其右侧可见对应键值为"0x3ee",此键值为用户SID的结尾,即RID。同理找到Administrator右侧对应键值为"0x1f4",相应地将 00003EE、00001F4、admin,在其右侧可见对应键值为"0x3ee",此键值为用户SID的结尾,即RID。同理找到Administrator右侧对应键值为"0x1f4",相应地将00003EE、00001F4、admin 三个注册表项右键导出为reg格式文件:3ee.reg、1f4.reg、admin.reg 图片后补
3.F键值替换

编辑 3ee.reg 和 1f4.reg,将 3ee.reg 中的F键值替换成 1f4.reg 中的F键值,F键值中存放了用户的登录信息,替换后也就是将Administrator用户的登录信息复制给了admin,这样在操作系统内部就把admin,这样在操作系统内部就把admin,这样在操作系统内部就把admin当做是Administrator,admin$也就成了Administrator的影子账户。
图片后补

3、导入注册表
删除用户,然后将刚刚导出的 3ee.reg 和 admin.reg 重新导入

net user admin$ /del
regedit /s 3ee.reg
regedit /s admin.reg

影子账户建立完成,两者使用同一个用户配置文件,RDP登录admin$用户,桌面环境、浏览器配置等数据和Administrator同步一致,需谨慎操作。

二:文件伪装
(1)修改时间
上传工具或者木马文件后,我们为了不让蓝队工程师查询,要将其文件修改为和当前目录中文件相似的时间,可以利用powershell进行修改,
如:上传的admin.exe工具创建时间修改为2019年12月12日12:12:12.方法如下
方法一:利用对象属性修改
查看文件的创建时间、修改创建、上次访问时间

1、(ls ”c:\temp\admin.exe“).creationTime
2、(ls ”C:\temp\admin.exe“).lastWritetime
3、(ls "c:\temp\admi.exe").lastAcessTime

修改文件的创建时间、修改时间、上次访问时间:

1、(ls ”c:\temp\admin.exe“).creationTime ="2019年12月12日12:12:12"
2、(ls ”C:\temp\admin.exe“).lastWritetime ="2019年12月12日12:12:12"
3、(ls "c:\temp\admi.exe").lastAcessTime ="2019年12月12日12:12:12"

方法二:利用cmdlet命令修改
查看文件属性信息,包括文件的创建时间、修改时间、上次访问时间:

 Get-ItemProperty -Path "C:\temp\test.exe" | Format-list -Property *

修改文件的创建时间、修改时间、上次访问时间

Set-ItemProperty -Path "C:\temp\test.exe" -Name CreationTIme -Value "2011-11-11 11:11:11"
Set-ItemProperty -Path "C:\temp\test.exe" -Name LastWriteTime -Value "2011-11-11 11:11:11"
Set-ItemProperty -Path "C:\temp\test.exe" -Name LastAccessTime -Value "2011-11-11 11:11:11"

2、文件隐藏
方法一:attrib命令
上传工具或者文件时,利用attrib命令更改文件属性。
命令格式:attrib [+R | -R] [+A | -A ] [+S | -S] [+H | -H] [[drive:] [path] filename] [/S [/D]]

  • 增加属性
  • 减少属性
  • R 只读文件属性
  • A 存档文件属性
  • S 系统文件属性
  • H 隐藏文件属性
  • /S 处理当前文件夹及其子文件夹中的匹配文件
  • /D 也处理文件夹
 + 例如在C:\temp目录上传工具test.exe,将其目录及其文件隐藏命令:attrib +r +a +s +h C:\temp\test.exe & attrib +r +a +s +h C:\temp,如果要将其删除,先要将其恢复然后再删除:attrib -r -a -s -h C:\temp & rmdir C:\temp /s /q

利用attrib隐藏后的文件,在文件浏览器中选择隐藏项目可见或是用普通的dir命令,都是不可见的,如果要查看可以用命令:dir /a
方法二:ADS隐写

首先要了解MAC文件系统 (HFS) 和Windows文件系统 (NTFS) 储存文件数据的方式:

MAC文件系统将文件数据存储在数据和资源两个部分,数据部分存储文件内容,资源部分用于告诉操作系统如何使用文件数据
Windows文件系统将文件数据全部存储在文件中,用文件扩展名 (.bat .exe .txt 等) 告诉操作系统如何使用文件数据
ADS (Alternate Data Streams) 是Windows文件系统NTFS的特性之一,目的是兼容MAC文件系统,原本用意是通过ADS兼容MAC文件系统中文件存储的资源部分,但可以利用此特性将文件隐藏在文件、目录甚至盘符的ADS中。

ADS隐藏文件可以起到很好效果,但如果想要利用ADS运行可执行文件,情况要复杂些,因为在Windows 7之后系统对ADS运行可执行文件作了限制,具体系统需要验证方法可行性。

目前在我的实验环境下将可执行文件隐藏到其他文件的ADS,测试了几种运行方法:只有runas命令在所有Windows版本是可行的,但是必须要交互输入用户密码,其他命令方式在不同版本系统表现不同,要先验证才行,实验中将工具test.exe上传至主机C:\temp目录,将其利用ADS隐藏,不同方法具体使用情况如下:
① 将其隐藏在用户桌面test.txt文件的ADS中,ADS命名为1.exe

# 隐藏ADS
type C:\temp\test.exe > C:\users\Jim\desktop\test.txt:1.exe# 先切换到ADS所在目录,再运行
# Windows 10 Pro 10.0.19042、Windows Server 2016 Datacenter 10.0.14393 测试可行
powershell -c "cd C:\users\Jim\desktop; .\test.txt:1.exe"

② 将其隐藏在C:\Windows目录的ADS中,ADS命名为2.exe

# 隐藏ADS
type C:\temp\test.exe > C:\Windows:2.exe# 先切换到ADS所在目录,再运行
# Windows 10 Pro 10.0.19042、Windows Server 2016 Datacenter 10.0.14393 测试可行
powershell -c "cd C:\; .\Windows:2.exe"

③ 将其隐藏在C:\盘符的ADS中,ADS命名为3.exe

type C:\temp\test.exe > C:3.exe# 隐藏在盘符中的方式在所有Windows系统中都可以直接运行
C:3.exe

利用ADS技术隐藏后的文件,在文件浏览器中选择隐藏项目可见或是用普通的dir命令,或是查看文件内容和大小,都是不可发现的,如果要查看可以用命令:dir /r,如果要将文件ADS删除,需要将文件转换为FAT、FAT32等其他文件系统格式,或是借助第三方工具如:SysinternalsSuite工具包中的 Streams ,使用方法如下:

# 查看文件/目录ADS
Streams.exe -s <DIR|FILE># 删除文件/目录ADS
Streams.exe -d <DIR|FILE>

(二)文件擦除
对于敏感文件和工具,物品们不能用常规的删除命令,应为常规的删除命令可以留下痕迹,易于被蓝队或者数据恢复工程师恢复,一般情况下我们使用这些命令进行高效删除
1、命令行DEL/ERASE删除
永久的删除文件,不经过回收站、但是能用数据恢复软件恢复,
2、shift+delete永久删
永久删除文件,不会经过回收站、但是没有覆盖,能使用数据恢复软件恢复。
.Cipher擦除覆写
cipher /W:directory:从整个卷上可用的磁盘空间中覆写数据,从而覆盖已删除文件的硬盘空间,这样之前删除的数据顶多能够恢复文件名,但是恢复数据几乎是不可能的。
例如刚删除工具C:\temp\test.exe,然后执行cipher /W:C,这样C盘上的空余空间就会被覆写三轮,分别是0x00、0xFF、随机数,覆写需要一段时间,这取决于C盘空余空间的大小。
4.Format格式化覆写
format volume /P:count:将volume卷上每个扇区清零,此后该卷将被改写count次,且每次使用不同的随机数。

例如format D: /P:10表示把D盘用随机数格式化后再覆写10次。

红队渗透-window痕迹清除相关推荐

  1. 攻防演练-某地级市HW攻防测试演练红队渗透测试总结

    某地级市HW攻防演练红队渗透测试总结 文章目录 某地级市HW攻防演练红队渗透测试总结 前言 一.对某目标攻击的复盘 1.Web打点 2.上免杀马反弹shell(Failed) 3.信息收集,数据库提权 ...

  2. 【愚公系列】2023年05月 网络安全高级班 040.WEB渗透与安全(红队渗透测试技术分类和工具箱)

    文章目录 前言 一.红队渗透测试技术分类和工具箱 1.红队渗透测试技术分类 1.1 Web安全渗透 1.2 内网安全渗透 1.3 移动安全渗透 1.4 无线安全渗透 1.5 云安全渗透 2.红队渗透测 ...

  3. 红队渗透工具库-忍者安全系统(NINJUTSU OS v3)系统安装

    红队渗透工具库-忍者安全系统(NINJUTSU OS v3)系统安装 前言 将镜像下载好使用VM安装,我给该系统分配了70个G硬盘,6G内存 镜像下载链接:链接: https://pan.baidu. ...

  4. 【愚公系列】2023年05月 网络安全高级班 038.WEB渗透与安全(红队渗透测试入门指南)

    文章目录 前言 一.背景 1.新型IT基础设施带来全新挑战,安全范畴持续在延伸 2.APT级攻击手段众多,网络空间安全威胁加剧 3.什么是APT攻击 4.传统安全技术与管理应对乏力,众多政企单位陷入困 ...

  5. 红蓝对抗-红队渗透下的入口权限快速获取

    红队渗透下的入口权限快速获取 文章目录 红队渗透下的入口权限快速获取 前言 红队攻击流程概述 获取入口权限 利用常见组件的漏洞 高危漏洞的检测与攻击 POC的集成与自动化验证 POC bomber 前 ...

  6. 红队渗透笔记之红队前端语言基础

    文章目录 HTML基础 HTML语法 常用标签介绍 <!DOCTYPE>标签 < head> 标签 < title> 标签 < body> 标签 < ...

  7. 【网络安全】手把手给大家演练红队渗透项目

    简介 该项目是以伟大的詹姆斯邦德电影GoldenEye为主题创作的,目标是获取最底层的flag.txt文本信息,该项目作为OSCP考试培训必打的一个项目环境,该作者评定该环境为渗透中级水准难度.接下来 ...

  8. 红队渗透测试技术:如何通过鱼叉式网络钓鱼获得攻击机会?

    关于红队在渗透测试中使用的网络钓鱼攻击的文章很多,不过大多数的介绍都是不完整的.在本文中,我们将对这个话题进行一次完整的梳理,包括域创建,制作网络钓鱼内容,绕过垃圾邮件过滤器和电子邮件网关,生成不可检 ...

  9. 红队渗透靶场之W1R3S靶场(超详细!)

    W1R3S考察知识 nmap的基本使用 目录爆破工具的使用 CMS漏洞的利用 Linux用户的简单提权 W1R3S靶场搭建 W1R3S靶场下载地址: https://download.vulnhub. ...

最新文章

  1. 数字三角形路径最小值c语言题目,算法学习——动态规划之点数值三角形的最小路径...
  2. Android 调试工具集合
  3. c语言程序设计风筝图案,《C语言程序设计》作业答案
  4. 【Java中级篇】基于jxl读写Excel文件遇到的问题
  5. 执行计划级别mysql 2ef,Mysql 层级、执行顺序、执行计划分析
  6. 图像处理工具包ImagXpress使用教程:多页TIFF编辑API的使用(二)
  7. 如何在定制化组件中实现并使用v-model
  8. maven打包所有依赖
  9. 【转】契约测试的必要性
  10. Java JDK11的下载与安装
  11. yaml 变量引用_yaml语法
  12. 2021年8月NOC全国中小学信息技术创新与实践大赛 软件创意编程小学高年级组Python决赛题解析
  13. 微信公众号通过a标签打开小程序
  14. Win10如何清除运行历史记录
  15. 【JZOJ6091】唐时月夜
  16. MBA包括哪些课程?看完这个系列的书籍你就知道了
  17. Java/Android 进程与线程之 多线程开发(二)
  18. 风靡全球25年的重磅IP,新作沦为脚本乐园
  19. 此应用程序当前处于脱机状态
  20. 输入三角形的三条边,判断其为什么类型(直角三角形、等边三角形、等腰三角形、普通三角形)的三角形。

热门文章

  1. 基于mongodb的数据备份与恢复
  2. python房屋租赁系统的设计与实现_房屋租赁系统设计与开发
  3. php+备份手机通讯录,科学网—5款手机通讯录同步工具 - 赵晓锋的博文
  4. python笔记手写照片_Python处理手写笔记
  5. 关于血管、毛细血管、静脉动脉 |2021/1/25
  6. 支付江湖风云再起,刷脸支付或将重构商业形态!
  7. 蹒跚学步之调用安卓摄像头并发送数据
  8. 华南师范大学王璋组博士后招聘 - 呼吸道微生物组方向
  9. 【程序人生】程序员的浪漫,三步表白女神,成功率99%(程序员如何表白、求婚)
  10. 启动报错,找不到tools.jar,C:\Program Files (x86)\Common Files\Oracle\Java\javapath问题,java环境变量不生效