CVE-2025-50383
描述
低权限认证用户可通过向易受攻击的端点发送特制的 HTTP POST 请求,并附带恶意 order_by 参数(例如 order_by=IF(1=1,SLEEP(5),1))来利用此漏洞。这会触发基于时间的盲 SQL 注入,导致在底层 MySQL 数据库上执行未经授权的 SQL 操作,最终实现完整的 SQL 注入利用。
受影响端点
低权限认证用户(角色:客户和提供者)可利用:
- /index.php/customers/search
- /index.php/Unavailabilities/search
- /index.php/Appointments/search
仅管理员可利用:
- /index.php/providers/search
- /index.php/secretaries/search
- /index.php/admins/search
- /index.php/service_categories/search
- /index.php/services/search
- /index.php/Blocked_periods/search
- /index.php/Webhooks/search
复现步骤
- 拦截一个对任意易受攻击端点的有效认证请求。
- 在请求体中添加隐藏的
order_by 参数。
- 注入恶意载荷,例如:
order_by=IF(1=1,SLEEP(5),1)。
- 发送修改后的请求。
- 应用程序响应出现延迟,确认存在基于时间的盲 SQL 注入。
修复
https://github.com/alextselegidis/easyappointments/releases/tag/1.5.2