惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

美团技术团队
T
The Blog of Author Tim Ferriss
C
Check Point Blog
博客园_首页
J
Java Code Geeks
云风的 BLOG
云风的 BLOG
L
LangChain Blog
小众软件
小众软件
Stack Overflow Blog
Stack Overflow Blog
爱范儿
爱范儿
Vercel News
Vercel News
博客园 - Franky
V
V2EX
IT之家
IT之家
U
Unit 42
N
Netflix TechBlog - Medium
腾讯CDC
Apple Machine Learning Research
Apple Machine Learning Research
Microsoft Azure Blog
Microsoft Azure Blog
罗磊的独立博客
博客园 - 叶小钗
H
Help Net Security
V
Visual Studio Blog
GbyAI
GbyAI

InfoQ - 促进软件开发领域知识与创新的传播

Meta 收购 Manus 这事儿泡汤了 5.5万 Star 开源项目 Ghostty 被迫出走,GitHub 正在终结一代技术人的乌托邦 Slack 长时运行多智能体系统的上下文管理方案 从 T+1 到分钟级:金城银行基于 Apache Doris 构建高可靠、强一致的实时数据平台 谷歌云推出 Agents CLI,简化 AI 智能体开发全流程 Claude官方击穿高薪、高学历的安全防线!Anthropic点名10大高危职业,但有群人暂时稳了 亚马逊云科技终止 WorkMail 服务,并将 App Runner 转入维护模式 OPPO小布记忆:全模态碎片化内容的理解与智能整理实践|AICon上海 模力工场038周AI应用周榜:工具在消失,工作流在出现 Akamai CEO Tom Leighton:Agent 时代来临,云基础设施正从“中心化”转向“分布式边缘” 日均数百亿入库背后:从“人肉调度”到K8s弹性架构,度小满金融基于OceanBase重构入库架构实践 百度文库网盘发布GenFlow 4.0:月活用户超1亿,要把网盘变成全端AI工作台 Altman 投的 Agent 终端 Warp 开源了!斩获3.5万star 哪些客户需要拒, 敢让龙虾决定吗?_AI&大模型_InfoQ 中文站_InfoQ精选视频 从开发到生产:为什么越来越多的机器学习团队纷纷迁移到 Snowflake | BUILD 2025_AI&大模型_王玮_InfoQ精选视频 探索多智能体工作流:LangGraph Snowflake Cortex AI | BUILD 2025_AI&大模型_王玮_InfoQ精选视频 腾讯云分布式缓存数据库:AI Agent - 从提示词工程到 Harness 工程 | 腾讯云数据库 DBTalk_腾讯_凌敏_InfoQ精选视频 基于 Streamlit 为 CSV 数据构建分析智能体 | BUILD 2025_AI&大模型_王玮_InfoQ精选视频 AI 智能体:告别文档缺漏 | BUILD 2025_AI&大模型_王玮_InfoQ精选视频 构建 AI 驱动的数据管道:深度探讨 Snowflake Openflow 与非结构化数据 | BUILD 2025_AI&大模型_王玮_InfoQ精选视频 云端太贵、本地不够聪明,英特尔押注“端云混合AI”:智能体PC会替人完成工作 不到10%的存储投入,可能拖垮90%的GPU投资!IBM把AI Agent塞进存储系统,算清企业最容易忽略的一笔账 Snowpark 上手实战 | BUILD 2025_大数据_王玮_InfoQ精选视频 ClickHouse + Langfuse,构建 Agent 可观测基石 腾讯云分布式缓存数据库:Cluster Proxy 共享连接架构深度解析 | 腾讯云数据库 DBTalk_腾讯_凌敏_InfoQ精选视频 AI 写代码太烧钱了:Copilot、Claude 一起涨价,不如把程序员请回来? 英特尔发布至强600系列工作站处理器与锐炫Pro B70 GPU,全新AI工作站来了 腾讯云分布式缓存数据库:从 Redis 到 Valkey - 开源社区如何快速创新 | 腾讯云数据库 DBTalk_腾讯_凌敏_InfoQ精选视频 印奇这次要“从0重做”智驾模型!首谈阶跃和千里双公司布局:中国AI商业闭环要靠车跑出来 从Cursor返聘归来,90后华裔女高管带Claude开启日更模式:token成本比工程师工资低多了!
GitHub升级CodeQL:以声明式安全建模实现更快且更灵活的分析
作者:Craig Ris · 2026-05-12 · via InfoQ - 促进软件开发领域知识与创新的传播

GitHub 对其进行了重大更新CodeQL引擎,开发者现在可以通过"models-as-data"直接定义自定义的净化器(sanitizer)和验证器(validator),这一变化简化了团队在代码库中扩展安全分析的方式。此次更新使工程师无需编写自定义 CodeQL 查询,就能配置受信任数据和已验证数据的处理方式,标志着应用安全实践正转向更易用、更可扩展的方向。

这项增强解决了传统静态分析流程中的一个关键限制:扩展检测逻辑往往需要对查询语言具有深度的专业知识。借助新方法,团队可以通过基于 YAML 的数据扩展以声明式方式定义这些行为,更容易让 CodeQL 适配项目的特定框架、内部库和自定义校验逻辑。

此次更新的核心是对污点跟踪(taint tracking)控制能力的提升。污点跟踪用于追踪不受信数据在应用中的流动路径。CodeQL 现在允许开发者将净化器(清洗或中和数据的函数)和验证器(确认数据安全性的检查)定义为"barriers"与"barrier guards"。这些结构决定了潜在不安全的数据应在系统中的何处停止传播。

两项新的可扩展谓词 barrierModel 和 barrierGuardModel 提供了这一能力。前者在函数被识别为可净化输入时会阻断污点数据流,后者在满足验证条件时停止传播。过去实现这一点通常需要编写自定义 CodeQL 逻辑;如今可通过声明式配置完成,从而降低了复杂度,也降低了团队采用高级安全分析的门槛。

该更新覆盖广泛语言,包括 C/C++、C#、Go、Java/Kotlin、JavaScript/TypeScript、Python、Ruby 和 Rust。如此广泛的支持确保拥有多语言代码库的组织能够统一安全规则的建模与执行方式,而无需在不同工具链或语言之间重复投入。

通过让团队把自身的系统知识(比如,内部净化函数或验证模式)编码进模型,CodeQL 可以给出更准确且具上下文感知的结果,减少误报并提升真实漏洞检出率。这在现代开发环境中尤为重要,因为自定义框架和抽象层常常会遮蔽传统分析的有效性。

models-as-data的引入反映了应用安全中的一个更大趋势:从以代码为中心的定制,转向以数据驱动的配置。团队不再需要编写并维护复杂查询,而是可将安全逻辑作为结构化数据管理,从而更易于版本化、共享和在组织内规模化落地。

这也契合 GitHub 持续推进的方向:将安全能力更深地融入开发者工作流,让团队基于内置工具扩展能力,而不是依赖外部或定制化方案。同时,这也加快了安全实践的上手速度,因为开发者无需接受 CodeQL 查询语言的专项培训,就能采用并调整模型。

归根结底,这次更新旨在让高级安全分析更易用、更灵活且更易维护。通过减少对自定义查询开发的依赖,GitHub 让更多团队能够按自身环境定制 CodeQL,弥补覆盖空白并提高漏洞检测准确性。

其他平台也在应对与 GitHub 此次 CodeQL 更新类似的挑战,即让安全建模更易用、更集成且更开发者友好,但它们在灵活性、易用性和分析深度之间的权衡方式各不相同。

例如,GitLab采用更以流水线为中心的方法,将静态应用安全测试(SAST)、依赖扫描和密钥泄露检测直接嵌入 CI/CD 流程。与通过查询语言暴露深度定制能力不同,GitLab 更强调预置规则和策略驱动执行,使团队无需专项专家能力也能更容易地落地安全检查。类似地,Snyk聚焦开发者优先安全,自动识别代码和依赖中的漏洞并提供内联的修复建议,在易用性和深度定制之间更偏向前者。

在更灵活、可定制方面,Semgrep等工具提供了更接近 GitHub 演进方向的替代模式。Semgrep 允许团队以类代码的模式定义自定义安全规则,避免完整查询语言的复杂度,同时保留按需定制的分析能力,从而更便于开发者扩展检测逻辑。与此同时,SonarQube等平台提供持续的代码检查,把安全、质量与可维护性检查整合到统一看板,更强调持续可见性,而非深度查询驱动建模。

综观这些路径,一个清晰的趋势正在形成,那就是 GitHub 的 CodeQL 更新正走向数据驱动、声明式安全建模,而更广泛生态也在收敛到“降低使用摩擦”这一目标,无论是通过更简化的规则定义、内置策略,还是更紧密的 CI/CD 集成。关键的权衡始终是一致的,平台必须在分析深度与精度、日常开发者可用性与可扩展性之间取得平衡,而各工具正在这条谱系上以不同的方式演进。

查看英文原文:GitHub Enhances CodeQL with Declarative Security Modeling for Faster, More Flexible Analysis