漏洞总结:VULN-002-sqli-second-order-igst-invoice.md 漏洞概述 漏洞类型:二阶 SQL 注入 (Second-Order SQL Injection) 严重程度:CRITICAL (高危) 受影响版本:Invoicing System In PHP 1.0 漏洞描述: 虽然主入口点 使用了 进行检查,但应用程序在生成发票时,会从数据库( 、 、 表)中检索之前通过其他漏洞表单(如 或 )注入的数据。在 中,代码直接使用 拼接这些未经验证的数据构建 SQL 查询,导致二阶注入。 影响范围 漏洞端点: 具体影响: 机密性:未经授权访问所有数据库表,包括用户凭证。 完整性:潜在的数据库操纵或删除。 可用性:通过破坏性 SQL 命令导致拒绝服务 (DoS) 的风险。 修复方案 1. 使用预处理语句:将所有 替换为使用 和 的参数化查询。 2. 输入验证:在输入点(一阶)和查询使用前(二阶)对所有用户输入进行清理和验证。 3. 最小权限原则:确保数据库用户仅拥有必要的最小权限。 概念验证 (PoC) 存储型注入载荷 (通过 POST 请求提交): 利用逻辑 (二阶触发):** 当 检索并重新使用上述 字段时,执行以下 SQL 语句,导致凭证泄露: