安全问题频现,程序分析如何提前捕获安全漏?
如果你对区块链技术感兴趣的话,可能听说过很多攻击者利用程序代码中的漏洞而导致的大量资金被盗事件。例如,2016 年臭名昭著的 DAO 攻击事件,攻击者利用一个名叫「重入」的漏洞超额提取了他们原本所能提取的资金。另一个更近期的事件是闪电贷攻击,发生于 2022 年 4 月 17 日,造成 1.82 亿美元的资金损失。虽然所有攻击都源于底层源代码的安全漏洞,但好消息是现在已经有能够检测此类漏洞的程序分析技术。在接下去的几篇博文中,我们会解释程序分析是什么,以及它如何帮助在部署前捕获安全漏洞。
程序分析简介
程序分析指的是一类用于检测程序中安全漏洞的技术。程序分析有两种主要形式,动态和静态。动态程序分析的目标是通过执行程序来检测问题,而静态程序分析则无需运行程序本身就可以对源代码进行分析。然而,在这些技术之中,只有静态分析能够确保程序中不存在漏洞。相反,不同于静态分析,动态分析能证明问题的存在,它并不能够证明漏洞并不存在。
乍一看,静态分析听起来似乎很神秘:表面看来,静态分析似乎违反了一个被总结为莱斯定理「Rice's theorem」的基本原则,该定理声称程序的每一个非平凡性质都是不可判定的。在此,语义属性是关于程序行为的属性(与语法属性不同),而非平凡性质是指只有某些程序拥有而其他程序没有的性质。与我们手头话题更相关的是,安全漏洞的存在是非平凡性质的一个典型例子。因此,关于「这个程序是否存在安全漏洞」这一问题,莱斯定理告诉我们没有一个算法能够终结并准确回答这一问题。
那么,静态分析的可行性源自哪里呢?答案藏于以下的观察:没错,没有一个算法能够准确地给出是或否,但可以有一个算法在程序有安全漏洞时总是会回答「是」,在程序没有安全漏洞时算法有时可能也会回答「是」。换句话说,只要我们愿意容忍一些误报,我们就可以绕过赖斯定理和不可判定性。
静态分析原理
让我们以高一维度的视角来看看静态分析是如何运作的。静态分析的基本原理是将程序所处的状态集合进行过近似「over-approximate」。我们将程序状态视为从变量到值的映射。一般来说,不存在一个算法能够明确也许是执行某一程序引起的确切程序状态集。但可以近似该集合,如下图所示:

此处,蓝色的不规则形状对应在执行某些程序时可能出现的实际状态集,红色区域对应预示错误或安全漏洞的「坏状态」。由于不可判定性,永远没有一个算法能够准确表明蓝色区域到底是什么,但是我们能设计一个算法以系统性的方式过近似这个蓝色区域,如上面常规绿色区域所示。只要绿色和红色的交集为空,我们就有证据证明程序没有做坏事。然而,如果我们的过近似不够不准确,可能会使得红色区域重叠,即使蓝色和红色区域的交集依旧为空,如下图所示:

这种情况会导致所谓的「误报」,由于分析与真实问题不相应而报告的虚假错误。一般而言,静态分析的圣杯是构造过近似,即 (1)过近似足够准确因此我们在实际中不会获得很误报 (2)过近似的计算足够有效率,因此分析可扩展到我们所关心的现实世界的程序。
附带说明一下,还可以设计静态分析算法来近似如下所示的程序行为:

在此情况下,绿色区域(通过静态分析计算)包含在蓝色区域内(表示实际状态),和另一种方式正好相反。这种分析是不可靠的,意味着可能会漏掉真正的程序错误:正如我们在上图所看到的那样,绿色和红色的交集为空,因此即使程序真的存在漏洞,分析也不会报告问题。这会导致所谓的假阴性,真正的漏洞被静态分析给遗漏了。
大体来说,如果我们想获得可证明的安全性,我们会想要可靠的从来不会有误报的静态分析器,同时还需要足够精确,在实践时不会报告太多误报。然而,好消息是,几十年的正统研究表明设计这样的静态分析器有可能的。下篇博文,我们会更详细地介绍静态分析器具体是如何运作的!
总结
程序分析是一种有效的能够捕捉各种程序中安全漏洞的技术,包括区块链应用程序。此外,可靠的静态分析器的过近似程序行为能确保整个类别中不存在漏洞。
1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险
2.本文版权归属原作所有,仅代表作者本人观点,不代表本站的观点或立场
您可能感兴趣
-
2026 链上 RWA 年中报告:代币化股票市值一年翻倍,但九成权利是空壳原文标题:The State of Onchain Real-World Assets in Mid-2026 原文作者:insights4vc 原文编译:深潮 TechFlow深潮导读:链上代币化资
-
a16z:从公司到 DAO,DUNA 或成为下一代组织形式原文标题:From corporation to crowd: How organizations evolved through time and technology 原文作者:Tim Sulli
-
单日 7.2 万亿韩元,外资周五净买入创纪录!华尔街:韩股资金面逆风已经消退作者:张雅琦,华尔街见闻韩国股市资金面正出现实质性转机。外资单日净买入规模刷新历史纪录,国内机构的抛售压力也大幅消退,叠加监管层收紧杠杆ETF准入,多重因素共同指向KOSPI市场波动率的边际改善。 7
-
高盛:7 月砸穿拥挤交易,美股牛市没断但更难做了作者:潘凌飞,华尔街见闻7月的美股,不像指数层面的崩盘,更像仓位层面的清算。标普500本周守住了阵脚,整个7月波动区间只有3.5%,距离高点不到2%。更反直觉的是,等权重标普、低波动标普、剔除AI后的
-
拯救 AI 交易?Citadel 接盘“AI 股神”持仓,投行策略师“终于搞明白大跌原因,现在可以往前看了”作者:张雅琦,华尔街见闻Citadel收购对冲基金Situational Awareness的公开股票组合,被市场人士广泛认为是遏制本轮AI股大跌的关键一步。这笔交易消除了一个已知的被迫卖家,令陷入自
-
以真实商业造血破解行业痛点,VITAL-X 生态代币 VXD 将于 8 月 5 日正式上线在全球 Web3 产业从“空转炒作”加速向“实体赋能与真实商业落地”深度变革的关键时刻,全球瞩目的下一代 Web3 商业基础设施平台 VITAL-X 官方正式宣布:经过长期筹备与生态布局,平台生态迎来
-
“这个月让你们失望了”:25 岁 AI 天才 200 亿美元爆仓自白书作者:谷昱,ChainCatcher2001年出生的天才少年,15岁考入哥伦比亚大学,19岁以全系第一名毕业,拿下数学、统计、经济三个学位。Leopold Aschenbrenner 曾是OpenAI
-
美联储重大变革?报道:沃什考虑减少议息会议频率,打破 40 年惯例作者:杨宸,华尔街见闻美联储主席沃什正考虑削减联邦公开市场委员会(FOMC)每年定期议息会议的次数。此举若落地,将是美联储数十年来运作方式最重大的变革之一,也将成为沃什执掌这家央行以来迄今最具分量的政
- 成交量排行
- 币种热搜榜
World Liberty Financial USDv
泰达币
比特币
以太坊
USD Coin
Solana
瑞波币
Ronin Network
币安币
莱特币
艾达币
狗狗币
大零币
Wormhole
比特现金
SHIB
UNI
OKB
AR
ICP
DOT
LUNC
YGG
DYDX
LPT
ETC