← 最新论文
💻 computer science

How Humans, Bots, and Agents Communicate About Vulnerabilities in Pull Requests

本注册报告概述了一项大规模实证研究,该研究通过分析各种项目制品中显式标识符和隐式安全语言的影响,来调查人类、机器人和编程代理在拉取请求中关于漏洞的沟通方式,以了解其对审查结果的影响。

原作者: Pien Rooijendijk, Christoph Treude, Mairieli Wessel

发布于 2026-06-29
📖 1 分钟阅读☕ 轻松阅读

原作者: Pien Rooijendijk, Christoph Treude, Mairieli Wessel

原始论文采用 CC BY 4.0 许可(http://creativecommons.org/licenses/by/4.0/)。 这是对下方论文的AI生成解释。它不是由作者撰写或认可的。如需技术准确性,请参阅原始论文。 阅读完整免责声明

想象一个规模宏大、全球性的建筑工地,成千上万的团队正在不断地建造和修理数字摩天大楼(软件)。在这个世界里,有三种类型的工人:人类(最初的设计师)、机器人/Bot(处理更新材料等常规任务的自动化机器人)以及编程智能体/Coding Agents(能够自主编写新蓝图的智能 AI 助手)。

这篇论文是一份“注册报告”(registered report),这意味着它是研究人员即将开展的一项研究的详细计划。他们想要了解这三类工人如何讨论安全隐患(漏洞)以及他们在提交变更计划(Pull Requests)时的沟通方式。

以下是他们计划的拆解,使用了简单的类比:

1. 工人谈论危险的两种方式

当一名工人发现墙壁出现裂缝或横梁变弱时,他们需要标记出来。研究人员注意到,工人们有两种截然不同的方式来这样做:

  • “官方身份证”法(显式引用/Explicit References):
    有时,一名工人会指向一个特定的危险并说:“这是 CVE-2024-1234。” 这就像展示一个条形码或序列号。每个人都知道这个特定编号的具体含义,因为它被列在一个巨大的官方数据库中。

    • 论文的观察: 之前的研究主要只关注这些“身份证”。
  • “随口警告”法(隐式信号/Implicit Signals):
    其他时候,一名工人可能只是说:“嘿,这扇门可能会让未经授权的人进来,”或者“这根管道看起来可能会导致 SQL 数据泄漏。”他们用直白的英语描述问题,而不使用特定的 ID 编号。

    • 论文的观察: 研究人员怀疑,通过忽略这些“随口警告”,我们正在错过大量的安全对话。

2. 核心问题:谁在说什么?

研究人员想知道:人类、机器人和 AI 智能体谈论安全的方式是否不同?

  • AI 智能体(刚入行的“新同学”)是否因为程序设定要求精确,所以更多地使用“官方身份证”?
  • 人类是否更依赖“随口警告”,因为他们更理解上下文背景?
  • 机器人是否只遵守规则并只使用 ID?

3. 他们计划调查的三件事

这项研究围绕三个主要问题(研究问题)展开:

  • RQ1:分布情况(谁在说话?)
    他们将统计每种类型的工人使用“官方 ID”与“随口警告”的频率,并观察这些行为发生在对话的不同部分(标题、描述或评论)。

    • 类比: 这就像是在统计建筑师、机器人和 AI 助手在休息室里是使用正式的安全代码,还是仅仅大喊“小心!”的次数。
  • RQ2:现实检验(危险是真的吗?)
    这是最关键的部分。仅仅因为有人存在危险,并不意味着那里真的有危险。

    • 研究人员将使用一个“安全扫描仪”(一个名为 Semgrep 的工具)来检查实际的代码变更。
    • 他们想看看:如果一个 AI 说“我修复了一个安全漏洞”,它是否真的修复了一个漏洞?还是它只是做了一个并非真实的陈述?
    • 类比: 如果一名工人说,“我加固了桥梁”,研究人员会实地检查这座桥,看它是否真的变得更强壮了,还是工人只是在裂缝上刷了一层漆。
  • RQ3:反应情况(人们如何回应?)
    危险被描述的方式如何影响团队的反应?

    • 如果一名工人使用了正式的“官方 ID”,审查者是否会更快地信任它并更快地合并变更?
    • 如果一名工人使用了“随口警告”,是否会导致更长的争论、更多的提问,或者因为难以验证而被拒绝?
    • 类比: 当你出示一个条形码时,领班是立即听从,还是会让你等待,同时就你的漏水描述是否准确进行争论?

4. 他们将如何实施(工具箱)

  • 数据集: 他们正在使用来自流行开源项目的超过 33,000 个 Pull Request 的庞大集合。这其中包含了像 GitHub Copilot、Devin 和 Cursor 这样著名的 AI 智能体的作品。
  • 检测手段:
    • 对于“官方 ID”,他们将使用数字放大镜(正则表达式)来寻找类似 “CVE-...” 或 “GHSA-...” 的模式。
    • 对于“随口警告”,他们将使用一系列安全关键词(如 “insecure”、“hack”、“bypass”)来寻找自然语言讨论。
  • 验证手段: 由于计算机可能会犯错,他们将使用一种智能 AI(Gemini)和人类专家来对发现的结果进行抽样复核,以确保这些“危险信号”是真实的。

5. 局限性(本研究不会告诉你的事)

研究人员非常诚实地说明了研究的边界:

  • 他们只关注流行的项目(那些拥有许多“星星/Stars”或追随者的项目)。规模较小、较为安静的项目可能有不同的规则。
  • 他们只关注 GitHub。他们不会检查私人邮件、聊天室或其他讨论安全问题的网站。
  • 他们观察的是对话代码,但不能保证他们的“安全扫描仪”能捕捉到世界上所有可能的缺陷。

总结

简而言之,这篇论文是一份研究蓝图,旨在探讨:在未来的数字建筑工地中,人类、机器人和 AI 如何讨论安全? 他们是使用正式代码还是直白语言?以及,他们谈论的方式是否会改变其安全主张是否被相信或被采纳?目标是确保我们不会仅仅因为一个警告没有附带条形码,就忽略了那些“随口警告”。

您所在领域的论文太多了?

获取与您研究关键词匹配的最新论文每日摘要——附技术摘要,使用您的语言。

试用 Digest →