We present a constructive proof that a single C program, the \emph{Vulnerability Factory}, admits a countably infinite set of distinct, independently CVE-assignable software vulnerabilities. We formalise the argument using elementary set theory, verify it against MITRE's CVE Numbering Authority counting rules, sketch a model-checking analysis that corroborates unbounded vulnerability generation, and provide a Turing-machine characterisation that situates the result within classical computability theory. We then contextualise this result within the long-running debate on whether undiscovered vulnerabilities in software are \emph{dense} or \emph{sparse}, and introduce the concept of \emph{vulnerability abundance}: a quantitative analogy to chemical elemental abundance that describes the proportional distribution of vulnerability classes across the global software corpus. Because different programming languages render different vulnerability classes possible or impossible, and because language popularity shifts over time, vulnerability abundance is neither static nor uniform. Crucially, we distinguish between infinite \emph{vulnerabilities} and the far smaller set of \emph{exploits}: empirical evidence suggests that fewer than 6\% of published CVEs are ever exploited in the wild, and that exploitation frequency depends not only on vulnerability abundance but on the market share of the affected software. We argue that measuring vulnerability abundance, and its interaction with software deployment, has practical value for both vulnerability prevention and cyber-risk analysis. We conclude that if one programme can harbour infinitely many vulnerabilities, the set of all software vulnerabilities is necessarily infinite, and we suggest the Vulnerability Factory may serve as a reusable proof artifact, a foundational `test object',for future formal results in vulnerability theory.


翻译:我们给出一个构造性证明,表明存在一个C程序(称为“漏洞工厂”)可以产生可数无限个不同的、可独立分配CVE编号的软件漏洞。我们使用初等集合论对论证进行形式化,并根据MITRE的CVE编号机构计数规则对其验证,勾勒出支持无界漏洞生成的模型检验分析,并提供图灵机刻画将该结果置于经典可计算性理论框架中。随后,我们将该结果置于关于软件中未发现漏洞是“密集”还是“稀疏”的长期争论语境中,并引入“漏洞丰度”这一概念:这一定量类比于化学元素丰度,描述了全球软件语料库中漏洞类别的比例分布。由于不同编程语言使不同漏洞类别成为可能或不可能,且语言流行度随时间变化,漏洞丰度既非静态亦非均匀。关键的是,我们区分了无限个“漏洞”与规模小得多的“利用集合”:经验证据表明,已公布CVE中不足6%曾在实际环境中被利用,且利用频率不仅取决于漏洞丰度,还与受影响软件的市场份额相关。我们认为,测量漏洞丰度及其与软件部署的相互作用,对漏洞预防和网络风险分析具有实际价值。我们得出结论:若单个程序可容纳无限漏洞,则所有软件漏洞的集合必然无限。建议将漏洞工厂用作可复用的证明工件——一个基础性“测试对象”——用于未来漏洞理论中的形式化结果。

0
下载
关闭预览

相关内容

《软件定义网络元素与机器代码的形式化验证》
专知会员服务
14+阅读 · 2025年11月18日
【牛津大学博士论文】可微分编程的结构基础,176页pdf
专知会员服务
26+阅读 · 2023年8月20日
【2023新书】程序证明,Program Proofs,642页pdf
专知会员服务
67+阅读 · 2023年3月29日
可解释强化学习,Explainable Reinforcement Learning: A Survey
专知会员服务
132+阅读 · 2020年5月14日
总结-空洞卷积(Dilated/Atrous Convolution)
极市平台
41+阅读 · 2019年2月25日
变分自编码器VAE:一步到位的聚类方案
PaperWeekly
25+阅读 · 2018年9月18日
再谈变分自编码器VAE:从贝叶斯观点出发
PaperWeekly
13+阅读 · 2018年4月2日
国家自然科学基金
4+阅读 · 2017年12月31日
国家自然科学基金
18+阅读 · 2017年12月31日
国家自然科学基金
6+阅读 · 2017年12月31日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
3+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
VIP会员
最新内容
现代战争的隐蔽系统:伊朗战争十大启示
专知会员服务
0+阅读 · 今天3:58
ICML 2026 | 自回归Boltzmann生成器重塑分子采样
专知会员服务
3+阅读 · 6月26日
GNN跨域综述:从消息传递到图基础模型
专知会员服务
4+阅读 · 6月26日
无人机自主控制与人工智能:系统性综述
专知会员服务
12+阅读 · 6月26日
巡飞弹与反无人机系统——现代战场的两大支柱
《打造“黄金舰队”》57页报告
专知会员服务
4+阅读 · 6月26日
《北约数字教官网络发展路径》128页报告
专知会员服务
3+阅读 · 6月26日
ECCV 2026 | MIMFlow:MIM与归一化流统一图像生成
专知会员服务
7+阅读 · 6月25日
网状网络及其在军事领域的运用
专知会员服务
8+阅读 · 6月25日
无美国参与的欧洲战争方式(万字长文)
专知会员服务
8+阅读 · 6月25日
相关基金
国家自然科学基金
4+阅读 · 2017年12月31日
国家自然科学基金
18+阅读 · 2017年12月31日
国家自然科学基金
6+阅读 · 2017年12月31日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
3+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
Top
微信扫码咨询专知VIP会员