该论文研究大型语言模型(LLM)生态系统中以代码实现的技能(programmatic skills)的描述与实现不一致性问题。这类技能通常包含自然语言描述和可执行代码文件,用户或LLM依赖描述来理解其功能范围,但实现代码可能执行描述中未声明的安全相关操作(如凭据访问、网络通信、命令执行)。作者首先手动分析了920个真实世界的程序化技能,构建了一个包含11类安全属性的分类法(security property taxonomy),涵盖文件操作、网络通信、进程执行、编码/解码、代码执行、Shell命令、凭据访问、加密操作、持久化、系统信息收集等行为。基于该分类法,他们提出了SKILLSCOPE方法:从技能实现代码中构建源代码级安全属性图(Security Property Graphs, SPGs),SPG节点保留源代码层面的具体模式而非抽象分类标签,从而保留细粒度的证据;然后利用LLM辅助进行一致性检查,判断实现代码的安全相关行为是否超出了描述中声明的范围。在4556个程序化技能上,经过双盲人工审核,SKILLSCOPE识别不一致的精确率达到84.8%,召回率达到96.5%。确认不一致的技能占9.4%,而描述粒度较粗但实现细节仍在声明范围内的案例占24.3%。消融实验表明,分类法将精确率从87.8%提升至(原文未提及,但在摘要中实际影响是去除分类法后精确率降至72.3%),去除SPG则召回率从94.7%降至79.0%。该工作首次系统性地关注了LLM技能描述与实现之间的安全语义鸿沟,为构建更可信的LLM技能生态提供了检测方法。适合安全研究人员、LLM平台开发者、以及关注AI供应链安全的人员阅读。
💡 推荐理由: 揭示了LLM技能中描述与实现不一致的安全风险,提供了一种自动化检测方法,有助于提升AI供应链安全。
🎯 建议动作: 研究跟进