跳到正文
热点事件观察中

谷歌工程师使用 Gemini 4 Argon 和 Z3 捕获 Go 边界 bug

1 篇报道1 个报道来源2 天前更新

先了解这件事

AI 综述

一位负责公司 agent skills 项目的谷歌工程师构建了一条流水线:Gemini 4 Argon 读取 Go 源码和 RISC-V 反汇编,并将存活的 runtime.panicBounds 陷阱转换为 Z3 约束;随后 go test 将任何满足条件的输入作为真实复现用例重放。据该工程师描述,该工作流捕获了 skill-lint 中全部三个植入 bug 和三个潜在 bug。 未设置种子的 go test -fuzz 漏掉了两个植入的崩溃,因为 Go 检查切片时依据的是容量而非长度。用 data[:len(data):len(data)] 将容量裁剪到长度后,模糊测试器在全部三次运行中都使两个越界 bug 崩溃,中位数分别为 0.28 秒和 0.17 秒。

AI 根据报道生成 · 16 小时前更新

报道时间线

沿着报道,了解事件的不同侧面。

11月12日
  1. Google Developers Blog
    谷歌工程师用 Gemini 4 Argon 和 Z3 捕获 fuzzing 漏掉的 Go 边界检查缺陷

    一位负责谷歌 agent skills 项目的工程师构建了一条流水线:Gemini 4 Argon 读取 Go 源码和 RISC-V 反汇编,将存活的 runtime.panicBounds 陷阱转换为 Z3 约束,然后 go test 将任何满足条件的输入重放为真实复现用例。该工作流捕获了 skill-lint 中全部三个植入缺陷和三个潜在缺陷,而未设种子的 go test -fuzz 漏掉了两个植入崩溃,因为 Go 按容量而非长度检查切片。用 data[:len(data):len(data)] 将容量裁剪到长度后,fuzzer 在三次运行中均使两个越界缺陷崩溃,中位数分别为 0.28 秒和 0.17 秒。

本事件热度走势

还没有足够的连续观测数据,暂不绘制趋势。