MikroTik RouterOS v7.0以下版本UserManager反射型XSS漏洞分析

本文详细分析了MikroTik RouterOS v7.0以下版本UserManagerWeb界面中存在的反射型跨站脚本漏洞,包括漏洞原理、利用方式、影响范围和缓解措施,涉及JavaScript注入和输入过滤绕过技术。

MikroTik RouterOS < v7.0 - UserManager中的反射型XSS漏洞

风险等级: 中等
本地利用:
远程利用:
CVE: 暂无
CWE: 暂无
作者: Ahmed Mutaher (YE)
日期: 2025年7月7日

漏洞概述

MikroTik RouterOS v7.0以下版本中存在一个反射型跨站脚本(XSS)漏洞,该漏洞位于UserManager Web界面中。未经身份验证的攻击者可以利用此漏洞,通过特制URL注入JavaScript代码,而无需有效的登录会话。

技术细节

在分析/userman页面的源代码时发现,应用程序试图通过丢弃双斜杠(//)后的任何内容来缓解输入风险。然而,通过重复payload并精心构造,可以绕过此行为,在浏览器上下文中执行JavaScript。

受影响版本

  • 所有v7.0之前的版本
  • 已测试设备:
    • RB1100AHx4 (v6.48.2)
    • RB750GL (v6.39)
    • CCR1009-8G-1S-1S+ (v6.41)
    • x86 (v5.20, v6.49.18)

漏洞端点

1
http://<路由器IP>/userman/',true);alert('XSS');//',true);alert('XSS');//

概念验证(PoC)

Payload:

1
http://192.168.88.1/userman/',true);alert('XSS');//',true);alert('XSS');//

复现步骤

  1. 在不登录的情况下,在浏览器中打开目标RouterOS UserManager URL
  2. 检查页面源代码,识别反射输入行为
  3. 注意系统会剥离//之后的内容
  4. 构造重复恶意代码的payload以绕过过滤
  5. 当payload执行时,会触发alert弹框,证明XSS漏洞存在

影响范围

  • 无需认证即可执行JavaScript
  • 可能进行钓鱼或重定向攻击
  • 可作为社会工程攻击链的一部分,欺骗管理员或用户

缓解措施

  • 使用上下文感知编码(如htmlspecialchars())对所有用户输入进行清理
  • 实施内容安全策略(CSP)
  • 避免在HTML或JavaScript上下文中反映未清理的GET参数
comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计