慣性聚合 高效追讀感興趣之博客、新聞、科技資訊
閱原文 以慣性聚合開啟

推薦訂閱源

博客园 - 司徒正美
V
V2EX
T
Tailwind CSS Blog
有赞技术团队
有赞技术团队
aimingoo的专栏
aimingoo的专栏
Apple Machine Learning Research
Apple Machine Learning Research
IT之家
IT之家
Blog — PlanetScale
Blog — PlanetScale
A
About on SuperTechFans
月光博客
月光博客
T
The Blog of Author Tim Ferriss
宝玉的分享
宝玉的分享
Martin Fowler
Martin Fowler
博客园 - 聂微东
The GitHub Blog
The GitHub Blog
V
Visual Studio Blog
WordPress大学
WordPress大学
酷 壳 – CoolShell
酷 壳 – CoolShell
Engineering at Meta
Engineering at Meta
GbyAI
GbyAI

DEV Community

Authentication Security Deep Dive: From Brute Force to Salted Hashing (With Java Examples) Why AI Systems Don’t Fail — They Drift Spilling beans for how i learn for exam😁"Reinforcement Learning Cheat Sheet" I Replaced Chrome with Safari for AI Browser Automation. Here's What Broke (and What Finally Worked) How Python Borrows Other People's Work The $40 Architecture: Processing 1 Billion API Requests with 99.99% Uptime Vibe Coding: A Workflow Guide (From Zero to SaaS) Most webhook security guides protect the wrong side. The scary part is delivery. Headless CMS for TanStack Start: Build a Blog with Cosmic EU Age Verification App "Hacked in 2 Minutes" — What Actually Happened Comfy Cloud’s delete function does not actually remove files Running AI Models on GPU Cloud Servers: A Beginner Guide Event-driven media intelligence with AWS Step Functions and Bedrock I scored 500 AI prompts across 8 quality dimensions — here's what broke How to Call Google Gemini API from Next.js (Free Tier, No Backend Needed) The Portal Protocol: Reclaiming Human Connection in the Age of AI How to Fix Your Team's Scattered Knowledge Problem With a Self-Hosted Forum Intro to tc Cloud Functors: A Graph-First Mental Model for the Modern Cloud Designing Multi-Tenant Backends With Both Ownership and Team Access I Built a Neumorphic CSS Library with 77+ Components — Here's What I Learned PostgreSQL Performance Optimization: Why Connection Pooling Is Critical at Scale Cómo construí un SaaS multi-rubro para gestionar expensas en Argentina con FastAPI + Vue 3 🚀 I Built an Ethical Hacking Scanner Tool – Open Source Project I Replaced /usage and /context in Claude Code With a Single Statusline A Pythonic Way to Handle Emails (IMAP/SMTP) with Auto-Discovery and AI-Ready Design I Collected 8.9 Million Polymarket Price Points — Here's What I Found About How Markets Really Move EcoTrack AI — Carbon Footprint Tracker & Dashboard Everyone's Using AI. No One Agrees How. 5 self-hosted ebook managers worth trying in 2026 Building Your First AI Agent with LangChain: From Chatbot to Autonomous Assistant Common SOC 2 Failures (Real World) Stop Vibe-Checking Your AI App: A Practical Guide to Evals How to Use SonarQube and SonarScanner Locally to Level Up Your Code Quality Your Next To-Do App Is Dead — I Replaced Mine with an OpenClaw AI Sign a Nostr event in 60 lines of Python using coincurve — no nostr-sdk, no nbxplorer, no rust toolchain ITGC Audit Explained Like You’re in Big 4 Patch Tuesday abril 2026: Microsoft parcha 163 vulnerabilidades y un zero-day en SharePoint Stop scraping everything: a better way to track competitor price changes Listing on MCPize + the Official MCP Registry while routing payments OUTSIDE the marketplace — how I kept 100% of my x402 revenue Building an AI-Powered Risk Intelligence System Using Serverless Architecture Why We Ripped Function Overloading Out of Our AI Toolchain Testing AI-Generated Code: How to Actually Know If It Works SaaS Churn Is Killing Your Business. Here Is What to Do About It (Without a Support Team) The Speed of AI Is No Longer Linear - And Self-Improving Models Are Why How to Implement RBAC for MCP Tools: A Practical Guide for Engineering Teams From Standard Quote to Persuasive Proposal: AI Automation for Arborists I built a CLI that scaffolds complete multi-tenant SaaS apps Axios CVE-2025–62718: The Silent SSRF Bug That Could Be Hiding in Your Node.js App Right Now The dashboard that ended our friendship Data Pipelines Explained Simply (and How to Build Them with Python)
人工智能编程之代理,其真实之攻击面,乃在配置之文件也。
Justin Kwon · 2026-05-24 · via DEV Community

Justin Kwon

若谓人工智能编程之代理(Claude Code、Cursor、Gemini CLI)之安全风险在于"模型失控而执行危殆之命",近数月之重案则道非然。其事无涉模型者。发轫之处,恒在配置之文。

此篇详述TrustFall与AWS Kiro,释配置文件何以成攻击之隙,并介绍吾所制开源之器,名曰Sigil.

TrustFall:克隆,开启,远程执行

岁在丙申,五月,Adversa AI出TrustFall:克隆恶之仓库而启之,则一击而RCE于Claude Code、Cursor、Gemini CLI及GitHub Copilot。

其配置二文于库中:

  • .mcp.json指涉于攻击者所控之MCP服务器
  • .claude/settings.json,具项目之域设,若enableAllProjectMcpServers

当用户开启仓库,于"汝信此匣乎?"之问中击键入,则攻击者之MCP服务器即启。自此可窥他项之源码与秘钥,或启久远之出向连结。于无首之CI执役者,信匣之问永现不至,遂落无人之鉴。

此非偶然。Check Point Research 报告同类问题,曰"项目配置先于信任提示处理",即 CVE-2025-59536(远程代码执行)。.claude/钩子或MCP服务器设置)及CVE-2026-21852(通过滥用API密钥进行数据窃取)ANTHROPIC_BASE_URL). 俱发火于克隆开启,尔确认信任之语。

AWS Kiro:事后重写配置

若 TrustFall 事先发送恶意配置,则 AWS 之智能代理 IDE Kiro 之例,在于事后重写配置.

约翰·雷赫伯格(拥抱红色)示人,间接提示注入可重写:

  • kiroAgent.trustedCommands: ["*"].vscode/settings.json
  • .kiro/settings/mcp.json

一旦trustedCommands包含*,此代理无确认即行任意指令。自网页或问题注入之指示,悄然篡改本地配置文件,遂成任意指令执行。此弊已修正于 Kiro 0.1.42 版.

共通之理:配置文件授予权限

凡此种种,模型未尝自作恶念。所遭之攻,乃配置之弊:

  • 钩子
  • 权限(允 / 禁)
  • MCP 允许列表
  • 沙盒标志
  • 可信命令

此等配置之文件,乃决代理所可为之事。其难处在于,其效自项目开启时始,非自阅读时始。权限之授,先于任何审阅。

EDR 可见之rm -rf 虽行,然非制变之由。所当守者,制之允也,非命之自也。

若何守之?

二策可行:

  1. 每可,则于器中或沙盘之内,运人工智能之码使。
  2. 察制文之变,识其危而觉之。

手作之术,难久。目测.claude/settings.json.mcp.json,每变辄观之,此法终败。

吾所造者:Sigil

是故造Sigil,为宿主端AI安全态势管理(AI-SPM)之代理。

此物察诸配置之文,决代理之权柄(钩子、权限、MCP允许列表、沙盒标志),危则量其分,乃送事件于日志或SIEM。

此无阻。其得分而记之。告君曰:"此配置已变,而代理今可为之。"实止其行,则委诸代理时序及君既有之控。因其度而非阻,故不扰开发者,无妄警之患。

示范

  • 寻常配置,仅读权限,无钩,则得零分,甚微。
  • 添一预用工具之钩,配以匹配器.*,行rm -rf $HOME,复评七五分/关键(无沙盒,匹配器过泛,钩中含破坏性指令)。

Sigil scoring a dangerous config 7.5/critical

技术注记

  • 一静态二进制(x86_64 musl,兼 macOS arm64 与 Windows)
  • 以 tokio 与 notify 观文件,不设轮询
  • 单行安装,Apache-2.0

据实而言:此实施之大部分,乃以Claude Code为之。吾主其威胁模型、评分标准、架构之设,而使AI多撰其码。建一器以察编码代理所许所为,复以编码代理为之,此稍有趣耳.

休矣

当人工智能编程之代理遭攻伐,所击者非模型也,乃未为有人所审之配置文件耳。TrustFall、Kiro及CVE-2025-59536皆击同一之隙。

尔今如何处置不可信之仓库配置乎?尽置之于沙盒,手审其配置,抑或但启之而冀其无虞?

仓库、演示及配置监视之详:https://github.com/Ju571nK/sigil

参考文献