CVE-2025-11584CVE-2025-11584是code-projects公司开发的Online Job Search Engine(在线求职搜索引擎)1.0版本中存在的一个高危SQL注入漏洞。该漏洞于2025年10月10日由VulDB社区的[email protected]发现并公开披露。该漏洞存在于Web应用程序的/searchjob.php文件中,具体位于对用户输入参数txtspecialization的处理逻辑中。由于该参数在拼接到SQL查询语句之前未进行充分的输入验证和参数化处理,攻击者可以通过精心构造恶意SQL语句作为参数值,实现对后端数据库的非法操作。
该漏洞的CVSS 3.1评分为7.3分,属于高危级别。其攻击向量为网络(AV:N),攻击复杂度低(AC:L),无需任何权限(PR:N)和用户交互(UI:N),表明该漏洞极易被远程攻击者利用。虽然该漏洞对机密性、完整性和可用性的影响均为低级别(C:L/I:L/A:L),但SQL注入漏洞通常可作为进一步渗透攻击的跳板,例如提取数据库中的敏感信息、绕过认证、写入Webshell或执行系统命令等,因此实际危害可能远超CVSS评分所反映的级别。
该漏洞的利用代码已被公开发布在GitHub等平台上,攻击者可以轻易获取并利用。Online Job Search Engine作为一款面向求职者的Web应用,通常存储大量用户个人信息、简历数据和招聘方资料,一旦数据库被攻破,将造成严重的用户隐私泄露和数据安全问题。
该SQL注入漏洞的根本原因在于/searchjob.php文件中对txtspecialization参数的处理逻辑缺乏安全防护。当用户在搜索框中输入职位专业类别(specialization)进行职位搜索时,前端将该值通过GET或POST请求传递到服务器端,服务器端在未对输入进行充分过滤、转义或参数化处理的情况下,直接将其拼接到SQL查询语句中执行。
具体技术原理如下:
1. **输入点识别**:漏洞入口为/searchjob.php文件中的txtspecialization参数。该参数接收用户提交的搜索关键词,用于在数据库中匹配对应的职位专业类别。
2. **注入原理**:原始SQL查询语句可能形如:`SELECT * FROM jobs WHERE specialization LIKE '%{txtspecialization}%'`。由于未使用预处理语句(Prepared Statements)或参数化查询,攻击者可以通过闭合单引号并附加恶意SQL片段来改变查询逻辑,例如输入`' UNION SELECT username,password FROM users-- -`,从而执行任意SQL语句。
3. **利用方式**:
- **联合查询注入(UNION-based)**:通过UNION SELECT语句获取数据库中的其他表数据
- **布尔盲注(Boolean-based Blind)**:通过观察页面返回结果的差异逐字符提取数据
- **时间盲注(Time-based Blind)**:通过SLEEP()等函数造成的响应延迟判断条件真假
- **报错注入(Error-based)**:利用数据库错误信息直接获取数据
4. **攻击影响**:成功利用该漏洞后,攻击者可以读取数据库中所有数据(包括用户凭证、个人信息等),修改或删除数据库内容,甚至在特定条件下通过MySQL的INTO OUTFILE或LOAD_FILE()函数读写服务器文件系统,进一步实现远程代码执行。