关键漏洞信息 漏洞描述 类型: Unrestricted Upload 文件: register.php 版本: V1.0 影响的产品 产品名称: Exam Form Submission Project 受影响版本: V1.0 下载链接: code-projects/exam-form-submission-project-php-mysql-source-code 技术细节 根因 1. 不充分的上传验证: - 系统未对上传到 目录的图像进行适当的验证。 - 未检查文件扩展名和内容类型。 - 未限制文件大小。 - 未检测恶意代码。 2. 利用上传路径: - 攻击者可以利用 目录上传恶意文件,如包含权限提升命令的PHP脚本。 攻击向量 1. 上传恶意WebShell: - 使用POST请求上传恶意文件。 - 成功上传后,攻击者可以通过访问该文件执行任意命令。 - 删除远程命令:通过控制面板删除上传的文件。 POC (概念验证) 1. 上传恶意WebShell的POST请求示例 - 包含HTTP头和请求体,显示了如何上传恶意文件。 2. 建立反向连接的样本POST请求 - 显示了如何通过上传的恶意文件建立反向连接。 3. Antirshell客户端配置 - URL: - 密码: 影响 完全系统控制: 可以执行系统命令(如 )。 敏感数据访问: 访问数据库配置、会话ID和用户信息。 特权升级与本地移动: 提升权限并访问其他系统资源。 持久性恶意软件: 上传木马后门以长期控制系统。 缓解措施 立即修复 1. 禁用危险函数: - 在 中添加规则禁止使用 等危险函数。 2. 阻止危险请求方法: - 添加WAF规则拦截包含 , 或 参数的GET或POST请求。 长期解决方案 1. 增强文件上传验证: - 白名单验证允许的文件扩展名和内容类型。 - 内容类型检测:完全验证文件内容防止伪装文件。 - 随机重命名上传文件。 2. 定期扫描和清理: - 设置计划任务定期扫描 目录。 3. 监控异常行为: - 日志记录包含危险函数调用的日志。 - 定期检查日志寻找可疑活动。 ``` 这些信息提供了关于漏洞的具体细节,包括其原因、攻击方式、影响以及如何缓解和解决该问题的方法。