AI应用元年,只会yes,无视风险?软件开发的航行日志全面开源

marsbit发布于2026-06-16更新于2026-06-16

文章摘要

2026年,AI生成代码的速度日益加快,但代码审查却愈发不足。AI不仅补全代码,还能修改配置、安装依赖、生成测试,甚至以Agent形式规划任务。然而,最危险的风险往往潜藏于语法正确、测试通过的“正常”代码中,可能引发数据泄露、权限过度开放或资产损失,如Moonwell cbETH预言机配置错误导致超170万美元损失。 为系统化应对此类风险,北京大学Narwhal-Lab开源了“Narwhal AI Code Risks”项目。该项目整理了分散的案例与线索,将材料分为三层:已证实的真实事件(cases/)、待观察的早期信号(inferred/)以及典型的风险场景(scenarios/)。风险被归纳为七大类:供应链风险、代码级漏洞、云与基础设施配置、Agent风险、垂直领域风险、知识产权与合规风险以及人为因素。 该项目旨在将零散的风险信息转化为可复用的公共知识库,帮助开发者提前识别隐患,为安全研究提供样本,并为工具开发提供基准。在AI深度融入软件工程的当下,这份“航行日志”致力于记录每一次偏航,让后续团队能避免重蹈覆辙,更安全地航行于AI应用元年。

AI写代码的风险隐藏在看似正确的代码中,可能引发数据泄露或资产损失。Narwhal AI Code Risks开源项目整理了真实案例、早期信号和典型风险路径,帮助开发者提前识别隐患,避免重蹈覆辙。

2026年,代码正以越来越快的速度生成,却以越来越少的审视被部署。

越来越多时候,用户的需求被放进对话框,AI读完上下文,补全函数,拉起依赖,改好配置,再顺手生成测试。

等回过神来,一段代码已经躺在仓库里,等待合并。

用户都已经形成了新的习惯,先让AI写出来跑起来,有问题再看哪里需要改。

但软件世界里,最危险的东西往往是看起来平平无奇的代码:语法正确,接口合法,测试通过,注释完美。

可它仍然可能引入不存在的包名,打开过宽的权限,暴露数据库......甚至让一个能直接调用系统工具的 Agent 在提示词注入下,把敏感数据带出内部系统。

真正危险的,不是报错红灯亮起。而是所有风险仪表都显示正常。

AI 写代码的风险,过去散落在各处:一篇安全博客藏着一个案例,一个 Issue 记着一段线索。等下一个团队遇到同类问题时,又需要从头拼凑风险来源、又要耗费大量时间精力对代码进行大规模实证测量。

而北京大学Narwhal-Lab刚刚开源的Narwhal AI Code Risks已经把信息碎片整理好,按照真实事件、早期信号和典型风险路径这三种类型归类,供研究者查看。

论文链接: https://github.com/Narwhal-Lab/Narwhal-aicode-risks

当28项检查全部通过,系统仍然偏航

第一条线索是一个已经合并的Pull Request,PR署名栏里赫然写着Claude Opus 4.6和Copilot,以及四位人类开发者。28项检查全部通过:没有人发现问题

然后,清算机器人花了几分钟,拿走了价值1,778,044.83美元的抵押品。

配置文件里cbETH的价格被设成了和ETH的换算比例,约等于1.12美元,而不是实际接近2,200美元的价格。

一个价格语义错误就这样穿过了开发、检查和合并流程,最后在金融系统里变成了真实损失。这就是Moonwell cbETH预言机配置事故最刺眼的地方。

问题就出在代码中没有语法报错,人类开发者也没有立刻阻断异常的流程。相反,它看起来很完整,很顺利,这就是一次正常的工程交付。

但正是这种暗流涌动的正常,才让它成为安全事件的典型例子。

AI Coding的风险在于它并不总是以报错的方式出现。

很多时候,它披着正确答案的外衣,安静地进入工程流程。代码能跑,检查能过,PR能合并,但业务语义已经偏离了真实世界。

在低风险项目里,这种语义偏离可能只是一次返工;但在金融、企业数据系统等敏感场景中,它将直接泄露数据、暴露权限和损失资产。

当AI参与写代码、改配置、做review、甚至共同署名进入PR时,我们有没有足够把握知道每一次偏航是怎么发生的?

绿色通行信号,照不到所有角落

早期的AI帮你写代码,大多停留在局部补全。如果语法写错了,编译器会报错,单元测试会失败,CI流程会将其拒之门外。

今天的AI Coding走得更远而监管却迟迟却未跟上。

它能读文件,能改配置,能安装依赖,能生成基础设施脚本,也能通过Agent在多个任务之间自行规划。

AI不再只是坐在旁边递工具,它开始进入软件工程的更长链路。

软件工程里原本清晰的边界,被AI Agent重新连成了一条更长、更难溯源的路径。

分散的记录,需要一份公共航行日志

安全事件很少一开始就有完整结论。有些事件证据充分,可以作为真实案例进入目录;有些还停留在社区截图、研究员讨论或初步披露阶段,只适合继续观察;还有一些不绑定单一真实事件,却已经形成清晰模式,适合拿来做提前推演。

Narwhal AI Code Risks把材料分成三层:`cases/`、`inferred/` 和 `scenarios/`

cases/ 记录已经有公开来源和证据链支撑的真实事件;inferred/ 保存还没有完全坐实、但值得持续追踪的早期信号;scenarios/ 整理暂不绑定单一事件、但风险路径足够清晰的典型场景。

如果没有这样的公共记录,AI Coding 的风险很容易变成互联网里的短期记忆。

今天大家记得某个包名,明天讨论某次数据暴露,过几个月又被新的工具热潮覆盖。等相似问题再次出现,团队仍像无头苍蝇撞进风险未知的航区。

Narwhal AI Code Risks做的,就是把这些零散风险片段固定下来,让后来的人可以翻到同一页。

沿着七类索引,看见风险的来路

AI写代码带来的问题,不只在代码里。它在依赖里,在权限里,在Agent的工具调用里,更在人类对AI输出的信任方式里。

Narwhal AI Code Risks目前把风险分成7类:供应链、代码级漏洞、云与基础设施配置、Agent风险、垂直领域风险、知识产权与合规风险,以及人为因素。

在供应链风险里 ,AI可能推荐不存在的依赖。代码级漏洞里,AI可能把路径遍历、输入校验缺失、鉴权问题重新写进业务代码。云与基础设施配置里,AI可能为了先把代码跑起来给出过宽的权限、公开的存储桶或暴露的端口。Agent风险则更复杂,不只是生成文本,而是开始执行动作。AI生成物正在给真实系统埋下隐患。

AI引擎在点火,而航行日志才刚刚翻开

当AI一步步走进真实世界,相关的风险防治不应该只停留在事后复盘或零散讨论中。

Narwhal AI Code Risks真正重要的地方,是把风险案例变成可以复用的知识

开发者可以用它识别相似问题;安全研究人员可以把它作为样本库;工具厂商可以从中提取检测规则和评测基准;开源社区也可以继续补充新的案例、新的证据和新的风险类型。

AI 的引擎正在轰鸣,每一次偏航也都应该留下坐标。风险从来不会因为被忽视而消失,但经验可以被记录与传递。真正有价值的并非发现一次漏洞,而是让后来者不必再踏入同一个陷阱。

Narwhal AI Code Risks正在做的,就是为AI应用元年的软件世界,留下一份开源的航行日志。

参考资料:

https://github.com/Narwhal-Lab/Narwhal-aicode-risks

本文来自微信公众号“新智元”,作者:LRST

相关问答

QAI 写代码的主要风险是什么?

AAI 写代码的主要风险并不在于它产生语法错误或导致测试失败,而在于其生成的代码可能表面看起来“语法正确、接口合法、测试通过”,但实际上隐藏着严重的语义错误、安全漏洞或配置问题。这些风险包括引入不存在的包、设置过宽的权限、暴露敏感数据(如数据库)、或植入可被利用的漏洞(如路径遍历、输入验证缺失)。在金融等高敏感领域,此类错误可能导致直接的经济损失。

QNarwhal AI Code Risks 开源项目如何组织风险信息?

ANarwhal AI Code Risks 项目将风险信息整理为三个层级进行分类管理:1. `cases/` 目录:记录已有公开来源和完整证据链的真实事件。2. `inferred/` 目录:保存尚未完全证实但值得持续追踪的早期风险信号和线索。3. `scenarios/` 目录:整理不绑定单一具体事件,但其风险路径已经足够清晰的典型场景,用于提前推演和预防。

Q文中提到的“Moonwell cbETH预言机配置事故”具体发生了什么?

A在该事故中,由AI(Claude Opus 4.6和Copilot)参与编写和审查的代码修改了配置文件,错误地将cbETH(一种流动性质押代币)的价格设置为与ETH的换算比例(约1.12美元),而非其接近2200美元的实际市场价格。这段代码通过了所有28项自动化检查并成功合并。这个价格语义错误最终导致清算机器人触发,造成了价值1,778,044.83美元的抵押品损失,凸显了AI生成的代码在业务逻辑层面存在隐蔽风险。

QNarwhal AI Code Risks 将AI代码风险分为哪七大类?

A项目将AI代码风险分为以下七大类:1. 供应链风险(如推荐不存在的依赖包)。2. 代码级漏洞(如路径遍历、输入校验缺失)。3. 云与基础设施配置风险(如设置过宽的权限、公开存储桶)。4. Agent风险(涉及AI代理执行动作带来的复杂风险)。5. 垂直领域风险(特定行业如金融、医疗的合规与安全风险)。6. 知识产权与合规风险。7. 人为因素(如对AI输出的过度信任)。

Q建立 Narwhal AI Code Risks 这类“公共航行日志”的目的是什么?

A建立此类公共航行日志的核心目的是将零散、易被遗忘的AI代码风险案例系统化地记录和整理下来,形成可复用的公共知识库。这有助于开发者提前识别和规避类似风险,为安全研究人员提供研究样本,为工具厂商提供检测规则和基准测试来源,并方便开源社区持续补充新案例。最终目标是避免不同团队反复踏入相同的陷阱,提升整个软件行业在AI应用时代的安全水位。

你可能也喜欢

SPCX要涨到400美元?期权能否把SpaceX推向全球市值第一

ZeroHedge等激进财经媒体认为,SpaceX(股票代码SPCX)由于上市初期流通盘较低、散户买盘高度集中,且期权即将开放交易,存在引发“伽马挤压”的可能,极端情况下股价或飙升至400美元,对应市值约5.2万亿美元,接近甚至可能短暂超越英伟达。 SPCX的特殊性在于其作为超大规模公司,上市初期可自由交易的股份比例有限,这使得其短期价格行为更像小盘股,对资金流入高度敏感。期权(特别是虚值看涨期权)的开放为波动加上了杠杆。若散户大量买入这类期权,做市商为对冲风险将被迫买入正股,可能形成“股价上涨→做市商加仓对冲→进一步推高股价”的正反馈循环。 数据显示,SPCX连续占据散户净买入榜首,资金高度集中于此单一标的,而非全市场风险偏好扩散。这既放大了短期上行动能,也意味着持仓结构脆弱,一旦预期落空或流动性变化,反向波动也可能剧烈。 目前,400美元仅是基于特定市场结构的极端推演,并非市场共识或基本面锚定价值。关键验证点在于期权上市后的真实交易情况:需观察虚值看涨期权的未平仓量是否集中、隐含波动率变化以及正股在高位是否有持续的实际买盘承接。投资者应密切关注这些数据,而非仅依赖社交媒体上的夸张价格目标。

marsbit31分钟前

SPCX要涨到400美元?期权能否把SpaceX推向全球市值第一

marsbit31分钟前

SpaceX 万亿估值的底座:谁在瓜分马斯克每年的百亿资本开支?

SpaceX(股票代码待定)上市后,其万亿估值背后是每年数百亿美元的资本开支,这为供应链上的众多公司带来了机遇。文章认为,投资SpaceX的供应链企业,可能比直接投资其本身更具潜力和确定性。 SpaceX的业务主要由三部分构成:稳定盈利的星链(Starlink)业务、持续投入的火箭发射业务(猎鹰、星舰)以及仍在亏损的AI业务(包括地面超算和规划中的轨道数据中心)。公司形成一个资金循环:星链的利润支持火箭研发以降低发射成本,低成本发射再将AI硬件送入太空,最终通过出租AI算力创造新收入。这个循环每年产生巨大的采购需求。 供应商按其可替代性分为三类: 1. **短期内无法替代**:包括提供GPU和CUDA生态的英伟达(NVDA)、持有关键卫星通信频谱的欧洲通信卫星公司(Eutelsat,SATS)、为星链卫星提供毫米波放大器的Filtronic(FTC)、全球铍金属主要供应商Materion(MTRN),以及提供相控阵天线芯片的意法半导体(STM)。 2. **技术上可换但代价高昂**:包括提供火箭飞控系统的霍尼韦尔(HON)、提供发动机特种钢的Carpenter Technology(CRS)、供应航天碳纤维的赫氏(Hexcel, HXL)、负责高速数据交换的博通(AVGO),以及在发射场附近供应液氧液氮的林德集团。 3. **需要稳定量产、成本优先**:这类公司集中在星链终端等需要大规模生产的产品上。例如,星链终端主要代工厂启碁科技(6285),以及多家A股公司,如信维通信(300136)、派克新材(605123)、西部材料(002149)、应流股份(603308)、天银机电和通宇通讯等。此外,还有提供时间同步、配电、散热等关键“螺丝钉”功能的美股公司。 文章指出,当前关注SpaceX供应链恰逢其时,原因有三:一是SpaceX的采购量正处于加速增长的起点;二是公司上市后提高了财务透明度,便于跟踪验证供应链订单;三是参照苹果、特斯拉产业链的发展历史,SpaceX供应链目前可能类似于特斯拉2018年的阶段,正进入快速增长期。 最后,文章总结,无论SpaceX股价如何波动,其庞大的、持续的采购订单将为供应链上的公司带来确定的营收。对于投资者而言,关注这些“安静供货”的供应链企业,或许是参与太空经济浪潮的另一种方式。

链捕手2小时前

SpaceX 万亿估值的底座:谁在瓜分马斯克每年的百亿资本开支?

链捕手2小时前

交易

现货
合约

热门文章

如何购买S

欢迎来到HTX.com!我们已经让购买Sonic(S)变得简单而便捷。跟随我们的逐步指南,放心开始您的加密货币之旅。第一步:创建您的HTX账户使用您的电子邮件、手机号码注册一个免费账户在HTX上。体验无忧的注册过程并解锁所有平台功能。立即注册第二步:前往买币页面,选择您的支付方式信用卡/借记卡购买:使用您的Visa或Mastercard即时购买Sonic(S)。余额购买:使用您HTX账户余额中的资金进行无缝交易。第三方购买:探索诸如Google Pay或Apple Pay等流行支付方法以增加便利性。C2C购买:在HTX平台上直接与其他用户交易。HTX场外交易台(OTC)购买:为大量交易者提供个性化服务和竞争性汇率。第三步:存储您的Sonic(S)购买完您的Sonic(S)后,将其存储在您的HTX账户钱包中。您也可以通过区块链转账将其发送到其他地方或者用于交易其他加密货币。第四步:交易Sonic(S)在HTX的现货市场轻松交易Sonic(S)。访问您的账户,选择您的交易对,执行您的交易,并实时监控。HTX为初学者和经验丰富的交易者提供了友好的用户体验。

2.6k人学过发布于 2025.01.15更新于 2026.06.02

如何购买S

相关讨论

欢迎来到HTX社区。在这里,您可以了解最新的平台发展动态并获得专业的市场意见。以下是用户对S(S)币价的意见。

活动图片