SecureLens - 一个自托管的AppSec代理和CLI扫描器

Reddit r/AI_Agents 工具

摘要

SecureLens 是一个开源的、自托管的安全审计工具,它利用基于LLM的异步管道来对代码库进行分类并对网络基础设施进行探测,并提供交互式REPL用于后续提问和补丁生成。

大家好,我想分享 SecureLens——一个我一直在构建的开源工具,它结合了异步 FastAPI 后端和交互式 Click CLI 客户端,用于审计代码库和探测网络基础设施。 我的项目做什么 SecureLens 作为一个自主的本地安全审计器。它不是对每个文件运行盲目的文本过滤器,而是使用一个三阶段的异步管道: * **分类:** 它读取项目的文件树,并通过 LiteLLM 使用 LLM 首先隔离高风险目标——例如认证路由、数据库查询和配置文件。它支持 Gemini、GPT-4、Claude 或本地 Ollama 实例。 * **并发 SAST:** 它通过 asyncio.gather 启动并发任务,并通过信号量限制为 5 以避免 API 速率限制,对代码进行针对 OWASP Top 10 的审计,返回严格的 Pydantic 模式。 * **交互式 REPL:** 扫描完成后,它会将您放入基于终端的聊天会话,您可以提出后续问题或让它即时起草代码补丁。 * **基础设施探测与同步:** 它扫描实时 URL,涵盖 30 多个指标,如 SSL、传输策略和安全 Cookie,生成 AI 威胁描述,在本地编译样式化的 PDF 报告,并将所有内容同步回中央自托管的 PostgreSQL 控制台。 目标受众 SecureLens 面向个人开发者、小团队和 DevOps 工程师,他们希望早期在开发中或本地机器上捕获安全漏洞,而无需将敏感代码上传到第三方多租户 SaaS 云。它作为一个完全自托管的开发者工具,功能完整,目前正在从活跃的 MVP 过渡到生产就绪的系统。 对比 传统的 linter 和 SAST 工具会对整个代码库匹配严格的 regex 模式。这让开发者淹没在海量的日志和误报中。相反,深度商业扫描器价格昂贵且需要云访问。SecureLens 弥合了这一差距:它在运行分析之前应用 LLM 推理来分类上下文,从而显著减少误报,同时保持整个栈开源、私有,并通过回退签名或本地 Ollama 节点完全离线可执行。 核心技术栈 Python 3.12, FastAPI, SQLAlchemy, SQLite, PostgreSQL, Celery, Click, Rich, FPDF2。 您可以在 GitHub 上找到该项目,用户名 Rarebuffalo,仓库名 securelens-backend。 路线图与寻求贡献者 我已经完成了核心数据库同步和 CLI 导出器的最终化,正在寻找帮助来完成接下来的路线图项目。我在 GitHub 上开了几个标记为适合初学者的 issue: * **CI/CD 集成:** 将 CLI 封装到 GitHub Action 和 GitLab Runner 模板中,当发现高严重性问题时构建失败。 * **依赖审计器:** 实现一个本地审计命令,用于解析包需求并查询 OSV 数据库 API。 * **自动化补丁:** 将 AI 建议的代码修复连接到自动化的 git 提交和分支生成。 如果您对 Python、系统开发或安全感兴趣,请查看该项目。如果您对异步管道实现或架构选择有任何疑问,请告诉我!
查看原文

相似文章

Unclecheng-li/VulnClaw

GitHub Trending (daily)

VulnClaw 是一个基于 LLM Agent 和 MCP 工具链的 AI 驱动渗透测试 CLI 工具,支持自然语言输入自动完成信息收集、漏洞发现、利用和报告生成全流程。

AgentLens: 揭示 SWE-Agent 评估中的 Lucky Pass 问题

Hugging Face Daily Papers

AgentLens 是一个用于软件工程智能体轨迹过程级评估的框架,揭示了超过 10% 的通过轨迹表现出 'Lucky Pass' 行为。它引入了 AgentLens-Bench,一个带有质量评分标注的数据集,并表明按质量评分排序可以显著改变模型排名。