2025-02-11 15:17:47 +08:00
2025-02-11 15:17:47 +08:00
2025-02-11 15:17:47 +08:00
2025-02-06 21:10:34 +08:00
2025-02-11 15:17:47 +08:00
2025-02-06 21:10:34 +08:00
2025-02-11 15:17:47 +08:00
2025-02-11 15:17:47 +08:00
2025-02-06 21:10:34 +08:00
2025-02-06 21:10:34 +08:00
2025-02-11 15:17:47 +08:00
2025-02-11 15:17:47 +08:00

Mirror Flowers (镜花)

image-20250205181045094

MirrorFlower(镜花)是一款基于 AI 的代码安全审计工具支持多种编程语言的代码分析可以帮助开发者快速发现代码中的潜在安全漏洞。支持DeepSeek-R1ChatGPT-4o等多种大模型。

更新记录

2024-02-11

  • 完善了Python代码分析功能
    • 添加了完整的依赖分析,支持追踪导入关系和别名
    • 增强了函数调用分析,支持类方法和实例方法的调用追踪
    • 添加了变量使用分析,支持追踪全局变量和实例变量
    • 改进了类继承分析,支持多级继承路径分析
  • 优化了分析器架构:
    • 使用访问者模式重构了代码分析逻辑
    • 添加了类型提示和详细文档
    • 改进了错误处理机制

支持的API接口

FREEGPTAPIhttps://github.com/popjane/free_chatgpt_api

SiliconFlow(硅基流动)https://cloud.siliconflow.cn/i/JzMCyiJ3

如需要使用GPT大模型则使用FREEGPTAPI使用DeepSeek-R1大模型则使用SiliconFlow API。

SiliconFlow(硅基流动)注册可免费领取14元使用额度可通过SMS接码平台注册账号理论可无限免费使用API KEY。

核心功能

多语言支持

  • PHP
  • Java
  • Python
  • JavaScript

依赖分析

  • Maven (pom.xml)
  • NPM (package.json)
  • Python (requirements.txt)
  • Composer (composer.json)

框架安全分析

  • Spring Framework

    • Spring Security配置审计
    • 权限控制检查
    • CSRF/XSS防护
    • 跨域配置检查
  • Django

    • 中间件配置检查
    • CSRF Token验证
    • XSS防护配置
    • 调试模式检查
  • Express.js

    • 安全中间件配置
    • 认证机制检查
    • CORS配置审计
    • 输入验证检查
  • Hibernate

    • HQL注入检测
    • 缓存配置审计
    • 实体验证检查
    • 会话管理检查

安全检查特性

PHP安全检查

  • 文件包含漏洞include/require
  • SQL注入mysql_*函数)
  • 命令注入system, exec, shell_exec
  • 文件上传漏洞
  • 反序列化漏洞unserialize
  • XSSecho, print
  • SSRF漏洞
  • 目录遍历
  • 会话管理问题
  • 配置文件泄露

Java安全检查

  • SQL注入PreparedStatement相关
  • 命令注入Runtime.exec, ProcessBuilder
  • XXE漏洞XML解析器配置
  • 反序列化漏洞readObject
  • 不安全的文件操作
  • CSRF/XSS防护
  • 权限控制缺陷
  • 线程安全问题
  • 密码学实现缺陷
  • 日志信息泄露

Python安全检查

  • 不安全的反序列化pickle.loads, yaml.load
  • 命令注入os.system, eval, exec, subprocess
  • 不安全的模块导入(import
  • SQL注入字符串格式化, execute
  • 路径遍历open, os.path
  • 模板注入render_template_string
  • 密码学实现问题weak random
  • 环境变量泄露
  • 调试配置泄露
  • 不安全的依赖加载

JavaScript安全检查

  • XSSDOM型和反射型
  • 原型污染
  • 不安全的第三方依赖
  • 客户端存储安全
  • 不安全的随机数生成
  • CSRF防护缺失
  • 跨域配置问题
  • 敏感信息泄露
  • 不安全的正则表达式
  • 事件监听器泄露

分析器组件

  • TaintAnalyzer: 污点分析和数据流追踪
  • SecurityAnalyzer: 通用安全问题检测
  • DependencyAnalyzer: 依赖组件安全分析
  • FrameworkAnalyzer: 框架特定安全检查
  • ConfigAnalyzer: 配置文件安全分析
  • ContextAnalyzer: 上下文感知分析

安装和配置

环境要求

  • Python 3.8+
  • FastAPI
  • Node.js (前端开发)

快速开始

  1. 克隆项目
git clone https://github.com/Ky0toFu/Mirror-Flowers.git
cd Mirror-Flowers
  1. 安装依赖
pip install -r requirements.txt
  1. 配置环境变量
OPENAI_API_KEY=your_api_key_here
OPENAI_API_BASE=your_api_base_url
OPENAI_MODEL=your_preferred_model
  1. 启动服务
uvicorn backend.app:app --reload

注意事项

  1. 文件大小限制10MB
  2. 支持的文件类型:.php, .java, .py, .js
  3. API密钥安全请妥善保管API密钥
  4. 分析时间:大型项目可能需要较长时间
  5. 结果验证:建议结合人工审查
  6. API配置问题如果提示"API配置更新错误"或"不存在某个模型"请检查API Base URL格式尝试在URL后添加/v1或删除/v1例如https://api.example.comhttps://api.example.com/v1

许可证

MIT License

联系方式

如有问题或建议,请通过 Issue 与我联系。

Description
基于 AI 的代码安全审计工具,支持多种编程语言的代码分析,可以帮助开发者快速发现代码中的潜在安全漏洞。支持DeepSeek-R1,ChatGPT-4o等多种大模型。
Readme 2.6 MiB
Languages
Python 74.1%
HTML 19.2%
TypeScript 3.7%
Vue 1.6%
CSS 1%
Other 0.3%