首页 > 最新文献

2019 IEEE Symposium on Security and Privacy (SP)最新文献

英文 中文
On the Feasibility of Rerouting-Based DDoS Defenses 基于重路由的DDoS防御可行性研究
Pub Date : 2019-04-01 DOI: 10.1109/SP.2019.00055
Muoi Tran, M. Kang, H. Hsiao, Wei-Hsuan Chiang, Shu-Po Tung, Yu-Su Wang
Large botnet-based flooding attacks have recently demonstrated unprecedented damage. However, the best-known end-to-end availability guarantees against flooding attacks require costly global-scale coordination among autonomous systems (ASes). A recent proposal called routing around congestion (or RAC) attempts to offer strong end-to-end availability to a selected critical flow by dynamically rerouting it to an uncongested detour path without requiring any inter-AS coordination. This paper presents an in-depth analysis of the (in)feasibility of the RAC defense and points out that its rerouting approach, though intriguing, cannot possibly solve the challenging flooding problem. An effective RAC solution should find an inter-domain detour path for its critical flow with the two following desired properties: (1) it guarantees the establishment of an arbitrary detour path of its choice, and (2) it isolates the established detour path from non-critical flows so that the path is used exclusively for its critical flow. However, we show a fundamental trade-off between the two desired properties, and as a result, only one of them can be achieved but not both. Worse yet, we show that failing to achieve either of the two properties makes the RAC defense not just ineffective but nearly unusable. When the newly established detour path is not isolated, a new adaptive adversary can detect it in real time and immediately congest the path, defeating the goals of the RAC defense. Conversely, when the establishment of an arbitrary detour path is not guaranteed, more than 80% of critical flows we test have only a small number (e.g., three or less) of detour paths that can actually be established and disjoint from each other, which significantly restricts the available options for the reliable RAC operation. The first lesson of this study is that BGP-based rerouting solutions in the current inter-domain infrastructure seem to be impractical due to implicit assumptions (e.g., the invisibility of poisoning messages) that are unattainable in BGP's current practice. Second, we learn that the analysis of protocol specifications alone is insufficient for the feasibility study of any new defense proposal and, thus, additional rigorous security analysis and various network evaluations, including real-world testing, are required. Finally, our findings in this paper agree well with the conclusion of the major literature about end-to-end guarantees; that is, strong end-to-end availability should be a security feature of the Internet routing by design, not an ad hoc feature obtained via exploiting current routing protocols.
最近,基于僵尸网络的大规模洪水攻击造成了前所未有的破坏。然而,最著名的防止洪水攻击的端到端可用性保证需要在自治系统(ase)之间进行昂贵的全球规模协调。最近一项名为“围绕拥塞路由”(或RAC)的提议试图通过将选定的关键流动态重路由到不拥塞的绕行路径,而不需要任何as间协调,从而为其提供强大的端到端可用性。本文对RAC防御的可行性进行了深入分析,并指出其重新路由方法虽然很有趣,但不可能解决具有挑战性的洪水问题。一个有效的RAC解决方案应该为其关键流找到一个域间绕行路径,并具有以下两个期望的属性:(1)它保证建立一个任意选择的绕行路径,(2)它将建立的绕行路径与非关键流隔离开来,以便该路径专门用于其关键流。然而,我们展示了两个期望属性之间的基本权衡,因此,只能实现其中一个,而不能同时实现。更糟糕的是,我们表明,未能实现这两个属性中的任何一个都会使RAC防御不仅无效,而且几乎无法使用。当新建立的绕行路径不被隔离时,新的自适应对手可以实时检测到它并立即阻塞路径,从而击败RAC防御的目标。相反,当不能保证任意绕行路径的建立时,我们测试的80%以上的关键流实际上只有少数(例如,三个或更少)可以建立并且彼此不相交的绕行路径,这极大地限制了可靠RAC操作的可用选项。本研究的第一个教训是,在当前的域间基础设施中,基于BGP的重路由解决方案似乎是不切实际的,因为隐含的假设(例如,中毒消息的不可见性)在BGP当前的实践中是无法实现的。其次,我们了解到,仅对协议规范进行分析是不足以对任何新的防御建议进行可行性研究的,因此,需要额外的严格安全分析和各种网络评估,包括实际测试。最后,本文的研究结果与主要文献关于端到端担保的结论一致;也就是说,强大的端到端可用性应该是设计时Internet路由的安全特性,而不是通过利用当前路由协议获得的临时特性。
{"title":"On the Feasibility of Rerouting-Based DDoS Defenses","authors":"Muoi Tran, M. Kang, H. Hsiao, Wei-Hsuan Chiang, Shu-Po Tung, Yu-Su Wang","doi":"10.1109/SP.2019.00055","DOIUrl":"https://doi.org/10.1109/SP.2019.00055","url":null,"abstract":"Large botnet-based flooding attacks have recently demonstrated unprecedented damage. However, the best-known end-to-end availability guarantees against flooding attacks require costly global-scale coordination among autonomous systems (ASes). A recent proposal called routing around congestion (or RAC) attempts to offer strong end-to-end availability to a selected critical flow by dynamically rerouting it to an uncongested detour path without requiring any inter-AS coordination. This paper presents an in-depth analysis of the (in)feasibility of the RAC defense and points out that its rerouting approach, though intriguing, cannot possibly solve the challenging flooding problem. An effective RAC solution should find an inter-domain detour path for its critical flow with the two following desired properties: (1) it guarantees the establishment of an arbitrary detour path of its choice, and (2) it isolates the established detour path from non-critical flows so that the path is used exclusively for its critical flow. However, we show a fundamental trade-off between the two desired properties, and as a result, only one of them can be achieved but not both. Worse yet, we show that failing to achieve either of the two properties makes the RAC defense not just ineffective but nearly unusable. When the newly established detour path is not isolated, a new adaptive adversary can detect it in real time and immediately congest the path, defeating the goals of the RAC defense. Conversely, when the establishment of an arbitrary detour path is not guaranteed, more than 80% of critical flows we test have only a small number (e.g., three or less) of detour paths that can actually be established and disjoint from each other, which significantly restricts the available options for the reliable RAC operation. The first lesson of this study is that BGP-based rerouting solutions in the current inter-domain infrastructure seem to be impractical due to implicit assumptions (e.g., the invisibility of poisoning messages) that are unattainable in BGP's current practice. Second, we learn that the analysis of protocol specifications alone is insufficient for the feasibility study of any new defense proposal and, thus, additional rigorous security analysis and various network evaluations, including real-world testing, are required. Finally, our findings in this paper agree well with the conclusion of the major literature about end-to-end guarantees; that is, strong end-to-end availability should be a security feature of the Internet routing by design, not an ad hoc feature obtained via exploiting current routing protocols.","PeriodicalId":272713,"journal":{"name":"2019 IEEE Symposium on Security and Privacy (SP)","volume":"42 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133700861","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}
引用次数: 25
Blind Certificate Authorities 盲证书颁发机构
Pub Date : 2019-04-01 DOI: 10.1109/SP.2019.00007
Liang Wang, Gilad Asharov, R. Pass, T. Ristenpart, Abhi Shelat
We explore how to build a blind certificate authority (CA). Unlike conventional CAs, which learn the exact identity of those registering a public key, a blind CA can simultaneously validate an identity and provide a certificate binding a public key to it, without ever learning the identity. Blind CAs would therefore allow bootstrapping truly anonymous systems in which no party ever learns who participates. In this work we focus on constructing blind CAs that can bind an email address to a public key. To do so, we first introduce secure channel injection (SCI) protocols. These allow one party (in our setting, the blind CA) to insert a private message into another party's encrypted communications. We construct an efficient SCI protocol for communications delivered over TLS, and use it to realize anonymous proofs of account ownership for SMTP servers. Combined with a zero-knowledge certificate signing protocol, we build the first blind CA that allows Alice to obtain a X.509 certificate binding her email address alice@domain.com to a public key of her choosing without ever revealing ``alice'' to the CA. We show experimentally that our system works with standard email server implementations as well as Gmail.
我们将探讨如何构建盲证书颁发机构(CA)。与传统CA不同的是,传统CA可以了解注册公钥的人的确切身份,而盲CA可以同时验证身份并提供将公钥绑定到其上的证书,而无需了解身份。因此,盲ca将允许引导真正的匿名系统,其中任何一方都不会知道谁参与了。在这项工作中,我们专注于构建可以将电子邮件地址绑定到公钥的盲ca。为此,我们首先介绍安全通道注入(SCI)协议。这些允许一方(在我们的设置中,盲CA)将私人消息插入另一方的加密通信中。我们构建了一个高效的SCI协议,用于TLS通信,并利用它实现了SMTP服务器账户所有权的匿名证明。结合零知识证书签名协议,我们构建了第一个盲CA,允许Alice获得X.509证书,将她的电子邮件地址alice@domain.com绑定到她选择的公钥,而不会向CA透露“Alice”。我们通过实验证明,我们的系统可以与标准电子邮件服务器实现以及Gmail一起工作。
{"title":"Blind Certificate Authorities","authors":"Liang Wang, Gilad Asharov, R. Pass, T. Ristenpart, Abhi Shelat","doi":"10.1109/SP.2019.00007","DOIUrl":"https://doi.org/10.1109/SP.2019.00007","url":null,"abstract":"We explore how to build a blind certificate authority (CA). Unlike conventional CAs, which learn the exact identity of those registering a public key, a blind CA can simultaneously validate an identity and provide a certificate binding a public key to it, without ever learning the identity. Blind CAs would therefore allow bootstrapping truly anonymous systems in which no party ever learns who participates. In this work we focus on constructing blind CAs that can bind an email address to a public key. To do so, we first introduce secure channel injection (SCI) protocols. These allow one party (in our setting, the blind CA) to insert a private message into another party's encrypted communications. We construct an efficient SCI protocol for communications delivered over TLS, and use it to realize anonymous proofs of account ownership for SMTP servers. Combined with a zero-knowledge certificate signing protocol, we build the first blind CA that allows Alice to obtain a X.509 certificate binding her email address alice@domain.com to a public key of her choosing without ever revealing ``alice'' to the CA. We show experimentally that our system works with standard email server implementations as well as Gmail.","PeriodicalId":272713,"journal":{"name":"2019 IEEE Symposium on Security and Privacy (SP)","volume":"43 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127188536","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}
引用次数: 11
Using Safety Properties to Generate Vulnerability Patches 使用安全属性生成漏洞补丁
Pub Date : 2019-04-01 DOI: 10.1109/SP.2019.00071
Zhen Huang, D. Lie, Gang Tan, T. Jaeger
Security vulnerabilities are among the most critical software defects in existence. When identified, programmers aim to produce patches that prevent the vulnerability as quickly as possible, motivating the need for automatic program repair (APR) methods to generate patches automatically. Unfortunately, most current APR methods fall short because they approximate the properties necessary to prevent the vulnerability using examples. Approximations result in patches that either do not fix the vulnerability comprehensively, or may even introduce new bugs. Instead, we propose property-based APR, which uses human-specified, program-independent and vulnerability-specific safety properties to derive source code patches for security vulnerabilities. Unlike properties that are approximated by observing the execution of test cases, such safety properties are precise and complete. The primary challenge lies in mapping such safety properties into source code patches that can be instantiated into an existing program. To address these challenges, we propose Senx, which, given a set of safety properties and a single input that triggers the vulnerability, detects the safety property violated by the vulnerability input and generates a corresponding patch that enforces the safety property and thus, removes the vulnerability. Senx solves several challenges with property-based APR: it identifies the program expressions and variables that must be evaluated to check safety properties and identifies the program scopes where they can be evaluated, it generates new code to selectively compute the values it needs if calling existing program code would cause unwanted side effects, and it uses a novel access range analysis technique to avoid placing patches inside loops where it could incur performance overhead. Our evaluation shows that the patches generated by Senx successfully fix 32 of 42 real-world vulnerabilities from 11 applications including various tools or libraries for manipulating graphics/media files, a programming language interpreter, a relational database engine, a collection of programming tools for creating and managing binary programs, and a collection of basic file, shell, and text manipulation tools.
安全漏洞是存在的最严重的软件缺陷之一。一旦识别出来,程序员的目标是尽可能快地生成防止漏洞的补丁,从而激发对自动程序修复(APR)方法的需求来自动生成补丁。不幸的是,大多数当前的APR方法都有不足之处,因为它们使用示例近似地描述了防止漏洞所需的属性。近似的结果是补丁要么不能全面修复漏洞,要么甚至可能引入新的错误。相反,我们提出了基于属性的APR,它使用人为指定的、与程序无关的和特定于漏洞的安全属性来派生安全漏洞的源代码补丁。不像那些通过观察测试用例的执行近似得到的属性,这样的安全属性是精确和完整的。主要的挑战在于将这些安全属性映射到可以实例化到现有程序中的源代码补丁中。为了应对这些挑战,我们提出了Senx,它给定一组安全属性和触发漏洞的单个输入,检测漏洞输入违反的安全属性,并生成相应的补丁来强制执行安全属性,从而消除漏洞。Senx解决了基于属性的APR的几个挑战:它识别必须评估的程序表达式和变量,以检查安全属性,并识别可以评估它们的程序范围;如果调用现有程序代码会导致不必要的副作用,它会生成新代码来有选择性地计算所需的值;它使用一种新颖的访问范围分析技术来避免在循环中放置补丁,因为这会导致性能开销。我们的评估显示,Senx生成的补丁成功修复了来自11个应用程序的42个现实世界漏洞中的32个,这些应用程序包括用于操作图形/媒体文件的各种工具或库、编程语言解释器、关系数据库引擎、用于创建和管理二进制程序的编程工具集合以及基本文件、shell和文本操作工具集合。
{"title":"Using Safety Properties to Generate Vulnerability Patches","authors":"Zhen Huang, D. Lie, Gang Tan, T. Jaeger","doi":"10.1109/SP.2019.00071","DOIUrl":"https://doi.org/10.1109/SP.2019.00071","url":null,"abstract":"Security vulnerabilities are among the most critical software defects in existence. When identified, programmers aim to produce patches that prevent the vulnerability as quickly as possible, motivating the need for automatic program repair (APR) methods to generate patches automatically. Unfortunately, most current APR methods fall short because they approximate the properties necessary to prevent the vulnerability using examples. Approximations result in patches that either do not fix the vulnerability comprehensively, or may even introduce new bugs. Instead, we propose property-based APR, which uses human-specified, program-independent and vulnerability-specific safety properties to derive source code patches for security vulnerabilities. Unlike properties that are approximated by observing the execution of test cases, such safety properties are precise and complete. The primary challenge lies in mapping such safety properties into source code patches that can be instantiated into an existing program. To address these challenges, we propose Senx, which, given a set of safety properties and a single input that triggers the vulnerability, detects the safety property violated by the vulnerability input and generates a corresponding patch that enforces the safety property and thus, removes the vulnerability. Senx solves several challenges with property-based APR: it identifies the program expressions and variables that must be evaluated to check safety properties and identifies the program scopes where they can be evaluated, it generates new code to selectively compute the values it needs if calling existing program code would cause unwanted side effects, and it uses a novel access range analysis technique to avoid placing patches inside loops where it could incur performance overhead. Our evaluation shows that the patches generated by Senx successfully fix 32 of 42 real-world vulnerabilities from 11 applications including various tools or libraries for manipulating graphics/media files, a programming language interpreter, a relational database engine, a collection of programming tools for creating and managing binary programs, and a collection of basic file, shell, and text manipulation tools.","PeriodicalId":272713,"journal":{"name":"2019 IEEE Symposium on Security and Privacy (SP)","volume":"12 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114234606","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}
引用次数: 49
XCLAIM: Trustless, Interoperable, Cryptocurrency-Backed Assets XCLAIM:无信任、可互操作、加密货币支持的资产
Pub Date : 2019-04-01 DOI: 10.1109/SP.2019.00085
Alexei Zamyatin, D. Harz, Joshua Lind, P. Panayiotou, Arthur Gervais, W. Knottenbelt
Building trustless cross-blockchain trading protocols is challenging. Centralized exchanges thus remain the preferred route to execute transfers across blockchains. However, these services require trust and therefore undermine the very nature of the blockchains on which they operate. To overcome this, several decentralized exchanges have recently emerged which offer support for atomic cross-chain swaps (ACCS). ACCS enable the trustless exchange of cryptocurrencies across blockchains, and are the only known mechanism to do so. However, ACCS suffer significant limitations; they are slow, inefficient and costly, meaning that they are rarely used in practice. We present XCLAIM: the first generic framework for achieving trustless and efficient cross-chain exchanges using cryptocurrency-backed assets (CbAs). XCLAIM offers protocols for issuing, transferring, swapping and redeeming CbAs securely in a non-interactive manner on existing blockchains. We instantiate XCLAIM between Bitcoin and Ethereum and evaluate our implementation; it costs less than USD 0.50 to issue an arbitrary amount of Bitcoin-backed tokens on Ethereum. We show XCLAIM is not only faster, but also significantly cheaper than atomic cross-chain swaps. Finally, XCLAIM is compatible with the majority of existing blockchains without modification, and enables several novel cryptocurrency applications, such as cross-chain payment channels and efficient multi-party swaps.
构建无信任的跨区块链交易协议具有挑战性。因此,集中式交易所仍然是跨区块链执行转账的首选途径。然而,这些服务需要信任,因此破坏了它们所运行的区块链的本质。为了克服这个问题,最近出现了几个去中心化的交易所,它们为原子交叉链互换(ACCS)提供支持。ACCS允许跨区块链进行加密货币的无信任交换,并且是唯一已知的机制。然而,ACCS有很大的局限性;它们速度慢、效率低、成本高,这意味着它们在实践中很少使用。我们提出XCLAIM:第一个使用加密货币支持资产(cba)实现无信任和高效跨链交换的通用框架。XCLAIM提供了在现有区块链上以非交互方式安全地发行、转移、交换和赎回cba的协议。我们在比特币和以太坊之间实例化XCLAIM并评估我们的实现;在以太坊上发行任意数量的比特币支持的令牌的成本不到0.50美元。我们展示了XCLAIM不仅更快,而且比原子交叉链交换便宜得多。最后,XCLAIM无需修改即可与大多数现有区块链兼容,并支持几种新颖的加密货币应用,例如跨链支付渠道和高效的多方交换。
{"title":"XCLAIM: Trustless, Interoperable, Cryptocurrency-Backed Assets","authors":"Alexei Zamyatin, D. Harz, Joshua Lind, P. Panayiotou, Arthur Gervais, W. Knottenbelt","doi":"10.1109/SP.2019.00085","DOIUrl":"https://doi.org/10.1109/SP.2019.00085","url":null,"abstract":"Building trustless cross-blockchain trading protocols is challenging. Centralized exchanges thus remain the preferred route to execute transfers across blockchains. However, these services require trust and therefore undermine the very nature of the blockchains on which they operate. To overcome this, several decentralized exchanges have recently emerged which offer support for atomic cross-chain swaps (ACCS). ACCS enable the trustless exchange of cryptocurrencies across blockchains, and are the only known mechanism to do so. However, ACCS suffer significant limitations; they are slow, inefficient and costly, meaning that they are rarely used in practice. We present XCLAIM: the first generic framework for achieving trustless and efficient cross-chain exchanges using cryptocurrency-backed assets (CbAs). XCLAIM offers protocols for issuing, transferring, swapping and redeeming CbAs securely in a non-interactive manner on existing blockchains. We instantiate XCLAIM between Bitcoin and Ethereum and evaluate our implementation; it costs less than USD 0.50 to issue an arbitrary amount of Bitcoin-backed tokens on Ethereum. We show XCLAIM is not only faster, but also significantly cheaper than atomic cross-chain swaps. Finally, XCLAIM is compatible with the majority of existing blockchains without modification, and enables several novel cryptocurrency applications, such as cross-chain payment channels and efficient multi-party swaps.","PeriodicalId":272713,"journal":{"name":"2019 IEEE Symposium on Security and Privacy (SP)","volume":"29 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125272756","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}
引用次数: 120
Bitcoin vs. Bitcoin Cash: Coexistence or Downfall of Bitcoin Cash? 比特币与比特币现金:比特币现金的共存还是衰落?
Pub Date : 2019-02-28 DOI: 10.1109/SP.2019.00075
Yujin Kwon, Hyoungshick Kim, Jinwoo Shin, Yongdae Kim
Bitcoin has become the most popular cryptocurrency based on a peer-to-peer network. In Aug. 2017, Bitcoin was split into the original Bitcoin (BTC) and Bitcoin Cash (BCH). Since then, miners have had a choice between BTC and BCH mining because they have compatible proof-of-work algorithms. Therefore, they can freely choose which coin to mine for higher profit, where the profitability depends on both the coin price and mining difficulty. Some miners can immediately switch the coin to mine only when mining difficulty changes because the difficulty changes are more predictable than that for the coin price, and we call this behavior fickle mining. In this paper, we study the effects of fickle mining by modeling a game between two coins. To do this, we consider both fickle miners and some factions (e.g., BITMAIN for BCH mining) that stick to mining one coin to maintain that chain. In this model, we show that fickle mining leads to a Nash equilibrium in which only a faction sticking to its coin mining remains as a loyal miner to the less valued coin (e.g., BCH), where loyal miners refer to those who conduct mining even after coin mining difficulty increases. This situation would cause severe centralization, weakening the security of the coin system. To determine which equilibrium the competing coin systems (e.g., BTC vs. BCH) are moving toward, we traced the historical changes of mining power for BTC and BCH and found that BCH often lacked loyal miners until Nov. 13, 2017, when the difficulty adjustment algorithm of BCH mining was changed. However, the change in difficulty adjustment algorithm of BCH mining led to a state close to the stable coexistence of BTC and BCH. We also demonstrate that the lack of BCH loyal miners may still be reached when a fraction of miners automatically and repeatedly switches to the most profitable coin to mine (i.e., automatic mining). According to our analysis, as of Dec. 2018, loyal miners to BCH would leave if more than about 5% of the total mining capacity for BTC and BCH has engaged in the automatic mining. In addition, we analyze the recent “hash war” between Bitcoin ABC and SV, which confirms our theoretical analysis. Finally, we note that our results can be applied to any competing cryptocurrency systems in which the same hardware (e.g., ASICs or GPUs) can be used for mining. Therefore, our study brings new and important angles in competitive coin markets: a coin can intentionally weaken the security and decentralization level of the other rival coin when mining hardware is shared between them, allowing for automatic mining.
比特币已经成为基于点对点网络的最受欢迎的加密货币。2017年8月,比特币被分为原始比特币(BTC)和比特币现金(BCH)。从那时起,矿工们就可以在BTC和BCH采矿之间做出选择,因为它们具有兼容的工作量证明算法。因此,他们可以自由选择开采哪一种硬币以获得更高的利润,其中盈利能力取决于硬币的价格和开采难度。有些矿工只有在挖矿难度发生变化时才会立即换币挖矿,因为难度的变化比币价的变化更容易预测,我们称这种行为为“变化无常的挖矿”。在本文中,我们通过模拟两个硬币之间的博弈来研究变化无常采矿的影响。为了做到这一点,我们考虑了善变的矿工和一些坚持开采一枚硬币以维持该链的派系(例如,BCH采矿的BITMAIN)。在这个模型中,我们表明,易变的挖矿导致纳什均衡,其中只有坚持挖矿的派系仍然是价值较低的硬币(例如BCH)的忠诚矿工,其中忠诚矿工指的是那些即使在挖矿难度增加后仍在挖矿的人。这种情况会导致严重的中心化,削弱硬币系统的安全性。为了确定竞争币系统(例如BTC与BCH)正在走向哪种平衡,我们追溯了BTC和BCH的挖矿能力的历史变化,发现BCH经常缺乏忠诚的矿工,直到2017年11月13日,BCH挖矿难度调整算法发生了变化。而BCH挖矿难度调整算法的改变,使得BTC和BCH接近稳定共存的状态。我们还证明,当一小部分矿工自动并反复切换到最有利可图的硬币进行采矿(即自动采矿)时,仍然可能会出现缺乏BCH忠诚矿工的情况。根据我们的分析,截至2018年12月,如果BTC和BCH从事自动挖矿的总挖矿能力超过5%左右,那么BCH的忠实矿工就会离开。此外,我们分析了最近比特币ABC和SV之间的“哈希大战”,证实了我们的理论分析。最后,我们注意到,我们的结果可以应用于任何竞争的加密货币系统,其中可以使用相同的硬件(例如,asic或gpu)进行挖掘。因此,我们的研究为竞争激烈的代币市场带来了新的重要角度:当挖矿硬件在它们之间共享时,一个代币可以故意削弱另一个竞争对手的安全性和去中心化水平,从而允许自动挖矿。
{"title":"Bitcoin vs. Bitcoin Cash: Coexistence or Downfall of Bitcoin Cash?","authors":"Yujin Kwon, Hyoungshick Kim, Jinwoo Shin, Yongdae Kim","doi":"10.1109/SP.2019.00075","DOIUrl":"https://doi.org/10.1109/SP.2019.00075","url":null,"abstract":"Bitcoin has become the most popular cryptocurrency based on a peer-to-peer network. In Aug. 2017, Bitcoin was split into the original Bitcoin (BTC) and Bitcoin Cash (BCH). Since then, miners have had a choice between BTC and BCH mining because they have compatible proof-of-work algorithms. Therefore, they can freely choose which coin to mine for higher profit, where the profitability depends on both the coin price and mining difficulty. Some miners can immediately switch the coin to mine only when mining difficulty changes because the difficulty changes are more predictable than that for the coin price, and we call this behavior fickle mining. In this paper, we study the effects of fickle mining by modeling a game between two coins. To do this, we consider both fickle miners and some factions (e.g., BITMAIN for BCH mining) that stick to mining one coin to maintain that chain. In this model, we show that fickle mining leads to a Nash equilibrium in which only a faction sticking to its coin mining remains as a loyal miner to the less valued coin (e.g., BCH), where loyal miners refer to those who conduct mining even after coin mining difficulty increases. This situation would cause severe centralization, weakening the security of the coin system. To determine which equilibrium the competing coin systems (e.g., BTC vs. BCH) are moving toward, we traced the historical changes of mining power for BTC and BCH and found that BCH often lacked loyal miners until Nov. 13, 2017, when the difficulty adjustment algorithm of BCH mining was changed. However, the change in difficulty adjustment algorithm of BCH mining led to a state close to the stable coexistence of BTC and BCH. We also demonstrate that the lack of BCH loyal miners may still be reached when a fraction of miners automatically and repeatedly switches to the most profitable coin to mine (i.e., automatic mining). According to our analysis, as of Dec. 2018, loyal miners to BCH would leave if more than about 5% of the total mining capacity for BTC and BCH has engaged in the automatic mining. In addition, we analyze the recent “hash war” between Bitcoin ABC and SV, which confirms our theoretical analysis. Finally, we note that our results can be applied to any competing cryptocurrency systems in which the same hardware (e.g., ASICs or GPUs) can be used for mining. Therefore, our study brings new and important angles in competitive coin markets: a coin can intentionally weaken the security and decentralization level of the other rival coin when mining hardware is shared between them, allowing for automatic mining.","PeriodicalId":272713,"journal":{"name":"2019 IEEE Symposium on Security and Privacy (SP)","volume":"2011 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-02-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125631721","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}
引用次数: 45
F-BLEAU: Fast Black-Box Leakage Estimation F-BLEAU:快速黑匣子泄漏估计
Pub Date : 2019-02-04 DOI: 10.1109/SP.2019.00073
Giovanni Cherubin, K. Chatzikokolakis, C. Palamidessi
We consider the problem of measuring how much a system reveals about its secret inputs. We work in the black-box setting: we assume no prior knowledge of the system's internals, and we run the system for choices of secrets and measure its leakage from the respective outputs. Our goal is to estimate the Bayes risk, from which one can derive some of the most popular leakage measures (e.g., min-entropy leakage). The state-of-the-art method for estimating these leakage measures is the frequentist paradigm, which approximates the system's internals by looking at the frequencies of its inputs and outputs. Unfortunately, this does not scale for systems with large output spaces, where it would require too many input-output examples. Consequently, it also cannot be applied to systems with continuous outputs (e.g., time side channels, network traffic). In this paper, we exploit an analogy between Machine Learning (ML) and black-box leakage estimation to show that the Bayes risk of a system can be estimated by using a class of ML methods: the universally consistent learning rules; these rules can exploit patterns in the input-output examples to improve the estimates' convergence, while retaining formal optimality guarantees. We focus on a set of them, the nearest neighbor rules; we show that they significantly reduce the number of black-box queries required for a precise estimation whenever nearby outputs tend to be produced by the same secret; furthermore, some of them can tackle systems with continuous outputs. We illustrate the applicability of these techniques on both synthetic and real-world data, and we compare them with the state-of-the-art tool, leakiEst, which is based on the frequentist approach.
我们考虑的问题是测量一个系统透露了多少关于它的秘密输入。我们在黑盒设置中工作:我们假设不知道系统内部的先验知识,我们运行系统来选择秘密,并从各自的输出中测量其泄漏。我们的目标是估计贝叶斯风险,从中可以得出一些最流行的泄漏度量(例如,最小熵泄漏)。估计这些泄漏措施的最先进的方法是频率学范式,它通过观察其输入和输出的频率来近似系统的内部。不幸的是,这并不适用于具有大输出空间的系统,因为它需要太多的输入输出示例。因此,它也不能应用于具有连续输出的系统(例如,时间侧信道,网络流量)。在本文中,我们利用机器学习(ML)和黑盒泄漏估计之间的类比来证明系统的贝叶斯风险可以通过使用一类机器学习方法来估计:普遍一致的学习规则;这些规则可以利用输入输出示例中的模式来提高估计的收敛性,同时保留形式最优性保证。我们关注其中的一组规则,最近邻规则;我们表明,当附近的输出倾向于由相同的秘密产生时,它们显着减少了精确估计所需的黑箱查询的数量;此外,其中一些可以处理具有连续输出的系统。我们说明了这些技术在合成数据和真实数据上的适用性,并将它们与基于频率方法的最先进工具leakest进行了比较。
{"title":"F-BLEAU: Fast Black-Box Leakage Estimation","authors":"Giovanni Cherubin, K. Chatzikokolakis, C. Palamidessi","doi":"10.1109/SP.2019.00073","DOIUrl":"https://doi.org/10.1109/SP.2019.00073","url":null,"abstract":"We consider the problem of measuring how much a system reveals about its secret inputs. We work in the black-box setting: we assume no prior knowledge of the system's internals, and we run the system for choices of secrets and measure its leakage from the respective outputs. Our goal is to estimate the Bayes risk, from which one can derive some of the most popular leakage measures (e.g., min-entropy leakage). The state-of-the-art method for estimating these leakage measures is the frequentist paradigm, which approximates the system's internals by looking at the frequencies of its inputs and outputs. Unfortunately, this does not scale for systems with large output spaces, where it would require too many input-output examples. Consequently, it also cannot be applied to systems with continuous outputs (e.g., time side channels, network traffic). In this paper, we exploit an analogy between Machine Learning (ML) and black-box leakage estimation to show that the Bayes risk of a system can be estimated by using a class of ML methods: the universally consistent learning rules; these rules can exploit patterns in the input-output examples to improve the estimates' convergence, while retaining formal optimality guarantees. We focus on a set of them, the nearest neighbor rules; we show that they significantly reduce the number of black-box queries required for a precise estimation whenever nearby outputs tend to be produced by the same secret; furthermore, some of them can tackle systems with continuous outputs. We illustrate the applicability of these techniques on both synthetic and real-world data, and we compare them with the state-of-the-art tool, leakiEst, which is based on the frequentist approach.","PeriodicalId":272713,"journal":{"name":"2019 IEEE Symposium on Security and Privacy (SP)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-02-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129962964","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}
引用次数: 27
An Extensive Formal Security Analysis of the OpenID Financial-Grade API OpenID金融级API的广泛正式安全性分析
Pub Date : 2019-01-31 DOI: 10.1109/SP.2019.00067
Daniel Fett, Pedram Hosseyni, Ralf Küsters
Forced by regulations and industry demand, banks worldwide are working to open their customers' online banking accounts to third-party services via web-based APIs. By using these so-called Open Banking APIs, third-party companies, such as FinTechs, are able to read information about and initiate payments from their users' bank accounts. Such access to financial data and resources needs to meet particularly high security requirements to protect customers. One of the most promising standards in this segment is the OpenID Financial-grade API (FAPI), currently under development in an open process by the OpenID Foundation and backed by large industry partners. The FAPI is a profile of OAuth 2.0 designed for high-risk scenarios and aiming to be secure against very strong attackers. To achieve this level of security, the FAPI employs a range of mechanisms that have been developed to harden OAuth 2.0, such as Code and Token Binding (including mTLS and OAUTB), JWS Client Assertions, and Proof Key for Code Exchange. In this paper, we perform a rigorous, systematic formal analysis of the security of the FAPI, based on an existing comprehensive model of the web infrastructure - the Web Infrastructure Model (WIM) proposed by Fett, Küsters, and Schmitz. To this end, we first develop a precise model of the FAPI in the WIM, including different profiles for read-only and read-write access, different flows, different types of clients, and different combinations of security features, capturing the complex interactions in a web-based environment. We then use our model of the FAPI to precisely define central security properties. In an attempt to prove these properties, we uncover partly severe attacks, breaking authentication, authorization, and session integrity properties. We develop mitigations against these attacks and finally are able to formally prove the security of a fixed version of the FAPI. Although financial applications are high-stakes environments, this work is the first to formally analyze and, importantly, verify an Open Banking security profile. By itself, this analysis is an important contribution to the development of the FAPI since it helps to define exact security properties and attacker models, and to avoid severe security risks before the first implementations of the standard go live. Of independent interest, we also uncover weaknesses in the aforementioned security mechanisms for hardening OAuth 2.0. We illustrate that these mechanisms do not necessarily achieve the security properties they have been designed for.
迫于法规和行业需求,世界各地的银行都在努力通过基于web的api向第三方服务开放客户的网上银行账户。通过使用这些所谓的开放银行api,第三方公司,如FinTechs,能够读取有关用户银行账户的信息并启动支付。这种对金融数据和资源的访问需要满足特别高的安全要求,以保护客户。这一领域最有前途的标准之一是OpenID金融级API (FAPI),目前由OpenID基金会在开放过程中开发,并得到大型行业合作伙伴的支持。FAPI是OAuth 2.0的配置文件,专为高风险场景设计,旨在防止非常强大的攻击者。为了实现这种级别的安全,FAPI采用了一系列已经开发出来的机制来加强OAuth 2.0,比如代码和令牌绑定(包括mTLS和OAuth)、JWS客户端断言和代码交换证明密钥。在本文中,我们对FAPI的安全性进行了严格、系统的形式化分析,该分析基于现有的web基础设施综合模型——由Fett、k sters和Schmitz提出的web基础设施模型(web infrastructure model, WIM)。为此,我们首先在WIM中开发了FAPI的精确模型,包括只读和读写访问的不同配置文件、不同的流、不同类型的客户端和不同的安全特性组合,以捕获基于web的环境中的复杂交互。然后,我们使用我们的FAPI模型来精确地定义中心安全属性。为了证明这些属性,我们发现了部分严重的攻击,破坏了身份验证、授权和会话完整性属性。我们开发了针对这些攻击的缓解措施,并最终能够正式证明固定版本的FAPI的安全性。尽管金融应用程序是高风险的环境,但这项工作是第一个正式分析和验证Open Banking安全性配置文件的工作。就其本身而言,该分析对FAPI的开发做出了重要贡献,因为它有助于定义准确的安全属性和攻击者模型,并在标准的第一个实现生效之前避免严重的安全风险。另外,我们还发现了上述用于加强OAuth 2.0的安全机制中的弱点。我们说明,这些机制并不一定能实现它们设计时的安全属性。
{"title":"An Extensive Formal Security Analysis of the OpenID Financial-Grade API","authors":"Daniel Fett, Pedram Hosseyni, Ralf Küsters","doi":"10.1109/SP.2019.00067","DOIUrl":"https://doi.org/10.1109/SP.2019.00067","url":null,"abstract":"Forced by regulations and industry demand, banks worldwide are working to open their customers' online banking accounts to third-party services via web-based APIs. By using these so-called Open Banking APIs, third-party companies, such as FinTechs, are able to read information about and initiate payments from their users' bank accounts. Such access to financial data and resources needs to meet particularly high security requirements to protect customers. One of the most promising standards in this segment is the OpenID Financial-grade API (FAPI), currently under development in an open process by the OpenID Foundation and backed by large industry partners. The FAPI is a profile of OAuth 2.0 designed for high-risk scenarios and aiming to be secure against very strong attackers. To achieve this level of security, the FAPI employs a range of mechanisms that have been developed to harden OAuth 2.0, such as Code and Token Binding (including mTLS and OAUTB), JWS Client Assertions, and Proof Key for Code Exchange. In this paper, we perform a rigorous, systematic formal analysis of the security of the FAPI, based on an existing comprehensive model of the web infrastructure - the Web Infrastructure Model (WIM) proposed by Fett, Küsters, and Schmitz. To this end, we first develop a precise model of the FAPI in the WIM, including different profiles for read-only and read-write access, different flows, different types of clients, and different combinations of security features, capturing the complex interactions in a web-based environment. We then use our model of the FAPI to precisely define central security properties. In an attempt to prove these properties, we uncover partly severe attacks, breaking authentication, authorization, and session integrity properties. We develop mitigations against these attacks and finally are able to formally prove the security of a fixed version of the FAPI. Although financial applications are high-stakes environments, this work is the first to formally analyze and, importantly, verify an Open Banking security profile. By itself, this analysis is an important contribution to the development of the FAPI since it helps to define exact security properties and attacker models, and to avoid severe security risks before the first implementations of the standard go live. Of independent interest, we also uncover weaknesses in the aforementioned security mechanisms for hardening OAuth 2.0. We illustrate that these mechanisms do not necessarily achieve the security properties they have been designed for.","PeriodicalId":272713,"journal":{"name":"2019 IEEE Symposium on Security and Privacy (SP)","volume":"23 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-01-31","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124025984","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}
引用次数: 14
EmPoWeb: Empowering Web Applications with Browser Extensions EmPoWeb:通过浏览器扩展增强Web应用程序
Pub Date : 2019-01-10 DOI: 10.1109/SP.2019.00058
Doliére Francis Somé
Browser extensions are third party programs, tightly integrated to browsers, where they execute with elevated privileges in order to provide users with additional functionalities. Unlike web applications, extensions are not subject to the Same Origin Policy (SOP) and therefore can read and write user data on any web application. They also have access to sensitive user information including browsing history, bookmarks, credentials (cookies) and list of installed extensions. They have access to a permanent storage in which they can store data as long as they are installed in the user's browser. They can trigger the download of arbitrary files and save them on the user's device. For security reasons, browser extensions and web applications are executed in separate contexts. Nonetheless, in all major browsers, extensions and web applications can interact by exchanging messages. Through these communication channels, a web application can exploit extension privileged capabilities and thereby access and exfiltrate sensitive user information. In this work, we analyzed the communication interfaces exposed to web applications by Chrome, Firefox and Opera browser extensions. As a result, we identified many extensions that web applications can exploit to access privileged capabilities. Through extensions' APIS, web applications can bypass SOP and access user data on any other web application, access user credentials (cookies), browsing history, bookmarks, list of installed extensions, extensions storage, and download and save arbitrary files in the user's device. Our results demonstrate that the communications between browser extensions and web applications pose serious security and privacy threats to browsers, web applications and more importantly to users. We discuss countermeasures and proposals, and believe that our study and in particular the tool we used to detect and exploit these threats, can be used as part of extensions review process by browser vendors to help them identify and fix the aforementioned problems in extensions.
浏览器扩展是与浏览器紧密集成的第三方程序,它们以更高的权限执行,以便为用户提供额外的功能。与web应用程序不同,扩展不受同源策略(Same Origin Policy, SOP)的约束,因此可以在任何web应用程序上读写用户数据。他们还可以访问敏感的用户信息,包括浏览历史,书签,凭证(cookie)和已安装的扩展列表。只要安装在用户的浏览器中,它们就可以访问一个永久存储空间,在其中存储数据。它们可以触发任意文件的下载并将其保存在用户的设备上。出于安全考虑,浏览器扩展和web应用程序在不同的上下文中执行。尽管如此,在所有主流浏览器中,扩展和web应用程序都可以通过交换消息进行交互。通过这些通信通道,web应用程序可以利用扩展特权功能,从而访问和泄露敏感的用户信息。在这项工作中,我们分析了Chrome、Firefox和Opera浏览器扩展提供给web应用程序的通信接口。因此,我们确定了web应用程序可以利用的许多扩展来访问特权功能。通过扩展的api, web应用程序可以绕过SOP,访问任何其他web应用程序上的用户数据,访问用户凭据(cookie)、浏览历史记录、书签、已安装扩展列表、扩展存储,并下载和保存用户设备中的任意文件。我们的研究结果表明,浏览器扩展和web应用程序之间的通信对浏览器、web应用程序,更重要的是对用户构成了严重的安全和隐私威胁。我们讨论了对策和建议,并相信我们的研究,特别是我们用来检测和利用这些威胁的工具,可以作为浏览器供应商扩展审查过程的一部分,帮助他们识别和修复上述扩展中的问题。
{"title":"EmPoWeb: Empowering Web Applications with Browser Extensions","authors":"Doliére Francis Somé","doi":"10.1109/SP.2019.00058","DOIUrl":"https://doi.org/10.1109/SP.2019.00058","url":null,"abstract":"Browser extensions are third party programs, tightly integrated to browsers, where they execute with elevated privileges in order to provide users with additional functionalities. Unlike web applications, extensions are not subject to the Same Origin Policy (SOP) and therefore can read and write user data on any web application. They also have access to sensitive user information including browsing history, bookmarks, credentials (cookies) and list of installed extensions. They have access to a permanent storage in which they can store data as long as they are installed in the user's browser. They can trigger the download of arbitrary files and save them on the user's device. For security reasons, browser extensions and web applications are executed in separate contexts. Nonetheless, in all major browsers, extensions and web applications can interact by exchanging messages. Through these communication channels, a web application can exploit extension privileged capabilities and thereby access and exfiltrate sensitive user information. In this work, we analyzed the communication interfaces exposed to web applications by Chrome, Firefox and Opera browser extensions. As a result, we identified many extensions that web applications can exploit to access privileged capabilities. Through extensions' APIS, web applications can bypass SOP and access user data on any other web application, access user credentials (cookies), browsing history, bookmarks, list of installed extensions, extensions storage, and download and save arbitrary files in the user's device. Our results demonstrate that the communications between browser extensions and web applications pose serious security and privacy threats to browsers, web applications and more importantly to users. We discuss countermeasures and proposals, and believe that our study and in particular the tool we used to detect and exploit these threats, can be used as part of extensions review process by browser vendors to help them identify and fix the aforementioned problems in extensions.","PeriodicalId":272713,"journal":{"name":"2019 IEEE Symposium on Security and Privacy (SP)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-01-10","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129278382","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}
引用次数: 30
Redactable Blockchain in the Permissionless Setting 无权限设置中的可读区块链
Pub Date : 2019-01-10 DOI: 10.1109/SP.2019.00039
Dominic Deuber, Bernardo Magri, Sri Aravinda Krishnan Thyagarajan
Bitcoin is an immutable permissionless blockchain system that has been extensively used as a public bulletin board by many different applications that heavily relies on its immutability. However, Bitcoin's immutability is not without its fair share of demerits. Interpol exposed the existence of harmful and potentially illegal documents, images and links in the Bitcoin blockchain, and since then there have been several qualitative and quantitative analysis on the types of data currently residing in the Bitcoin blockchain. Although there is a lot of attention on blockchains, surprisingly the previous solutions proposed for data redaction in the permissionless setting are far from feasible, and require additional trust assumptions. Hence, the problem of harmful data still poses a huge challenge for law enforcement agencies like Interpol (Tziakouris, IEEE S&P'18). We propose the first efficient redactable blockchain for the permissionless setting that is easily integrable into Bitcoin, and that does not rely on heavy cryptographic tools or trust assumptions. Our protocol uses a consensus-based voting and is parameterised by a policy that dictates the requirements and constraints for the redactions; if a redaction gathers enough votes the operation is performed on the chain. As an extra feature, our protocol offers public verifiability and accountability for the redacted chain. Moreover, we provide formal security definitions and proofs showing that our protocol is secure against redactions that were not agreed by consensus. Additionally, we show the viability of our approach with a proof-of-concept implementation that shows only a tiny overhead in the chain validation of our protocol when compared to an immutable one.
比特币是一种不可变的无权限区块链系统,已被许多严重依赖其不变性的不同应用程序广泛用作公共公告板。然而,比特币的不可变性并非没有缺点。国际刑警组织揭露了比特币区块链中存在有害和潜在非法的文件、图像和链接,从那时起,对目前存在于比特币区块链中的数据类型进行了多次定性和定量分析。尽管对区块链有很多关注,但令人惊讶的是,之前提出的无权限设置下数据编校的解决方案远非可行,并且需要额外的信任假设。因此,有害数据的问题仍然对国际刑警组织等执法机构构成巨大挑战(Tziakouris, IEEE标准普尔18)。我们提出了第一个有效的可重写区块链,用于无权限设置,可轻松集成到比特币中,并且不依赖于繁重的加密工具或信任假设。我们的协议使用基于共识的投票,并通过规定修订要求和约束的策略进行参数化;如果修订收集到足够的投票,则在链上执行操作。作为一个额外的功能,我们的协议为编校链提供了公共可验证性和问责性。此外,我们提供了正式的安全定义和证明,表明我们的协议对于未被一致同意的修订是安全的。此外,我们通过概念验证实现展示了我们方法的可行性,与不可变协议相比,该实现仅显示了我们协议的链验证中的微小开销。
{"title":"Redactable Blockchain in the Permissionless Setting","authors":"Dominic Deuber, Bernardo Magri, Sri Aravinda Krishnan Thyagarajan","doi":"10.1109/SP.2019.00039","DOIUrl":"https://doi.org/10.1109/SP.2019.00039","url":null,"abstract":"Bitcoin is an immutable permissionless blockchain system that has been extensively used as a public bulletin board by many different applications that heavily relies on its immutability. However, Bitcoin's immutability is not without its fair share of demerits. Interpol exposed the existence of harmful and potentially illegal documents, images and links in the Bitcoin blockchain, and since then there have been several qualitative and quantitative analysis on the types of data currently residing in the Bitcoin blockchain. Although there is a lot of attention on blockchains, surprisingly the previous solutions proposed for data redaction in the permissionless setting are far from feasible, and require additional trust assumptions. Hence, the problem of harmful data still poses a huge challenge for law enforcement agencies like Interpol (Tziakouris, IEEE S&P'18). We propose the first efficient redactable blockchain for the permissionless setting that is easily integrable into Bitcoin, and that does not rely on heavy cryptographic tools or trust assumptions. Our protocol uses a consensus-based voting and is parameterised by a policy that dictates the requirements and constraints for the redactions; if a redaction gathers enough votes the operation is performed on the chain. As an extra feature, our protocol offers public verifiability and accountability for the redacted chain. Moreover, we provide formal security definitions and proofs showing that our protocol is secure against redactions that were not agreed by consensus. Additionally, we show the viability of our approach with a proof-of-concept implementation that shows only a tiny overhead in the chain validation of our protocol when compared to an immutable one.","PeriodicalId":272713,"journal":{"name":"2019 IEEE Symposium on Security and Privacy (SP)","volume":"24 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2019-01-10","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116593658","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}
引用次数: 94
Full-Speed Fuzzing: Reducing Fuzzing Overhead through Coverage-Guided Tracing 全速模糊测试:通过覆盖引导跟踪减少模糊测试开销
Pub Date : 2018-12-31 DOI: 10.1109/SP.2019.00069
Stefan Nagy, Matthew Hicks
Coverage-guided fuzzing is one of the most successful approaches for discovering software bugs and security vulnerabilities. Of its three main components: (1) test case generation, (2) code coverage tracing, and (3) crash triage, code coverage tracing is a dominant source of overhead. Coverage-guided fuzzers trace every test case's code coverage through either static or dynamic binary instrumentation, or more recently, using hardware support. Unfortunately, tracing all test cases incurs significant performance penalties–-even when the overwhelming majority of test cases and their coverage information are discarded because they do not increase code coverage. To eliminate needless tracing by coverage-guided fuzzers, we introduce the notion of coverage-guided tracing. Coverage-guided tracing leverages two observations: (1) only a fraction of generated test cases increase coverage, and thus require tracing; and (2) coverage-increasing test cases become less frequent over time. Coverage-guided tracing encodes the current frontier of coverage in the target binary so that it self-reports when a test case produces new coverage–-without tracing. This acts as a filter for tracing; restricting the expense of tracing to only coverage-increasing test cases. Thus, coverage-guided tracing trades increased time handling coverage-increasing test cases for decreased time handling non-coverage-increasing test cases. To show the potential of coverage-guided tracing, we create an implementation based on the static binary instrumentor Dyninst called UnTracer. We evaluate UnTracer using eight real-world binaries commonly used by the fuzzing community. Experiments show that after only an hour of fuzzing, UnTracer's average overhead is below 1%, and after 24-hours of fuzzing, UnTracer approaches 0% overhead, while tracing every test case with popular white- and black-box-binary tracers AFL-Clang, AFL-QEMU, and AFL-Dyninst incurs overheads of 36%, 612%, and 518%, respectively. We further integrate UnTracer with the state-of-the-art hybrid fuzzer QSYM and show that in 24-hours of fuzzing, QSYM-UnTracer executes 79% and 616% more test cases than QSYM-Clang and QSYM-QEMU, respectively.
覆盖引导的模糊测试是发现软件缺陷和安全漏洞的最成功的方法之一。在它的三个主要组成部分中:(1)测试用例生成,(2)代码覆盖跟踪,以及(3)崩溃分类,代码覆盖跟踪是开销的主要来源。覆盖率引导的fuzzers通过静态或动态二进制工具,或者最近使用硬件支持,跟踪每个测试用例的代码覆盖率。不幸的是,跟踪所有的测试用例会导致显著的性能损失——即使绝大多数的测试用例和它们的覆盖信息因为没有增加代码覆盖而被丢弃。为了消除覆盖引导模糊器的不必要跟踪,我们引入了覆盖引导跟踪的概念。覆盖引导的跟踪利用了两个观察结果:(1)只有一小部分生成的测试用例增加了覆盖,因此需要跟踪;(2)随着时间的推移,覆盖率增加的测试用例变得不那么频繁。覆盖引导的跟踪在目标二进制代码中编码覆盖的当前边界,这样当测试用例产生新的覆盖时,它就会自我报告——不需要跟踪。这可以作为跟踪的过滤器;将跟踪的费用限制为只增加覆盖率的测试用例。因此,覆盖引导的跟踪交易增加了处理覆盖增加的测试用例的时间,减少了处理非覆盖增加的测试用例的时间。为了展示覆盖引导跟踪的潜力,我们创建了一个基于静态二进制工具(称为UnTracer)的实现。我们使用模糊社区常用的八个真实世界二进制文件来评估UnTracer。实验表明,经过一个小时的模糊测试后,UnTracer的平均开销低于1%,经过24小时的模糊测试后,UnTracer的开销接近0%,而使用流行的白盒和黑盒二进制跟踪器AFL-Clang、AFL-QEMU和AFL-Dyninst跟踪每个测试用例的开销分别为36%、612%和518%。我们进一步将UnTracer与最先进的混合模糊器QSYM集成,并显示在24小时的模糊测试中,QSYM-UnTracer执行的测试用例分别比QSYM- clang和QSYM- qemu多79%和616%。
{"title":"Full-Speed Fuzzing: Reducing Fuzzing Overhead through Coverage-Guided Tracing","authors":"Stefan Nagy, Matthew Hicks","doi":"10.1109/SP.2019.00069","DOIUrl":"https://doi.org/10.1109/SP.2019.00069","url":null,"abstract":"Coverage-guided fuzzing is one of the most successful approaches for discovering software bugs and security vulnerabilities. Of its three main components: (1) test case generation, (2) code coverage tracing, and (3) crash triage, code coverage tracing is a dominant source of overhead. Coverage-guided fuzzers trace every test case's code coverage through either static or dynamic binary instrumentation, or more recently, using hardware support. Unfortunately, tracing all test cases incurs significant performance penalties–-even when the overwhelming majority of test cases and their coverage information are discarded because they do not increase code coverage. To eliminate needless tracing by coverage-guided fuzzers, we introduce the notion of coverage-guided tracing. Coverage-guided tracing leverages two observations: (1) only a fraction of generated test cases increase coverage, and thus require tracing; and (2) coverage-increasing test cases become less frequent over time. Coverage-guided tracing encodes the current frontier of coverage in the target binary so that it self-reports when a test case produces new coverage–-without tracing. This acts as a filter for tracing; restricting the expense of tracing to only coverage-increasing test cases. Thus, coverage-guided tracing trades increased time handling coverage-increasing test cases for decreased time handling non-coverage-increasing test cases. To show the potential of coverage-guided tracing, we create an implementation based on the static binary instrumentor Dyninst called UnTracer. We evaluate UnTracer using eight real-world binaries commonly used by the fuzzing community. Experiments show that after only an hour of fuzzing, UnTracer's average overhead is below 1%, and after 24-hours of fuzzing, UnTracer approaches 0% overhead, while tracing every test case with popular white- and black-box-binary tracers AFL-Clang, AFL-QEMU, and AFL-Dyninst incurs overheads of 36%, 612%, and 518%, respectively. We further integrate UnTracer with the state-of-the-art hybrid fuzzer QSYM and show that in 24-hours of fuzzing, QSYM-UnTracer executes 79% and 616% more test cases than QSYM-Clang and QSYM-QEMU, respectively.","PeriodicalId":272713,"journal":{"name":"2019 IEEE Symposium on Security and Privacy (SP)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-12-31","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130178410","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}
引用次数: 95
期刊
2019 IEEE Symposium on Security and Privacy (SP)
全部 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