Coding Agent行为审计:AI背地里到底在你的电脑做什么

发布时间:2026/10/11 22:59:01
Coding Agent行为审计:AI背地里到底在你的电脑做什么 文章目录1 你给 AI 派了个活它到底中间干了啥1.1 最后回复写得再漂亮中间过程谁知道呢2 把 AI 的行为串成一条时间线2.1 四个阶段千万别搞混了2.2 并行调用别把张三的结果安到李四头上2.3 敏感信息先遮个羞3 光有记录还不够得判断有没有越界3.1 网页里藏的指令你敢信3.2 一条 rm -rf 的惨案3.3 企业自己的规则怎么加4 从风险到调查一步步查4.1 风险列表先挑着看4.2 从风险点回到原始会话4.3 顺着关联对象扩大排查范围5 最后说两句P.S. 无意间发现了一个巨牛的人工智能教程非常通俗易懂对AI感兴趣的朋友强烈推荐去看看 传送门https://blog.csdn.net/qq_344193121 你给 AI 派了个活它到底中间干了啥说个真事儿。前阵子有人发现自己磁盘莫名其妙占了一大块查来查去最后查到了 Coding Agent 头上。更离谱的是这玩意在提交 prompt 之前偷偷在后台生成了加密的工作区快照里面有项目代码、Git 历史、还有各种配置文件。报告者根据本地状态判断其中一份快照已经被远端收走了。你说这像啥就像你让保安帮你看个门结果保安把你家保险柜密码、抽屉里的日记、还有你上周没洗的袜子全拍了一遍打包发给他领导了。你还在那儿夸呢“这保安真负责门看得牢”1.1 最后回复写得再漂亮中间过程谁知道呢咱们平时用 Coding Agent一般就看俩事儿改完了没测试过了没至于它中间访问了哪些文件、执行了哪些命令、读了哪些数据——你管得着吗它最后给你回一句搞定了你就乐呵呵去点合并了。这就像你点外卖最后拿到餐是热的你就觉得一切正常。但你不想想厨师在后厨有没有用你的锅煮过他自己的螺蛳粉有没有顺便把你冰箱里的可乐喝了两罐。问题是——用户授权的是修这个 bug不是随便翻我电脑。操作有没有越界不能只看最后结果得把整个过程拉出来看访问了什么用了什么参数工具又返回了什么。这些信息散落在对话记录、调用日志、返回结果里只看 Agent 最后那句总结根本判断不出来。2 把 AI 的行为串成一条时间线不同的 Coding Agent存日志的方式五花八门。你想统一看首先得有人把这些乱七八糟的记录整理成统一格式。LoongSuite-Pilot 就是干这个的——读会话日志、接 Hook 记录转成统一的事件流。而且它还能持续读新日志文件轮转、截断、甚至采集进程重启了都能接着来不会断片。2.1 四个阶段千万别搞混了一次任务下来模型收输入、提调用请求、Agent 真去调用、工具返回结果——这是四个完全不同的阶段。用event.name来区分事件名称代表啥阶段审计要关注啥llm.request模型收到输入用户到底要啥、上下文有啥llm.response模型吐输出回答了啥、想调啥工具tool.callAgent 真发起调用了调了啥工具、参数是啥、操作目标是哪tool.result工具返回结果返回了啥、报错没、执行成功没这事儿特别像你追一个人“我想请你吃饭”llm.response不等于你真去了tool.call“你去了也不等于人家真答应了”tool.result。多少人就死在把想了想当成做了。最关键的一点模型提出调用请求不代表 Agent 真发起了调用有了调用记录也不代表工具就成功了。审计的时候这几个阶段必须分清楚不能把打算做当成已经干完了。2.2 并行调用别把张三的结果安到李四头上多个工具同时跑的时候还得搞清楚每条结果对应哪次调用。LoongSuite-Pilot 会把原始记录里的 Session、Turn、Step、Tool Call ID 全保留下来帮你配对调用和结果。要是原始记录没给调用标识那就得靠参数、轮次、日志内容慢慢核对——不能光看时间接近就认为是同一次操作。这就像公司开大会你旁边坐了八个人同时在微信上回复不同的甲方。这时候你老婆突然发来一句晚上吃啥你总不能把邻座回他老婆的随便复制粘贴过去吧那可就出大事了。2.3 敏感信息先遮个羞模型消息、工具参数、返回内容里经常夹着 API Key、Access Key、私钥、数据库密码甚至还有个人信息。这些东西要是原样传到后端那就是事故。LoongSuite-Pilot 在输出记录之前会先做脱敏。识别到的密钥、密码、常见个人信息全部替换成占位符。比如 API Key默认脱敏后变成API Key: [APIKEY_MASKED]意思是这儿原来有串密钥你知道有这事儿就行原文别想看。但是——事件名称、发生时间、调用关系这些审计需要的信息全部保留。你照样能查到是哪次调用返回了这段内容前后发生了啥。注意不同的密钥脱敏后可能都显示成[APIKEY_MASKED]别看到一样的占位符就以为是同一把密钥。另外脱敏只管 LoongSuite-Pilot 输出的内容不会改 Coding Agent 本地已经存好的原始日志。那些日志该怎么管权限、存多久得另外搞。3 光有记录还不够得判断有没有越界安全团队哪有那闲工夫一条条读所有会话那看到猴年马月去。AgentLoop 就是帮你干这事儿的先用规则扫敏感信息、凭据访问、破坏性命令、疑似提示词注入这些先标出来。企业还能加自己的规则。条件明确的规则直接出结果需要理解上下文的再交给模型去分析。3.1 网页里藏的指令你敢信你让 Agent 读个网页查资料这很正常对吧但你有没有想过——网页本身可能藏着针对 Agent 的指令Cursor 在 2026 年 3 月发过一个安全公告编号 CVE-2026-31854说的就是这事儿间接提示词注入。模型可能把恶意网页里的指令当成任务要求再结合命令白名单绕过就可能执行你根本没同意的本地命令。更绝的是哪怕你选了Use AllowList模式只允许白名单命令自动执行照样可能中招。受影响版本是 1.4.5 及以前2.0 才修好。这就像你让你家小孩去楼下便利店买瓶酱油结果便利店老板跟小孩说顺便把你家存折拿来给叔叔看看呗你妈妈同意的。小孩还真信了。你说这锅算谁的那审计的时候怎么查得这么看网页返回了啥 → 后续 Agent 调了啥 → 调用结果是啥。然后拿网页里的指令、用户原本的要求、实际调用的参数三方对照。核心问题就一个本来供 Agent 阅读的资料是不是被它当成操作指令执行了关键如果 Agent 只是在解释网页里的命令示例那不能算注入得逞。只有记录表明它真采纳了外部指令、还发起了超出授权的操作才能确认风险。另外调用被拒绝、执行报错、成功返回这仨完全不是一回事——别把发起了调用直接当成执行成功了。3.2 一条 rm -rf 的惨案没有恶意输入也不代表安全。Agent 对环境的误判分分钟给你整出大事。2026 年 7 月有人在 Claude Code 官方仓库提了个 Issue编号 #75859说数据丢了。咋回事呢Agent 本来想清理测试生成的临时目录。它先在一次 Bash 调用里执行了export HOME$(mktemp -d)创建了个临时目录让这次调用里的 HOME 指向它。然后又在另一次Bash 调用里执行rm -rf $HOME打算删这个临时目录。问题是——前一次的变量设置没延续到新调用里。到第二次执行的时候HOME 已经变回了真实的用户主目录。同一个变量名两次调用指了完全不同的地方。这就像你早上跟媳妇说今晚我洗碗晚上你婆婆来家里了你忘了这茬直接把洗碗理解成洗婆婆家的碗——完了这架你吵吧。命令跑了大概两分钟超时被终止了。Agent 做完有限的目录检查还特自信地说可能没执行。结果用户一检查文档、下载、图片目录、还有一堆配置全没了。记住超时只表示操作被停了不会撤销已经删掉的东西。Agent 说可能没执行那是它推测不是事实。审计的时候必须把工具返回、Agent 的说明、操作后的文件状态三者对照着看不能拿超时或者可能没执行代替实际损失核查。3.3 企业自己的规则怎么加内置规则能识别常见危险命令但每家企业的敏感目录、业务数据、操作约束都不一样还得自己加规则。配规则的时候先想清楚几件事第一查哪儿是模型输出里的内容还是工具参数里的操作目标第二啥情况算命中哪些正常情况要排除第三归到哪类风险内置分类不够用就自己加子类。上线前拿应命中的样例和不应命中的样例各测一遍别搞太宽误报一堆也别搞太窄漏了重要操作。配规则这事儿特别像你家的门禁。你想让外卖员能进快递员能进推销的不能进小偷更不能进。结果你把规则设成了只要不穿红衣服的都能进——完了穿红衣服的快递员进不来不穿红衣服的推销员全进来了。4 从风险到调查一步步查风险标出来之后先处理哪条怎么和开发团队一起排查这事儿也有讲究。AgentLoop 的风险结果里会保留类型、严重程度、判断原因还关联了对应的事件、会话和对象。调查人员可以直接从这儿跳到出问题的那次调用。4.1 风险列表先挑着看风险浏览器里可以按类型、严重程度、应用、用户来筛。提示词注入、破坏性操作、凭据访问、权限提升、削弱防护还有企业自己加的检测结果都在这一个入口看。原则很简单先处理高影响的再慢慢看低的。4.2 从风险点回到原始会话选定一条风险先看详情里的判断原因再打开关联会话看原始记录。会话列表用来找任务事件时间线展开模型和工具的每一步交互。调用了啥参数、工具返回了啥、用户当时提了啥要求逐项核对。这就像警察查案先看报案记录说哪儿出事了再调监控看全过程最后找当事人问话。你总不能光看个疑似盗窃的标签就直接抓人吧对了没产生风险事件的会话也能通过审计事实查询去看日常抽查或者排查问题都能用。没有告警不代表操作就一定安全。4.3 顺着关联对象扩大排查范围一次异常查清楚了还得看看其他任务有没有同样的问题。实体调查就是干这个的用户、应用、主机、工具和相关会话都关联起来。比如发现某个工具在多次调用中都碰了敏感路径那就把这些会话都翻出来一个个核对操作目标和权限配置。改完权限或者工具配置之后在受控环境里重新验证一遍再通过新的会话记录检查操作是不是符合预期。5 最后说两句判断 Coding Agent 的操作安不安全不能光看命令本身。得看它为啥执行这个命令指向的是啥对象用户又有没有允许这么做。把分散的行为记录整理好从里面识别风险再结合任务上下文分析原因——既能看到风险判断也能找到对应的输入、调用和返回结果一步步把问题核实清楚。说白了给 AI 派活就像带新人。你不能光看他最后交上来的文档写得漂不漂亮你得看看他这几天都翻了啥文件、有没有乱删东西、有没有偷偷把你电脑里的资料拷走。不然哪天出事儿了你都不知道是从哪一步开始歪的。P.S. 无意间发现了一个巨牛的人工智能教程非常通俗易懂对AI感兴趣的朋友强烈推荐去看看传送门https://blog.csdn.net/qq_34419312

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询