首页 > 最新文献

2023 IEEE 36th Computer Security Foundations Symposium (CSF)最新文献

英文 中文
HoRStify: Sound Security Analysis of Smart Contracts HoRStify:智能合约的可靠安全性分析
Pub Date : 2023-01-31 DOI: 10.1109/CSF57540.2023.00023
Sebastian Holler, Sebastian Biewer, Clara Schneidewind
The cryptocurrency Ethereum is the most widely used execution platform for smart contracts. Smart contracts are distributed applications, which govern financial assets and, hence, can implement advanced financial instruments, such as decentralized exchanges or autonomous organizations (DAOs). Their financial nature makes smart contracts an attractive attack target, as demonstrated by numerous exploits on popular contracts resulting in financial damage of millions of dollars. This omnipresent attack hazard motivates the need for sound static analysis tools, which assist smart contract developers in eliminating contract vulnerabilities a priori to deployment. Vulnerability assessment that is sound and insightful for EVM contracts is a formidable challenge because contracts execute low-level bytecode in a largely unknown and potentially hostile execution environment. So far, there exists no provably sound automated analyzer that allows for the verification of security properties based on program dependencies, even though prevalent attack classes fall into this category. In this work, we present HoRStify, the first automated analyzer for dependency properties of Ethereum smart contracts based on sound static analysis. HoRStify grounds its soundness proof on a formal proof framework for static program slicing that we instantiate to the semantics of EVM bytecode. We demonstrate that HoRStify is flexible enough to soundly verify the absence of famous attack classes such as timestamp dependency and, at the same time, performant enough to analyze real-world smart contracts.
加密货币以太坊是智能合约使用最广泛的执行平台。智能合约是分布式应用程序,它管理金融资产,因此可以实现先进的金融工具,例如去中心化交易所或自治组织(dao)。它们的金融性质使智能合约成为一个有吸引力的攻击目标,正如对流行合约的大量利用所证明的那样,造成了数百万美元的经济损失。这种无处不在的攻击危险激发了对健全的静态分析工具的需求,这些工具可以帮助智能合约开发人员消除部署之前的合约漏洞。对EVM合约进行可靠而深刻的漏洞评估是一项艰巨的挑战,因为合约在一个很大程度上未知且可能存在敌意的执行环境中执行低级字节码。到目前为止,还没有可靠的自动化分析器允许基于程序依赖项验证安全属性,尽管流行的攻击类属于这一类。在这项工作中,我们提出了HoRStify,这是基于健全静态分析的以太坊智能合约依赖属性的第一个自动分析器。HoRStify将其可靠性证明建立在静态程序切片的正式证明框架上,我们将其实例化为EVM字节码的语义。我们证明了HoRStify足够灵活,可以很好地验证时间戳依赖等著名攻击类的缺失,同时,它的性能足以分析现实世界的智能合约。
{"title":"HoRStify: Sound Security Analysis of Smart Contracts","authors":"Sebastian Holler, Sebastian Biewer, Clara Schneidewind","doi":"10.1109/CSF57540.2023.00023","DOIUrl":"https://doi.org/10.1109/CSF57540.2023.00023","url":null,"abstract":"The cryptocurrency Ethereum is the most widely used execution platform for smart contracts. Smart contracts are distributed applications, which govern financial assets and, hence, can implement advanced financial instruments, such as decentralized exchanges or autonomous organizations (DAOs). Their financial nature makes smart contracts an attractive attack target, as demonstrated by numerous exploits on popular contracts resulting in financial damage of millions of dollars. This omnipresent attack hazard motivates the need for sound static analysis tools, which assist smart contract developers in eliminating contract vulnerabilities a priori to deployment. Vulnerability assessment that is sound and insightful for EVM contracts is a formidable challenge because contracts execute low-level bytecode in a largely unknown and potentially hostile execution environment. So far, there exists no provably sound automated analyzer that allows for the verification of security properties based on program dependencies, even though prevalent attack classes fall into this category. In this work, we present HoRStify, the first automated analyzer for dependency properties of Ethereum smart contracts based on sound static analysis. HoRStify grounds its soundness proof on a formal proof framework for static program slicing that we instantiate to the semantics of EVM bytecode. We demonstrate that HoRStify is flexible enough to soundly verify the absence of famous attack classes such as timestamp dependency and, at the same time, performant enough to analyze real-world smart contracts.","PeriodicalId":179870,"journal":{"name":"2023 IEEE 36th Computer Security Foundations Symposium (CSF)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2023-01-31","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131394208","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
OblivIO: Securing Reactive Programs by Oblivious Execution with Bounded Traffic Overheads 用有限的流量开销通过遗忘执行来保护响应程序
Pub Date : 2023-01-19 DOI: 10.1109/CSF57540.2023.00014
Jeppe Fredsgaard Blaabjerg, Aslan Askarov
Traffic analysis attacks remain a significant problem for online security. Communication between nodes can be observed by network level attackers as it inherently takes place in the open. Despite online services increasingly using encrypted traffic, the shape of the traffic is not hidden. To prevent traffic analysis, the shape of a system's traffic must be independent of secrets. We investigate adapting the data-oblivious approach the reactive setting and present OblivIO, a secure language for writing reactive programs driven by network events. Our approach pads with dummy messages to hide which program sends are genuinely executed. We use an information-flow type system to provably enforce timing-sensitive noninterference. The type system is extended with potentials to bound the overhead in traffic introduced by our approach. We address challenges that arise from joining data-oblivious and reactive programming and demonstrate the feasibility of our resulting language by developing an interpreter that implements security critical operations as constant-time algorithms.
流量分析攻击仍然是网络安全的一个重要问题。节点之间的通信可以被网络级攻击者观察到,因为它本质上是在开放的环境中进行的。尽管在线服务越来越多地使用加密流量,但流量的形状并不隐藏。为了防止流量分析,系统流量的形状必须独立于秘密。我们研究了如何将数据无关方法应用于响应式设置,并提出了一种用于编写由网络事件驱动的响应式程序的安全语言OblivIO。我们的方法使用虚拟消息来隐藏真正执行的程序发送。我们使用信息流型系统来证明时间敏感的不干扰。类型系统被扩展,有可能限制由我们的方法引入的流量开销。我们解决了由数据无关和响应式编程结合而产生的挑战,并通过开发一个解释器来演示我们的结果语言的可行性,该解释器将安全关键操作实现为恒定时间算法。
{"title":"OblivIO: Securing Reactive Programs by Oblivious Execution with Bounded Traffic Overheads","authors":"Jeppe Fredsgaard Blaabjerg, Aslan Askarov","doi":"10.1109/CSF57540.2023.00014","DOIUrl":"https://doi.org/10.1109/CSF57540.2023.00014","url":null,"abstract":"Traffic analysis attacks remain a significant problem for online security. Communication between nodes can be observed by network level attackers as it inherently takes place in the open. Despite online services increasingly using encrypted traffic, the shape of the traffic is not hidden. To prevent traffic analysis, the shape of a system's traffic must be independent of secrets. We investigate adapting the data-oblivious approach the reactive setting and present OblivIO, a secure language for writing reactive programs driven by network events. Our approach pads with dummy messages to hide which program sends are genuinely executed. We use an information-flow type system to provably enforce timing-sensitive noninterference. The type system is extended with potentials to bound the overhead in traffic introduced by our approach. We address challenges that arise from joining data-oblivious and reactive programming and demonstrate the feasibility of our resulting language by developing an interpreter that implements security critical operations as constant-time algorithms.","PeriodicalId":179870,"journal":{"name":"2023 IEEE 36th Computer Security Foundations Symposium (CSF)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2023-01-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125981838","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Cross-Chain Swaps with Preferences 具有偏好的交叉链互换
Pub Date : 2022-10-21 DOI: 10.1109/CSF57540.2023.00031
Eric Chan, M. Chrobak, M. Lesani
Extreme valuation and volatility of cryptocurrencies require investors to diversify often which demands secure exchange protocols. A cross-chain swap protocol allows distrusting parties to securely exchange their assets. However, the current models and protocols assume predefined user preferences for acceptable outcomes. This paper presents a generalized model of swaps that allows each party to specify its preferences on the subsets of its incoming and outgoing assets. It shows that the existing swap protocols are not necessarily a strong Nash equilibrium in this model. It characterizes the class of swap graphs that have protocols that are safe, live and a strong Nash equilibrium, and presents such a protocol for this class. Further, it shows that deciding whether a swap is in this class is NP-hard through a reduction from 3SAT, and further is $Sigma_{2}^{mathsf{P}}$ -complete through a reduction from $existsforall mathsf{DNF}$.
加密货币的极端估值和波动性要求投资者经常多样化,这需要安全的交换协议。跨链交换协议允许互不信任的各方安全地交换他们的资产。然而,当前的模型和协议假定用户对可接受结果的预定义偏好。本文提出了一个广义的互换模型,该模型允许每一方指定其对其流入和流出资产子集的偏好。结果表明,现有的交换协议在该模型中并不一定是强纳什均衡。描述了一类具有安全、活和强纳什均衡协议的交换图,并给出了该类交换图的协议。此外,它还表明,通过3SAT的还原来确定交换是否属于该类是NP-hard的,并且通过$existsforall mathsf{DNF}$的还原来进一步确定$Sigma_{2}^{mathsf{P}}$ -complete。
{"title":"Cross-Chain Swaps with Preferences","authors":"Eric Chan, M. Chrobak, M. Lesani","doi":"10.1109/CSF57540.2023.00031","DOIUrl":"https://doi.org/10.1109/CSF57540.2023.00031","url":null,"abstract":"Extreme valuation and volatility of cryptocurrencies require investors to diversify often which demands secure exchange protocols. A cross-chain swap protocol allows distrusting parties to securely exchange their assets. However, the current models and protocols assume predefined user preferences for acceptable outcomes. This paper presents a generalized model of swaps that allows each party to specify its preferences on the subsets of its incoming and outgoing assets. It shows that the existing swap protocols are not necessarily a strong Nash equilibrium in this model. It characterizes the class of swap graphs that have protocols that are safe, live and a strong Nash equilibrium, and presents such a protocol for this class. Further, it shows that deciding whether a swap is in this class is NP-hard through a reduction from 3SAT, and further is $Sigma_{2}^{mathsf{P}}$ -complete through a reduction from $existsforall mathsf{DNF}$.","PeriodicalId":179870,"journal":{"name":"2023 IEEE 36th Computer Security Foundations Symposium (CSF)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2022-10-21","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116159352","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Smart Contract Synthesis Modulo Hyperproperties 智能合约合成模超性质
Pub Date : 2022-08-15 DOI: 10.1109/CSF57540.2023.00006
Norine Coenen, B. Finkbeiner, Jana Hofmann, Julia J. Tillman
Smart contracts are small but highly security-critical programs that implement wallets, token systems, auctions, crowd funding systems, elections, and other multi-party transactions on the blockchain. A broad range of methods has been developed to ensure that a smart contract is functionally correct. However, smart contracts often additionally need to satisfy certain hyperproperties, such as symmetry, determinism, or an information flow policy. In this paper, we show how a synthesis method for smart contracts can ensure that the contract satisfies its desired hyperproperties. We build on top of a recently developed synthesis approach from specifications in the temporal logic TSL. We present HyperTSL, an extension of TSL for the specification of hyperproperties of infinite-state software. As a preprocessing step, we show how to detect if a hyperproperty has an equivalent formulation as a (simpler) trace property. Finally, we describe how to refine a synthesized contract to adhere to its HyperTSL specification.
智能合约是一种小型但高度安全的程序,用于在区块链上实现钱包、令牌系统、拍卖、众筹系统、选举和其他多方交易。已经开发了一系列方法来确保智能合约在功能上是正确的。然而,智能合约通常还需要满足某些超属性,例如对称性、确定性或信息流策略。在本文中,我们展示了智能合约的综合方法如何确保合约满足其期望的超属性。我们基于时间逻辑TSL规范中最近开发的综合方法进行构建。我们提出了HyperTSL,它是TSL的一个扩展,用于描述无限状态软件的超属性。作为预处理步骤,我们将展示如何检测超属性是否具有作为(更简单的)跟踪属性的等效公式。最后,我们描述了如何改进一个综合契约,使其符合HyperTSL规范。
{"title":"Smart Contract Synthesis Modulo Hyperproperties","authors":"Norine Coenen, B. Finkbeiner, Jana Hofmann, Julia J. Tillman","doi":"10.1109/CSF57540.2023.00006","DOIUrl":"https://doi.org/10.1109/CSF57540.2023.00006","url":null,"abstract":"Smart contracts are small but highly security-critical programs that implement wallets, token systems, auctions, crowd funding systems, elections, and other multi-party transactions on the blockchain. A broad range of methods has been developed to ensure that a smart contract is functionally correct. However, smart contracts often additionally need to satisfy certain hyperproperties, such as symmetry, determinism, or an information flow policy. In this paper, we show how a synthesis method for smart contracts can ensure that the contract satisfies its desired hyperproperties. We build on top of a recently developed synthesis approach from specifications in the temporal logic TSL. We present HyperTSL, an extension of TSL for the specification of hyperproperties of infinite-state software. As a preprocessing step, we show how to detect if a hyperproperty has an equivalent formulation as a (simpler) trace property. Finally, we describe how to refine a synthesized contract to adhere to its HyperTSL specification.","PeriodicalId":179870,"journal":{"name":"2023 IEEE 36th Computer Security Foundations Symposium (CSF)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2022-08-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122696333","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 2
Securing Optimized Code Against Power Side Channels 针对电源侧信道保护优化代码
Pub Date : 2022-07-06 DOI: 10.1109/CSF57540.2023.00016
R. Tsoupidi, Roberto Castañeda Lozano, E. Troubitsyna, Panos Papadimitratos
Side-channel attacks impose a serious threat to cryptographic algorithms, including widely employed ones, such as AES and RSA. These attacks take advantage of the algorithm implementation in hardware or software to extract secret information via side channels. Software masking is a mitigation approach against power side-channel attacks aiming at hiding the secret-revealing dependencies from the power footprint of a vulnerable implementation. However, this type of software mitigation often depends on general-purpose compilers, which do not preserve non-functional properties. Moreover, microarchitectural features, such as the memory bus and register reuse, may also leak secret information. These abstractions are not visible at the high-level implementation of the program. Instead, they are decided at compile time. To remedy these problems, security engineers often sacrifice code efficiency by turning off compiler optimization and/or performing local, post-compilation transformations. This paper proposes Secure by Construction Code Generation (SecCG), a constraint-based compiler approach that generates optimized yet protected against power side channels code. SecCG controls the quality of the mitigated program by efficiently searching the best possible low-level implementation according to a processor cost model. In our experiments with twelve masked cryptographic functions up to 100 lines of code on Mips32 and ARM Thumb, SecCG speeds up the generated code from 77% to 6.6 times compared to non-optimized secure code with an overhead of up to 13% compared to non-secure optimized code at the expense of a high compilation cost. For security and compiler researchers, this paper proposes a formal model to generate power side channel free low-level code. For software engineers, SecCG provides a practical approach to optimize performance critical and vulnerable cryptographic implementations that preserve security properties against power side channels.
侧信道攻击对加密算法造成严重威胁,包括AES和RSA等广泛使用的加密算法。这些攻击利用硬件或软件中的算法实现,通过侧信道提取秘密信息。软件屏蔽是一种针对功率侧信道攻击的缓解方法,旨在从易受攻击的实现的功率占用中隐藏泄露秘密的依赖关系。然而,这种类型的软件缓解通常依赖于不保留非功能属性的通用编译器。此外,微架构特性,如内存总线和寄存器重用,也可能泄露机密信息。这些抽象在程序的高级实现中是不可见的。相反,它们在编译时决定。为了解决这些问题,安全工程师通常会通过关闭编译器优化和/或执行本地编译后转换来牺牲代码效率。本文提出了一种基于约束的编译器方法SecCG (Secure by Construction Code Generation),该方法可以生成优化的且受保护的功率侧信道代码。SecCG通过根据处理器成本模型有效地搜索可能的最佳底层实现来控制缓解程序的质量。在我们的实验中,在Mips32和ARM Thumb上使用了多达100行代码的12个掩码加密函数,与未优化的安全代码相比,SecCG将生成代码的速度从77%提高到6.6倍,与非安全优化代码相比,开销高达13%,代价是高昂的编译成本。针对安全性和编译器研究人员,本文提出了一种生成无功率侧信道的底层代码的形式化模型。对于软件工程师来说,SecCG提供了一种实用的方法来优化性能关键和易受攻击的加密实现,从而保持对电源侧信道的安全属性。
{"title":"Securing Optimized Code Against Power Side Channels","authors":"R. Tsoupidi, Roberto Castañeda Lozano, E. Troubitsyna, Panos Papadimitratos","doi":"10.1109/CSF57540.2023.00016","DOIUrl":"https://doi.org/10.1109/CSF57540.2023.00016","url":null,"abstract":"Side-channel attacks impose a serious threat to cryptographic algorithms, including widely employed ones, such as AES and RSA. These attacks take advantage of the algorithm implementation in hardware or software to extract secret information via side channels. Software masking is a mitigation approach against power side-channel attacks aiming at hiding the secret-revealing dependencies from the power footprint of a vulnerable implementation. However, this type of software mitigation often depends on general-purpose compilers, which do not preserve non-functional properties. Moreover, microarchitectural features, such as the memory bus and register reuse, may also leak secret information. These abstractions are not visible at the high-level implementation of the program. Instead, they are decided at compile time. To remedy these problems, security engineers often sacrifice code efficiency by turning off compiler optimization and/or performing local, post-compilation transformations. This paper proposes Secure by Construction Code Generation (SecCG), a constraint-based compiler approach that generates optimized yet protected against power side channels code. SecCG controls the quality of the mitigated program by efficiently searching the best possible low-level implementation according to a processor cost model. In our experiments with twelve masked cryptographic functions up to 100 lines of code on Mips32 and ARM Thumb, SecCG speeds up the generated code from 77% to 6.6 times compared to non-optimized secure code with an overhead of up to 13% compared to non-secure optimized code at the expense of a high compilation cost. For security and compiler researchers, this paper proposes a formal model to generate power side channel free low-level code. For software engineers, SecCG provides a practical approach to optimize performance critical and vulnerable cryptographic implementations that preserve security properties against power side channels.","PeriodicalId":179870,"journal":{"name":"2023 IEEE 36th Computer Security Foundations Symposium (CSF)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2022-07-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127231825","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 2
Basilic: Resilient-Optimal Consensus Protocols with Benign and Deceitful Faults Basilic:具有良性和欺骗性错误的弹性最优共识协议
Pub Date : 2022-04-19 DOI: 10.1109/CSF57540.2023.00002
Alejandro Ranchal-Pedrosa, V. Gramoli
The problem of Byzantine consensus has been key to designing secure distributed systems. However, it is particularly difficult, mainly due to the presence of Byzantine processes that act arbitrarily and the unknown message delays in general networks. Although it is well known that both safety and liveness are at risk as soon as $n/3$ Byzantine processes fail, very few works attempted to characterize precisely the faults that produce safety violations from the faults that produce termination violations. In this paper, we present a new lower bound on the solvability of the consensus problem by distinguishing deceitful faults violating safety and benign faults violating termination from the more general Byzantine faults, in what we call the Byzantine-deceitful-benign fault model. We show that one cannot solve consensus if $nleq 3t+d+2q$ with $t$ Byzantine processes, $d$ deceitful processes, and $q$ benign processes. In addition, we show that this bound is tight by presenting the Basilic class of consensus protocols that solve consensus when $n > 3t+d+2q$. These protocols differ in the number of processes from which they wait to receive messages before progressing. Each of these protocols is thus better suited for some applications depending on the predominance of benign or deceitful faults.
拜占庭共识问题一直是设计安全分布式系统的关键。然而,这是特别困难的,主要是由于在一般网络中存在任意行为的拜占庭进程和未知消息延迟。虽然众所周知,一旦$n/3$拜占庭过程失败,安全性和活跃性都将面临风险,但很少有研究试图准确地描述导致安全违规的故障与导致终止违规的故障。在本文中,我们通过将违反安全的欺骗性故障和违反终止的良性故障与更一般的拜占庭故障区分开来,给出了共识问题可解性的一个新的下界,我们称之为拜占庭-欺骗性-良性故障模型。我们表明,如果$nleq 3t+d+2q$与$t$拜占庭过程,$d$欺诈过程和$q$良性过程不能解决共识。此外,我们通过提出在$n > 3t+d+2q$时解决共识的Basilic共识协议类来证明该界限是紧密的。这些协议在进程进行之前等待接收消息的进程数量不同。因此,这些协议中的每一个都更适合于某些应用程序,这取决于良性或欺骗性故障的占主导地位。
{"title":"Basilic: Resilient-Optimal Consensus Protocols with Benign and Deceitful Faults","authors":"Alejandro Ranchal-Pedrosa, V. Gramoli","doi":"10.1109/CSF57540.2023.00002","DOIUrl":"https://doi.org/10.1109/CSF57540.2023.00002","url":null,"abstract":"The problem of Byzantine consensus has been key to designing secure distributed systems. However, it is particularly difficult, mainly due to the presence of Byzantine processes that act arbitrarily and the unknown message delays in general networks. Although it is well known that both safety and liveness are at risk as soon as $n/3$ Byzantine processes fail, very few works attempted to characterize precisely the faults that produce safety violations from the faults that produce termination violations. In this paper, we present a new lower bound on the solvability of the consensus problem by distinguishing deceitful faults violating safety and benign faults violating termination from the more general Byzantine faults, in what we call the Byzantine-deceitful-benign fault model. We show that one cannot solve consensus if $nleq 3t+d+2q$ with $t$ Byzantine processes, $d$ deceitful processes, and $q$ benign processes. In addition, we show that this bound is tight by presenting the Basilic class of consensus protocols that solve consensus when $n > 3t+d+2q$. These protocols differ in the number of processes from which they wait to receive messages before progressing. Each of these protocols is thus better suited for some applications depending on the predominance of benign or deceitful faults.","PeriodicalId":179870,"journal":{"name":"2023 IEEE 36th Computer Security Foundations Symposium (CSF)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2022-04-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126471928","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 2
Robust Safety for Move 坚固的移动安全性
Pub Date : 2021-10-11 DOI: 10.1109/CSF57540.2023.00045
Marco Patrignani, Sam Blackshear
A program that maintains key safety properties even when interacting with arbitrary untrusted code is said to enjoy robust safety. Proving that a program written in a mainstream language is robustly safe is typically challenging because it requires static verification tools that work precisely even in the presence of language features like dynamic dispatch and shared mutability. The emerging Move programming language was designed to support strong encapsulation and static verification in the service of secure smart contract programming. However, the language design has not been analysed using a theoretical framework like robust safety. In this paper, we define robust safety for the Move language and introduce a generic framework for static tools that wish to enforce it. Our framework consists of two abstract components: a program verifier that can prove an invariant holds in a closed-world setting (e.g., the Move Prover [16], [47]), and a novel encapsulator that checks if the verifier's result generalizes to an open-world setting. We formalise an escape analysis as an instantiation of the encapsulator and prove that it attains the required security properties. Finally, we implement our encapsulator as an extension to the Move Prover and use the combination to analyse a large representative benchmark set of real-world Move programs. This toolchain certifies >99% of the Move modules we analyse, validating that automatic enforcement of strong security properties like robust safety is practical for Move. Additionally, our results tell that security-centric language design can be effective in attaining strong security properties such as robust safety.
即使在与任意不受信任的代码交互时也能保持关键安全属性的程序被称为具有健壮的安全性。证明用主流语言编写的程序是可靠安全的通常是具有挑战性的,因为它需要静态验证工具,即使在存在动态调度和共享可变性等语言特性的情况下也能精确工作。新兴的Move编程语言旨在支持安全智能合约编程服务中的强封装和静态验证。然而,语言设计还没有使用像鲁棒安全性这样的理论框架进行分析。在本文中,我们为Move语言定义了健壮的安全性,并为希望执行它的静态工具引入了一个通用框架。我们的框架由两个抽象组件组成:一个程序验证器,它可以证明一个不变量在封闭世界环境中成立(例如,移动验证器[16],[47]),以及一个新的封装器,它检查验证器的结果是否推广到开放世界环境。我们将转义分析形式化为封装器的实例化,并证明它达到了所需的安全属性。最后,我们将封装器作为Move prove的扩展来实现,并使用这个组合来分析实际Move程序的大型代表性基准集。该工具链认证了我们分析的99%的Move模块,验证了自动执行强大的安全属性(如鲁棒安全性)对于Move是实用的。此外,我们的结果表明,以安全为中心的语言设计可以有效地获得强大的安全属性,例如健壮安全性。
{"title":"Robust Safety for Move","authors":"Marco Patrignani, Sam Blackshear","doi":"10.1109/CSF57540.2023.00045","DOIUrl":"https://doi.org/10.1109/CSF57540.2023.00045","url":null,"abstract":"A program that maintains key safety properties even when interacting with arbitrary untrusted code is said to enjoy robust safety. Proving that a program written in a mainstream language is robustly safe is typically challenging because it requires static verification tools that work precisely even in the presence of language features like dynamic dispatch and shared mutability. The emerging Move programming language was designed to support strong encapsulation and static verification in the service of secure smart contract programming. However, the language design has not been analysed using a theoretical framework like robust safety. In this paper, we define robust safety for the Move language and introduce a generic framework for static tools that wish to enforce it. Our framework consists of two abstract components: a program verifier that can prove an invariant holds in a closed-world setting (e.g., the Move Prover [16], [47]), and a novel encapsulator that checks if the verifier's result generalizes to an open-world setting. We formalise an escape analysis as an instantiation of the encapsulator and prove that it attains the required security properties. Finally, we implement our encapsulator as an extension to the Move Prover and use the combination to analyse a large representative benchmark set of real-world Move programs. This toolchain certifies >99% of the Move modules we analyse, validating that automatic enforcement of strong security properties like robust safety is practical for Move. Additionally, our results tell that security-centric language design can be effective in attaining strong security properties such as robust safety.","PeriodicalId":179870,"journal":{"name":"2023 IEEE 36th Computer Security Foundations Symposium (CSF)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2021-10-11","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132964204","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 4
Towards a Game-Theoretic Security Analysis of Off-Chain Protocols 链下协议的博弈论安全性分析
Pub Date : 2021-09-15 DOI: 10.1109/CSF57540.2023.00003
Sophie Rain, Zeta Avarikioti, Laura Kov'acs, Matteo Maffei
Off-chain protocols constitute one of the most promising approaches to solve the inherent scalability issue of blockchain technologies. The core idea is to let parties transact on-chain only once to establish a channel between them, leveraging later on the resulting channel paths to perform arbitrarily many peer-to-peer transactions off-chain. While significant progress has been made in terms of proof techniques for off-chain protocols, existing approaches do not capture the game-theoretic incentives at the core of their design, which led to overlooking significant attack vectors like the Wormhole attack in the past. In this work we take a first step towards a principled game-theoretic security analysis of off-chain protocols by introducing the first game-theoretic model that is expressive enough to reason about their security. We advocate the use of Extensive Form Games (EFGs) and introduce two instances of EFGs to capture security properties of the closing and the routing of the Lightning Network. Specifically, we model the closing protocol, which relies on punishment mechanisms to disincentivize parties to upload old channel states on-chain. Moreover, we model the routing protocol, thereby formally characterizing the Wormhole attack, a vulnerability that undermines the fee-based incentive mechanism underlying the Lightning Network.
脱链协议是解决区块链技术固有可扩展性问题的最有前途的方法之一。其核心思想是让各方只在链上进行一次交易,以在它们之间建立一个通道,随后利用产生的通道路径来执行任意多的点对点链下交易。虽然在链下协议的证明技术方面取得了重大进展,但现有的方法并没有捕捉到其设计核心的博弈论激励,这导致忽视了过去像虫洞攻击这样的重要攻击媒介。在这项工作中,我们通过引入第一个博弈论模型,向链下协议的原则性博弈论安全性分析迈出了第一步,该模型具有足够的表现力,可以对其安全性进行推理。我们提倡使用扩展形式游戏(EFGs),并介绍了两个EFGs的实例来捕获闪电网络的关闭和路由的安全属性。具体来说,我们对关闭协议进行了建模,该协议依赖于惩罚机制来阻止各方在链上上传旧的通道状态。此外,我们对路由协议进行了建模,从而正式表征了虫洞攻击,这是一个破坏闪电网络底层基于收费的激励机制的漏洞。
{"title":"Towards a Game-Theoretic Security Analysis of Off-Chain Protocols","authors":"Sophie Rain, Zeta Avarikioti, Laura Kov'acs, Matteo Maffei","doi":"10.1109/CSF57540.2023.00003","DOIUrl":"https://doi.org/10.1109/CSF57540.2023.00003","url":null,"abstract":"Off-chain protocols constitute one of the most promising approaches to solve the inherent scalability issue of blockchain technologies. The core idea is to let parties transact on-chain only once to establish a channel between them, leveraging later on the resulting channel paths to perform arbitrarily many peer-to-peer transactions off-chain. While significant progress has been made in terms of proof techniques for off-chain protocols, existing approaches do not capture the game-theoretic incentives at the core of their design, which led to overlooking significant attack vectors like the Wormhole attack in the past. In this work we take a first step towards a principled game-theoretic security analysis of off-chain protocols by introducing the first game-theoretic model that is expressive enough to reason about their security. We advocate the use of Extensive Form Games (EFGs) and introduce two instances of EFGs to capture security properties of the closing and the routing of the Lightning Network. Specifically, we model the closing protocol, which relies on punishment mechanisms to disincentivize parties to upload old channel states on-chain. Moreover, we model the routing protocol, thereby formally characterizing the Wormhole attack, a vulnerability that undermines the fee-based incentive mechanism underlying the Lightning Network.","PeriodicalId":179870,"journal":{"name":"2023 IEEE 36th Computer Security Foundations Symposium (CSF)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2021-09-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126883738","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 4
Optimally Hiding Object Sizes with Constrained Padding 最佳隐藏对象大小与约束填充
Pub Date : 2021-08-03 DOI: 10.1109/CSF57540.2023.00004
Andrew C. Reed, M. Reiter
Among the most challenging traffic-analysis attacks to confound are those leveraging the sizes of objects downloaded over the network. In this paper we systematically analyze this problem under realistic constraints regarding the padding overhead that the object store is willing to incur. We give algorithms to compute privacy-optimal padding schemes—specifically that minimize the network observer's information gain from a downloaded object's padded size—in several scenarios of interest: per-object padding, in which the object store responds to each request for an object with the same padded copy; per-request padding, in which the object store pads an object anew each time it serves that object; and a scenario unlike the previous ones in that the object store is unable to leverage a known distribution over the object queries. We provide constructions for privacy-optimal padding in each case, compare them to recent contenders in the research literature, and evaluate their performance on practical datasets.
最具挑战性的流量分析攻击是那些利用通过网络下载的对象大小的攻击。在本文中,我们系统地分析了这个问题在现实的约束下,关于填充开销,对象存储愿意招致。我们给出了计算隐私最优填充方案的算法——特别是最小化网络观察者从下载对象的填充大小中获得的信息——在几个感兴趣的场景中:每个对象填充,其中对象存储用相同的填充副本响应对对象的每个请求;每次请求填充(Per-request padding),对象存储库在每次服务一个对象时重新填充一个对象;与前面的场景不同的是,对象存储无法在对象查询上利用已知的分布。我们在每种情况下都提供了隐私最优填充的结构,将它们与研究文献中的最新竞争者进行比较,并评估它们在实际数据集上的性能。
{"title":"Optimally Hiding Object Sizes with Constrained Padding","authors":"Andrew C. Reed, M. Reiter","doi":"10.1109/CSF57540.2023.00004","DOIUrl":"https://doi.org/10.1109/CSF57540.2023.00004","url":null,"abstract":"Among the most challenging traffic-analysis attacks to confound are those leveraging the sizes of objects downloaded over the network. In this paper we systematically analyze this problem under realistic constraints regarding the padding overhead that the object store is willing to incur. We give algorithms to compute privacy-optimal padding schemes—specifically that minimize the network observer's information gain from a downloaded object's padded size—in several scenarios of interest: per-object padding, in which the object store responds to each request for an object with the same padded copy; per-request padding, in which the object store pads an object anew each time it serves that object; and a scenario unlike the previous ones in that the object store is unable to leverage a known distribution over the object queries. We provide constructions for privacy-optimal padding in each case, compare them to recent contenders in the research literature, and evaluate their performance on practical datasets.","PeriodicalId":179870,"journal":{"name":"2023 IEEE 36th Computer Security Foundations Symposium (CSF)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2021-08-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133774756","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 1
Formalizing Stack Safety as a Security Property 将堆栈安全性形式化为安全属性
Pub Date : 2021-05-02 DOI: 10.1109/CSF57540.2023.00037
S. Anderson, Roberto Blanco, Leonidas Lampropoulos, B. Pierce, A. Tolmach
The term stack safety is used to describe a variety of compiler, runtime, and hardware mechanisms for protecting stack memory. Unlike “the heap,” the ISA-level stack does not correspond to a single high-level language concept: different compilers use it in different ways to support procedural and functional abstraction mechanisms from a wide range of languages. This protean nature makes it difficult to nail down what it means to correctly enforce stack safety.
术语堆栈安全用于描述保护堆栈内存的各种编译器、运行时和硬件机制。与“堆”不同,isa级堆栈不对应于单一的高级语言概念:不同的编译器以不同的方式使用它来支持来自各种语言的过程和功能抽象机制。这种千变万化的特性使得很难确定正确执行堆栈安全的意义。
{"title":"Formalizing Stack Safety as a Security Property","authors":"S. Anderson, Roberto Blanco, Leonidas Lampropoulos, B. Pierce, A. Tolmach","doi":"10.1109/CSF57540.2023.00037","DOIUrl":"https://doi.org/10.1109/CSF57540.2023.00037","url":null,"abstract":"The term stack safety is used to describe a variety of compiler, runtime, and hardware mechanisms for protecting stack memory. Unlike “the heap,” the ISA-level stack does not correspond to a single high-level language concept: different compilers use it in different ways to support procedural and functional abstraction mechanisms from a wide range of languages. This protean nature makes it difficult to nail down what it means to correctly enforce stack safety.","PeriodicalId":179870,"journal":{"name":"2023 IEEE 36th Computer Security Foundations Symposium (CSF)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2021-05-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129210005","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
期刊
2023 IEEE 36th Computer Security Foundations Symposium (CSF)
全部 Acc. Chem. Res. ACS Applied Bio Materials ACS Appl. Electron. Mater. ACS Appl. Energy Mater. ACS Appl. Mater. Interfaces ACS Appl. Nano Mater. ACS Appl. Polym. Mater. ACS BIOMATER-SCI ENG ACS Catal. ACS Cent. Sci. ACS Chem. Biol. ACS Chemical Health & Safety ACS Chem. Neurosci. ACS Comb. Sci. ACS Earth Space Chem. ACS Energy Lett. ACS Infect. Dis. ACS Macro Lett. ACS Mater. Lett. ACS Med. Chem. Lett. ACS Nano ACS Omega ACS Photonics ACS Sens. ACS Sustainable Chem. Eng. ACS Synth. Biol. Anal. Chem. BIOCHEMISTRY-US Bioconjugate Chem. BIOMACROMOLECULES Chem. Res. Toxicol. Chem. Rev. Chem. Mater. CRYST GROWTH DES ENERG FUEL Environ. Sci. Technol. Environ. Sci. Technol. Lett. Eur. J. Inorg. Chem. IND ENG CHEM RES Inorg. Chem. J. Agric. Food. Chem. J. Chem. Eng. Data J. Chem. Educ. J. Chem. Inf. Model. J. Chem. Theory Comput. J. Med. Chem. J. Nat. Prod. J PROTEOME RES J. Am. Chem. Soc. LANGMUIR MACROMOLECULES Mol. Pharmaceutics Nano Lett. Org. Lett. ORG PROCESS RES DEV ORGANOMETALLICS J. Org. Chem. J. Phys. Chem. J. Phys. Chem. A J. Phys. Chem. B J. Phys. Chem. C J. Phys. Chem. Lett. Analyst Anal. Methods Biomater. Sci. Catal. Sci. Technol. Chem. Commun. Chem. Soc. Rev. CHEM EDUC RES PRACT CRYSTENGCOMM Dalton Trans. Energy Environ. Sci. ENVIRON SCI-NANO ENVIRON SCI-PROC IMP ENVIRON SCI-WAT RES Faraday Discuss. Food Funct. Green Chem. Inorg. Chem. Front. Integr. Biol. J. Anal. At. Spectrom. J. Mater. Chem. A J. Mater. Chem. B J. Mater. Chem. C Lab Chip Mater. Chem. Front. Mater. Horiz. MEDCHEMCOMM Metallomics Mol. Biosyst. Mol. Syst. Des. Eng. Nanoscale Nanoscale Horiz. Nat. Prod. Rep. New J. Chem. Org. Biomol. Chem. Org. Chem. Front. PHOTOCH PHOTOBIO SCI PCCP Polym. Chem.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1