Bypass AVs to Add Users
字数 1092 2025-08-27 12:33:48

Bypass AVs to Add Users 技术文档

0x01 背景与思路

这是一个尝试绕过杀毒软件(AVs)添加系统用户的技术方案。最初目标是卸载所有杀毒软件,但遇到了360安全卫士的防护机制:

  1. 360卸载程序路径:C:/Program Files/360/360safe/uninst.exe
  2. 卸载程序有两个ShadowEdge保护机制
  3. 直接运行Python脚本模拟点击会被拒绝

绕过方法:

  • 新建一个bat脚本,使用start命令启动即可绕过防护
  • 示例bat命令:cd "C:/Program Files/360/360safe/" & start uninst.exe

0x02 环境配置

由于目标机器可能没有Python环境,需要手动配置:

  1. 下载Python embeddable版本:

    • 从Python官网下载后上传到HTTP服务器
    • 或使用提供的下载脚本:https://github.com/TheKingOfDuck/BypassAVAddUsers/blob/master/download.php
  2. 安装必要模块:

    # 先修改python37._pth文件,去掉#import site前的注释
    start python.exe ../get-pip.py
    start python.exe -m pip install pywin32
    

0x03 添加用户技术

方法选择

  1. 控制面板方法

    • 命令:control userpasswords
    • 缺点:步骤繁琐,进程为explorer,窗口控制困难
  2. lusrmgr.msc方法

    • 使用本地用户和组管理工具
    • 优点:窗口位置固定,易于自动化

坐标计算

关键代码:

# 获取MMCMainFrame窗口
MMCMainFrame = win32gui.FindWindow("MMCMainFrame", None)

# 获取窗口坐标
a, b, c, d = win32gui.GetWindowRect(MMCMainFrame)

# "用户"按钮固定位置计算
userPosH = 237 -117  # 垂直距离
userPosL = 120       # 水平距离
click_position = (a + 230, b + 120)

完整流程

  1. 打开lusrmgr.msc
  2. 计算"用户"按钮位置
  3. 模拟点击操作
  4. 创建新用户并设置密码
  5. 赋予管理员权限

完整代码:https://github.com/TheKingOfDuck/BypassAVAddUsers/blob/master/adduser.py

0x04 测试结果

已验证绕过以下安全产品:

  • 360全家桶
  • 安全狗
  • D盾

测试视频:http://v.youku.com/v_show/id_XNDA1NzEyNTc1Ng==.html

0x05 后续利用

如果服务器未开启3389端口:

  1. 上传单文件版TeamViewer

  2. 创建计划任务自动运行:

    schtasks /create /sc minute /mo 1 /tn "cat" /tr "TeamViewer路径" /ru 用户名 /rp 密码
    
  3. 使用PIL截图获取连接信息:

    from PIL import ImageGrab
    im = ImageGrab.grab()
    im.save('screenshot.png')
    

0x06 技术总结

  1. 全程使用合法系统工具和命令
  2. 不依赖任何0day漏洞
  3. 通过GUI自动化实现用户添加
  4. 结合计划任务和远程控制工具实现持久化访问

附录:XSS测试向量

文档中包含大量XSS测试向量,可用于安全测试,包括:

  1. 基本XSS向量
  2. 各种浏览器特定向量
  3. 编码绕过技术
  4. DOM型XSS
  5. SVG/HTML5新型向量

注意:这些XSS向量仅用于合法安全测试,请遵守相关法律法规。

Bypass AVs to Add Users 技术文档 0x01 背景与思路 这是一个尝试绕过杀毒软件(AVs)添加系统用户的技术方案。最初目标是卸载所有杀毒软件,但遇到了360安全卫士的防护机制: 360卸载程序路径: C:/Program Files/360/360safe/uninst.exe 卸载程序有两个ShadowEdge保护机制 直接运行Python脚本模拟点击会被拒绝 绕过方法: 新建一个bat脚本,使用start命令启动即可绕过防护 示例bat命令: cd "C:/Program Files/360/360safe/" & start uninst.exe 0x02 环境配置 由于目标机器可能没有Python环境,需要手动配置: 下载Python embeddable版本: 从Python官网下载后上传到HTTP服务器 或使用提供的下载脚本:https://github.com/TheKingOfDuck/BypassAVAddUsers/blob/master/download.php 安装必要模块: 0x03 添加用户技术 方法选择 控制面板方法 : 命令: control userpasswords 缺点:步骤繁琐,进程为explorer,窗口控制困难 lusrmgr.msc方法 : 使用本地用户和组管理工具 优点:窗口位置固定,易于自动化 坐标计算 关键代码: 完整流程 打开lusrmgr.msc 计算"用户"按钮位置 模拟点击操作 创建新用户并设置密码 赋予管理员权限 完整代码:https://github.com/TheKingOfDuck/BypassAVAddUsers/blob/master/adduser.py 0x04 测试结果 已验证绕过以下安全产品: 360全家桶 安全狗 D盾 测试视频:http://v.youku.com/v_ show/id_ XNDA1NzEyNTc1Ng==.html 0x05 后续利用 如果服务器未开启3389端口: 上传单文件版TeamViewer 创建计划任务自动运行: 使用PIL截图获取连接信息: 0x06 技术总结 全程使用合法系统工具和命令 不依赖任何0day漏洞 通过GUI自动化实现用户添加 结合计划任务和远程控制工具实现持久化访问 附录:XSS测试向量 文档中包含大量XSS测试向量,可用于安全测试,包括: 基本XSS向量 各种浏览器特定向量 编码绕过技术 DOM型XSS SVG/HTML5新型向量 注意:这些XSS向量仅用于合法安全测试,请遵守相关法律法规。