mnatakanijiiteajesasa/Symposium
GitHub: mnatakanijiiteajesasa/Symposium
一个已削弱功能的 VBScript 恶意软件分析教学项目,用于安全研究者和学习者理解 UAC 绕过及恶意 payload 执行技术。
Stars: 0 | Forks: 0
# 已削弱功能的 Visual Basic 恶意软件分析实验环境
## 概述
本仓库包含一个已削弱功能(不可运行)的 Visual Basic Script (VBS) 恶意软件样本,以及用于教育和研究目的的原始恶意文件。该恶意软件旨在绕过用户账户控制 (UAC) 并执行恶意 payload。
## 仓库结构
```
malware-analysis/
├── malware/
│ ├── original/
│ │ ├── Run.vbs # Original malicious VBScript
│ │ └── WindowsService.exe # Original executable payload
│ └── defanged/
│ ├── Run.vbs # Defanged VBScript (comments explain functionality)
│ └── WindowsService.exe.txt # Executable renamed to prevent execution
└── README.md # This file
```
## 恶意软件分析
### 原始恶意软件行为
原始恶意软件由两个组件组成:
1. **Run.vbs** - 一个 Visual Basic Script,它会:
- 检查是否以管理员权限运行
- 如果未提权,则使用 `ShellExecute` 和 "runas" 动词通过 UAC 绕过重新启动自身
- 在 `%LOCALAPPDATA%\Updates` 中定位名为 "Windows" 的文件
- 将其复制到同一目录下的 "Windows.bat" 中
- 隐藏窗口执行该批处理文件
- 执行后删除该批处理文件
2. **WindowsService.exe** - 将被执行的 payload:
- 可能包含恶意功能,例如:
- 下载额外的恶意软件
- 建立持久化机制
- 窃取信息
- 建立后门访问权限
### 已削弱功能的版本
`malware/defanged/` 目录中的已削弱版本已通过以下方式被中和:
1. **注释掉所有可执行代码** - 在 `Run.vbs` 中,所有恶意功能现已使用 `'` 字符进行注释
2. **添加解释性注释**,描述每段代码的设计意图
3. **将可执行文件重命名**为 `.txt` 扩展名,以防止意外执行
4. **提供教育性标注**,解释恶意软件的预期行为
### 技术分析
#### UAC 绕过技术
该恶意软件使用了一种常见的 UAC 绕过技术:
- 使用 `WScript.Arguments.length` 检查是否以管理员权限运行
- 如果未提权,则使用 `ShellExecute` 和 "runas" 动词重新启动自身
- 这会触发一个许多用户不加仔细审查就会接受的 UAC 提示
#### 文件操作
- 使用 `WScript.Shell` 展开环境变量 (`%LOCALAPPDATA%`)
- 利用 `FileSystemObject` 进行文件操作:
- 检查文件是否存在
- 复制文件
- 删除文件
- 使用窗口样式 `0`(隐藏)通过 `objShell.Run` 隐蔽执行文件
#### 持久化机制
虽然在这个样本中并不完全可见,但该恶意软件可能会:
- 在启动文件夹中释放额外的文件
- 修改注册表运行键
- 创建计划任务
- 安装服务
## 安全信息
⚠️ **警告**:虽然 `defanged/` 目录中的文件已被中和,但 `original/` 目录中的文件包含原始恶意软件,绝不应对其进行执行。
### 安全处理规范:
- `defanged/` 中的所有文件都可以安全检查,因为它们仅包含注释和被中和的代码
- `original/` 中的文件只能在隔离的安全环境中进行检查
- 切勿执行本仓库中的任何 `.exe`、`.bat`、`.vbs` 或 `.js` 文件
- 进行任何恶意软件分析时,请使用虚拟机或沙箱
- 考虑仅使用自动化工具进行静态分析
## 分析建议
### 静态分析
1. 检查已注释的 VBScript 以了解攻击流程
2. 研究 UAC 绕过技术(特别是 "runas" 动词方法)
3. 学习用于文件操作的 FileSystemObject 方法
4. 研究常见的恶意软件持久化机制
### 动态分析(仅在隔离环境中进行)
1. 监控 `%LOCALAPPDATA%\Updates` 中的文件系统更改
2. 留意 UAC 提示绕过尝试
3. 跟踪进程创建和注入尝试
4. 监控网络通信,查看是否有 payload 尝试进行回连
## 入侵指标 (IOC)
根据恶意软件的行为,请注意查找:
- 在 `%LOCALAPPDATA%\Updates\` 中创建的名为 "Windows" 或 "Windows.bat" 的文件
- 针对 `wscript.exe` 或 `cscript.exe` 的意外 UAC 提示
- 命令行窗口短暂出现并迅速消失
- 从 AppData 位置运行的可执行文件
- 与可疑域名/IP地址的连接
## 仅限教育用途
本仓库旨在用于:
- 网络安全教育和培训
- 恶意软件分析实践
- 了解恶意软件技术
- 开发检测特征码
- 应急响应培训
**严禁用于恶意用途** - 提供原始恶意软件样本仅为防御性安全研究服务。
## 参考资料
如需进一步研究类似的恶意软件技术:
- MITRE ATT&CK 技术 T1548.002:绕过用户账户控制
- MITRE ATT&CK 技术 T1059.005:Visual Basic
- MITRE ATT&CK 技术 T1204.002:恶意文件
- 关于 UAC 机制的 Microsoft 文档
标签:DAST, DNS 反向解析, VBScript, 云资产清单, 恶意软件分析, 逆向工程