关键信息总结 漏洞标题 SQL注入漏洞存在于[Online-Student-Clearance-System] <= v1.0 产品信息 供应商主页: https://www.sourcecodester.com/ 软件链接: https://www.sourcecodester.com/php/17892/online-clearance-system.html 受影响版本: <= v1.0 漏洞作者: Anuj Sharma 漏洞详情 类型: 基于时间的SQL注入 受影响URL: http://localhost/student_clearance_system/Admin/login.php 易受攻击参数: username 易受攻击文件: Login.php (路径: student_clearance_system/Admin/login.php) 漏洞类型与严重性 类型: SQL注入漏洞 (CWE-89: SQL Injection) 严重性: CRITICAL (CVSS: 9.1) 根因 代码直接将用户输入拼接到SQL查询字符串中,没有任何参数化或输入验证,允许攻击者注入恶意SQL代码。第18行是导致漏洞的原因。 影响 未经授权访问数据库信息 可能暴露敏感信息(如用户密码) 可能导致数据库损坏或数据操纵 描述 1. 漏洞细节: 用户名参数直接拼接到SQL语句中,没有输入验证或转义机制。 2. 攻击向量: 攻击者可以使用特殊字符操纵SQL查询结构;通过基于时间的延迟提取额外信息;通过基于时间的注入获取数据库信息。 3. 攻击载荷示例: - 代码扫描 此漏洞由https://github.com/cybersharmaj发现,代码扫描显示login.php文件中没有输入验证或转义。 概念证明 提取了数据库和表的信息,包括管理员数据。 建议修复措施 实现预编译语句 输入验证 安全建议: - 实施最小权限原则 - 加密敏感数据存储 - 实施错误处理 - 进行定期安全审计 - 使用ORM框架进行数据库操作 额外信息 参考OWASP SQL注入预防指南 考虑使用现代框架如MyBatis或Hibernate 实施日志记录和监控机制 缓解时间线 立即: 实现预编译语句 短期: 添加输入验证 长期: 考虑迁移到ORM框架 此漏洞需要立即关注,因为它对系统数据安全构成严重威胁,可能导致重大数据泄露和系统妥协。