AI 写代码犯的错,早被写进了错题集
两年前最轰动的安全事件差点让所有 Linux 发行版中招。攻击者在 xz 压缩库里埋了后门编号 CVE-2024-3094CVSS 评分 10.0。这件事上过每一篇安全头条三个月后却没人再提。但它归类的 CWE-506 还在那里。下一次同类事件出来换个 CVE 编号背后的毛病是同一个。x-cmd 最近发布的 v0.9.14 里主要改了两个模块x cve和x cwe前者是在命令行查 CVE 编号的接口后者是用来查 CWE 类别的接口。借这个钩子正好把 CVE 和 CWE 的分工讲清楚。CVE 是哪道题CWE 是哪类错这两个编号的全称很少有人能一次说全。CVE 是 Common Vulnerabilities and Exposures给每一个公开漏洞发编号。CWE 是 Common Weakness EnumerationWeakness 常被译成“弱点”说成人话就是一类毛病它给每类毛病发编号。一句话分清CVE 是“哪道题错了”CWE 是“这类题错在哪”。再具体一点CVE 是错题本上的一道具体错题CWE 是错题本里按知识点归类的标签。CVE-2024-3094 是那道具体错题。它有时间、有影响范围、适合上头条。CWE-506 是知识点标签它不问年月、不看热度只问一个事什么样的开发模式会让恶意代码混进依赖里。具体错题会淡出首页知识点标签会换个编号再来。AI 写代码在复刻老错误现在大量代码是 AI agent 生成的。agent 想得快、写得快犯错也成体系。它犯的错很少是新鲜的。AI 训练的目标是让代码“能跑通”。而训练数据里能跑通的代码中不安全写法占比很高。于是它很自然地复刻了 CWE 已经归纳好的老问题CWE-79XSS把用户输入直接拼进页面CWE-89SQL 注入把用户输入直接拼进查询CWE-22路径穿越用用户输入拼接文件路径CWE-798硬编码凭证把密钥写死在代码里CWE-20输入校验不足默认用户输入总是善意的。这些不是新坑是老坑被 AI 用新代码又写了一遍。人也一样会犯这些错但人的产量有限AI 的产量几乎无限。于是同一个老问题在更大的代码基数里被更快地复刻出来。CWE 的价值从“事后翻错题集”变成了“事前检查清单”。我觉得更实际的用法是把 CWE 前置到 agent 的计划阶段。让它动手写代码之前先对照相关类别检查自己的方案把整类毛病在设计层面排除掉而不是等写完再扫漏洞。MITRE 每年发布的 CWE Top 25就是现成的检查顺序。人审 AI 写的代码也是同一个逻辑。逐行 review 几千行生成代码不现实但按类别过一遍“有没有踩这几类坑”是可行的。把事件和类型一起查漏洞刷屏时多数人不需要成为安全专家。只需要快速搞清楚两件事这个编号说的是什么它归哪类毛病。只知道“出了个满分漏洞”不知道该慌还是该看戏。顺着编号看到它属于 CWE-506再看到这一类毛病的典型后果和官方缓解建议才能判断自己的系统是不是暴露在同一种风险下。x cve和x cwe做的就是把这两步合成一步。把编号交给它事件的影响范围、归类的毛病、有没有正在被利用一次出来想再顺着类别翻下去把 CWE 编号给它就行。数据来自 NVD、MITRE 和 CISA 的公开目录。更实际一点的用法是接进 agent 的工作流。agent 自己查 CVE 编号、翻 CWE 描述、看缓解建议比让它去搜索引擎翻一堆过时博客靠谱。你不需要背编号也不需要先把安全学一遍。只需要让 agent 知道有这个数据源可以用。新闻会过时错题集不会我觉得安全素养不是背漏洞编号而是两个习惯。一个习惯是追事件出了事能第一时间知道是什么、多严重、跟自己的技术栈有没有关系。CVE 负责这一步。另一个习惯是翻类别动手写代码、或者审 AI 写的代码时记得那些毛病类别一直都在换着编号重演。CWE 负责这一步。新闻会过时类别不会。AI 把代码产量放大了很多倍这两个习惯的价值也跟着放大了很多倍。前者让你知道出事了后者让同样的事不发生在你身上。

相关新闻

10分钟批量处理1000张图片!IOPaint命令行批量修复终极指南

10分钟批量处理1000张图片!IOPaint命令行批量修复终极指南

10分钟批量处理1000张图片!IOPaint命令行批量修复终极指南 【免费下载链接】IOPaint Image inpainting tool powered by SOTA AI Model. Remove any unwanted object, defect, people from your pictures or erase and replace(powered by stable diffusion) any th…

2026/10/14 0:48:13 阅读更多 →
嵌入式网络调试利器:深度解析EMAC统计寄存器原理与实战应用

嵌入式网络调试利器:深度解析EMAC统计寄存器原理与实战应用

1. 项目概述:为什么我们需要关注EMAC的统计寄存器?在嵌入式网络开发中,我们常常会遇到一些“玄学”问题:设备间歇性丢包、网络吞吐量上不去、或者在某些特定负载下通信会完全中断。面对这些问题,如果只盯着应用层的Soc…

2026/10/10 23:49:07 阅读更多 →
Zen Browser 5个必知技巧:让你的工作效率翻倍的浏览器新选择

Zen Browser 5个必知技巧:让你的工作效率翻倍的浏览器新选择

Zen Browser 5个必知技巧:让你的工作效率翻倍的浏览器新选择 【免费下载链接】desktop Welcome to a calmer internet 项目地址: https://gitcode.com/GitHub_Trending/desktop70/desktop 你是否厌倦了浏览器界面杂乱、标签页混乱的工作状态?Zen …

2026/10/13 17:12:11 阅读更多 →

最新新闻

Fedora Server 搭建 Nextcloud 私有云:从部署到安全加固的完整实践

Fedora Server 搭建 Nextcloud 私有云:从部署到安全加固的完整实践

1. 为什么我最终选择了 Fedora Server 加 Nextcloud 这套组合很多人第一次动了"自己搭私有云"的念头,往往是因为受够了公共网盘的各种限制:下载限速、空间收费、文件莫名其妙被和谐、分享链接说失效就失效。我最早也是这么被逼上梁山的。一开始…

2026/10/16 12:22:30 阅读更多 →
金融服务中间层实战:幂等、状态机与对账的完整设计

金融服务中间层实战:幂等、状态机与对账的完整设计

去年年中,团队接了一个金融服务相关的中间层项目,项目代号就叫 financial-services。背景是一家合规运营的金融服务机构已经有了能稳定跑核心账务的系统,但外部渠道越来越多,支付、账单、退款、对账这些能力每次接一个新渠道都要在…

2026/10/16 12:22:30 阅读更多 →
MySQL行转列与列转行实战:七种写法与三种逆向方案全解析

MySQL行转列与列转行实战:七种写法与三种逆向方案全解析

做数据分析的同学,十有八九都遇到过这种需求:一张流水表里同一个人的多个属性明明是多行,业务方却要你展示成一行多列。MySQL里管这个叫行转列,也就是pivot透视;反过来,一张宽表里语文数学英语各占一列&…

2026/10/16 12:22:30 阅读更多 →
光储一体化系统规划运行优化:改进粒子群算法与Python实践

光储一体化系统规划运行优化:改进粒子群算法与Python实践

近几年"建筑光储一体化"这个概念在能源圈子里出现的频率明显变高了,我在多个项目中都遇到过同一个问题:光伏板、储能电池到底该配多大容量,日常运行中又该怎么充放电,才能让整个系统在经济性和自持能力之间拿到最优解。…

2026/10/16 12:22:30 阅读更多 →
PostgreSQL 18 io_method 不再玄学:用 strace 看穿 WAL 写入路径

PostgreSQL 18 io_method 不再玄学:用 strace 看穿 WAL 写入路径

说实话,PG 18 里这个io_method参数,我观察下来,很多 DBA 对它的态度基本分成两派。一派只看 Release Notes 和网上性能报告,觉得这是内核开发者才能理解的魔法;另一派直接上生产改配置,改完发现没效果甚至变…

2026/10/16 12:22:30 阅读更多 →
适配器模式实战:类适配器与对象适配器如何选型

适配器模式实战:类适配器与对象适配器如何选型

做后端开发的这些年,我几乎每年都会遇到同一个尴尬:手里维护的还是那套吭哧吭哧跑了好几年的老类,可新需求、新SDK、新网关全都只认另一套接口格式。改老代码怕影响线上,推倒重写工期又不够,这时候最实用的解法就是加一…

2026/10/16 12:21:30 阅读更多 →

日新闻

个人 AI Agent 平台接入 TaoToken:统一 Key 与 API 通道的配置大纲

个人 AI Agent 平台接入 TaoToken:统一 Key 与 API 通道的配置大纲

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 0:00:05 阅读更多 →
信号与系统频域分析作业解题指南

信号与系统频域分析作业解题指南

1. 作业背景与核心要求解析信号与系统作为电子信息类专业的核心基础课,其作业设计往往直接关联课程的核心知识框架。2026年春季第六次作业的布置,通常对应着课程进展到频域分析的关键阶段。根据常规教学进度推测,本次作业可能涉及以下核心内容…

2026/10/16 0:00:05 阅读更多 →
Django MVT实战:从零构建图书借阅系统,彻底搞懂Model-View-Template分层

Django MVT实战:从零构建图书借阅系统,彻底搞懂Model-View-Template分层

1. 从一个"四不像"的练手项目说起如果你已经看完了Django的官方教程前几章,跟着敲完了投票应用,大概会有一种"我好像会了,又好像什么都不会"的割裂感。教程里每个知识点都是拆开的——这一章讲模型,下一章讲视…

2026/10/16 0:00:05 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/15 16:18:54 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/15 19:41:51 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/15 13:48:15 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/15 0:14:36 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 3:49:43 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/15 9:49:14 阅读更多 →