Sunlinks OA 系统 UserList.aspx 未授权访问漏洞复现

Wayyt  8小时前

Sunlinks OA 系统 UserList.aspx 未授权访问漏洞复现

0x00 漏洞概述

Sunlinks OA 是一套基于 .NET 平台的办公自动化系统,站点页面中带有「Sunlinks OA .NET」特征标识。作为典型的 OA 类应用,系统中沉淀了大量员工人事数据。依据技术分析资料,该系统在 /Common/HRManage/UserList.aspx 文件中存在越权访问漏洞,造成信息泄露:该页面缺少服务端认证校验,攻击者无需任何账号凭证,通过构造特殊 URL 地址即可直接读取系统敏感信息,获取用户的姓名、生日、办公电话、IP 地址与照片等详细资料。

该漏洞 CVSS 评分为 8.0,风险等级为高风险;技术分析资料中的披露时间字段为 2015-11-01。公开渠道未见 CVE/CNVD/CNNVD 编号,公开漏洞库收录信息显示相关条目于 2016 年 6 月提交。

对 OA 系统而言,人事数据是员工隐私的集中载体,此类信息一旦批量外泄,不仅涉及个人隐私合规问题,还可能被用于钓鱼、社会工程等后续攻击的素材准备。

0x01 影响范围

综合技术分析资料与公开漏洞库收录信息,影响范围界定如下:

  • 受影响产品:Sunlinks OA 系统(.NET 架构),站点页面特征为包含「Sunlinks OA .NET」标识;
  • 涉及路径:/Common/HRManage/UserList.aspx(人事管理模块人员列表页);
  • 受影响版本:技术分析资料与公开渠道均未给出明确的受影响版本区间,此处不做臆断,建议部署方对现网站点逐一验证;
  • 资产识别:可依据「Sunlinks OA .NET」页面特征在授权范围内确认目标资产;
  • 暴露条件:目标站点在网络层可达即满足验证前提,且利用全程无需登录、不持有任何 Cookie 或会话凭证。

公网暴露的 Sunlinks OA 部署均应视为存在人事数据批量外泄风险。

0x02 漏洞分析

UserList.aspx 隶属于系统的 Common/HRManage 目录,即人事管理模块的人员列表页面。按照设计,此类页面应当置于统一的登录认证与授权校验之后,未登录用户访问任何人事管理页面都应被重定向到登录入口。

问题出在页面自身的服务端认证缺失。从技术分析资料呈现的行为来看,未登录状态下直接请求该页面,服务端没有执行会话校验,而是直接执行页面逻辑、查询人员数据并返回完整列表。查询参数 Retire=0&Code= 表明页面支持按在职状态与人员编码进行筛选,意味着访问者不仅可以获取全量人员列表,还可以通过调整参数定向检索特定人员。

由于泄露对象是员工敏感个人信息,其危害具有累积性:姓名、生日、办公电话组合起来足以构建人员画像,IP 与照片则进一步丰富社会工程素材。关于该页面是否还附带人员信息修改能力,现有技术分析资料未给出明确记录,此处不做扩展推断;但仅就信息泄露本身而言,风险已足够严重。

0x03 利用链与请求包

利用链为单请求验证:未认证状态直达人员列表页面,依据响应特征判定漏洞成立。以下请求包为依据技术分析资料还原的验证请求,目标地址以 192.0.2.10 为示意。

第一步,确认目标资产。在授权范围内依据「Sunlinks OA .NET」页面特征定位 Sunlinks OA 部署。

第二步,以未认证状态直接请求人员列表页面:

GET /Common/HRManage/UserList.aspx?Retire=0&Code= HTTP/1.1
Host: 192.0.2.10

该请求不携带任何 Cookie 或认证头,也没有前置登录步骤。其中 Retire=0 用于筛选在职人员(取值 0 表示查询在职人员),Code 为人员编码筛选参数,置空表示不限人员编码。

第三步,判定响应。漏洞成立的判定条件为:HTTP 响应状态码为 200,且响应体中同时包含「人事管理」与「人员列表」两处特征内容。二者同时出现,说明服务端在未认证状态下直接渲染并返回了完整的人事管理人员列表页面,未授权访问成立;此时页面中即为可读取的用户详细信息,包括姓名、生日、办公电话、IP 与照片等字段。

若响应为跳转到登录页或返回错误页,则说明该站点已对该路径实施访问控制,验证应就此停止。不同部署的响应细节可能存在差异,实际测试应以授权环境为准,验证过程仅以读取页面响应特征为限,不对系统内任何数据进行修改。

0x04 检测与修复建议

检测方面:

1. 梳理资产,确认单位内外网及第三方托管环境是否部署 Sunlinks OA,并核实 /Common/HRManage/ 路径是否对非信任网络暴露;

2. 审查站点访问日志,检索对 UserList.aspx 的访问记录,重点排查不含登录会话的直接访问;

3. 在授权范围内使用 0x03 的请求验证,若未登录即返回含「人事管理」与「人员列表」的页面,应立即处置;

4. 评估信息泄露影响面:梳理该页面可读取的人员数据范围,判断是否已发生批量外泄。

修复方面:

1. 在服务端为 UserList.aspx 及人事管理模块全部页面补齐统一的登录认证与授权校验,禁止未认证请求触及任何人事数据;

2. 核对厂商公告中的受影响范围,升级至官方修复版本或更高版本,升级前备份站点程序与数据库;

3. 暂时无法升级的,通过防火墙等安全设备设置访问策略与白名单,将系统仅对可信网段开放;如非必要,禁止系统直接暴露于公网;

4. 加强访问日志与操作审计,发现未授权访问后及时失效相关会话,并复核权限配置。

0x05 参考资料

1. 知道创宇 Seebug 漏洞平台:Sunlinks OA系统 /Common/HRManage/UserList.aspx?Retire=0&Code= 越权访问漏洞(SSV-91882):https://qkl.seebug.org/vuldb/ssvid-91882

2. 技术分析资料(Sunlinks OA 系统 UserList.aspx 未授权访问,含检测请求与响应判定条件)

最新评论

昵称
邮箱
提交评论