首页 > 最新文献
paperpass

2017 IEEE Cybersecurity Development (SecDev)最新文献

英文 中文
ASLR: How Robust Is the Randomness? ASLR:随机性有多稳健?
Pub Date : 2017-09-24 DOI: 10.1109/SecDev.2017.19
Jonathan Ganz, S. Peisert
This paper examines the security provided by different implementations of Address Space Layout Randomization (ASLR). ASLR is a security mechanism that increases control-flow integrity by making it more difficult for an attacker to properly execute a buffer-overflow attack, even in systems with vulnerable software. The strength of ASLR lies in the randomness of the offsets it produces in memory layouts. We compare multiple operating systems, each compiled for two different hardware architectures, and measure the amount of entropy provided to a vulnerable application. Our paper is the first publication that we are aware of that quantitatively compares the entropy of different ASLR implementations. In addition, we provide a method for remotely assessing the efficacy of a particular security feature on systems that are otherwise unavailable for analysis, and highlight the need for independent evaluation of security mechanisms.
本文研究了地址空间布局随机化(ASLR)的不同实现所提供的安全性。ASLR是一种安全机制,通过使攻击者更难以正确地执行缓冲区溢出攻击来提高控制流的完整性,即使在具有易受攻击软件的系统中也是如此。ASLR的优势在于它在内存布局中产生偏移的随机性。我们比较了多个操作系统,每个操作系统都针对两种不同的硬件架构编译,并测量了提供给易受攻击的应用程序的熵量。我们的论文是我们所知道的第一篇定量比较不同ASLR实现的熵的出版物。此外,我们提供了一种方法,用于远程评估系统上特定安全特性的有效性,否则无法进行分析,并强调需要对安全机制进行独立评估。
{"title":"ASLR: How Robust Is the Randomness?","authors":"Jonathan Ganz, S. Peisert","doi":"10.1109/SecDev.2017.19","DOIUrl":"https://doi.org/10.1109/SecDev.2017.19","url":null,"abstract":"This paper examines the security provided by different implementations of Address Space Layout Randomization (ASLR). ASLR is a security mechanism that increases control-flow integrity by making it more difficult for an attacker to properly execute a buffer-overflow attack, even in systems with vulnerable software. The strength of ASLR lies in the randomness of the offsets it produces in memory layouts. We compare multiple operating systems, each compiled for two different hardware architectures, and measure the amount of entropy provided to a vulnerable application. Our paper is the first publication that we are aware of that quantitatively compares the entropy of different ASLR implementations. In addition, we provide a method for remotely assessing the efficacy of a particular security feature on systems that are otherwise unavailable for analysis, and highlight the need for independent evaluation of security mechanisms.","PeriodicalId":415145,"journal":{"name":"2017 IEEE Cybersecurity Development (SecDev)","volume":"15 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-09-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127220947","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
Developers Need Support, Too: A Survey of Security Advice for Software Developers 开发人员也需要支持:对软件开发人员安全建议的调查
Pub Date : 2017-09-24 DOI: 10.1109/SecDev.2017.17
Y. Acar, Christian Stransky, Dominik Wermke, Charles Weir, Michelle L. Mazurek, S. Fahl
Increasingly developers are becoming aware of the importance of software security, as frequent high-profile security incidents emphasize the need for secure code. Faced with this new problem, most developers will use their normal approach: web search. But are the resulting web resources useful and effective at promoting security in practice? Recent research has identified security problems arising from Q&A resources that help with specific secure-programming problems, but the web also contains many general resources that discuss security and secure programming more broadly, and to our knowledge few if any of these have been empirically evaluated. The continuing prevalence of security bugs suggests that this guidance ecosystem is not currently working well enough: either effective guidance is not available, or it is not reaching the developers who need it. This paper takes a first step toward understanding and improving this guidance ecosystem by identifying and analyzing 19 general advice resources. The results identify important gaps in the current ecosystem and provide a basis for future work evaluating existing resources and developing new ones to fill these gaps.
越来越多的开发人员开始意识到软件安全性的重要性,因为频繁发生的引人注目的安全事件强调了对安全代码的需求。面对这个新问题,大多数开发人员会使用他们的常规方法:网页搜索。但是,由此产生的网络资源在实践中对提高安全性有用和有效吗?最近的研究已经确定了由问答资源引起的安全问题,这些资源有助于解决特定的安全编程问题,但是web也包含许多更广泛地讨论安全和安全编程的一般资源,据我们所知,这些资源中很少有经过经验评估的。安全漏洞的持续流行表明这个指导生态系统目前工作得不够好:要么没有有效的指导,要么没有到达需要它的开发人员手中。本文通过识别和分析19种一般建议资源,迈出了理解和改进该指导生态系统的第一步。结果确定了当前生态系统中的重要空白,并为未来评估现有资源和开发新资源以填补这些空白提供了基础。
{"title":"Developers Need Support, Too: A Survey of Security Advice for Software Developers","authors":"Y. Acar, Christian Stransky, Dominik Wermke, Charles Weir, Michelle L. Mazurek, S. Fahl","doi":"10.1109/SecDev.2017.17","DOIUrl":"https://doi.org/10.1109/SecDev.2017.17","url":null,"abstract":"Increasingly developers are becoming aware of the importance of software security, as frequent high-profile security incidents emphasize the need for secure code. Faced with this new problem, most developers will use their normal approach: web search. But are the resulting web resources useful and effective at promoting security in practice? Recent research has identified security problems arising from Q&A resources that help with specific secure-programming problems, but the web also contains many general resources that discuss security and secure programming more broadly, and to our knowledge few if any of these have been empirically evaluated. The continuing prevalence of security bugs suggests that this guidance ecosystem is not currently working well enough: either effective guidance is not available, or it is not reaching the developers who need it. This paper takes a first step toward understanding and improving this guidance ecosystem by identifying and analyzing 19 general advice resources. The results identify important gaps in the current ecosystem and provide a basis for future work evaluating existing resources and developing new ones to fill these gaps.","PeriodicalId":415145,"journal":{"name":"2017 IEEE Cybersecurity Development (SecDev)","volume":"82 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-09-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115207783","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}
引用次数: 100
Java Deserialization Vulnerabilities and Mitigations Java反序列化漏洞和缓解措施
Pub Date : 2017-09-01 DOI: 10.1109/SECDEV.2017.13
R. Seacord
This tutorial provides developers with practical guidance for securely implementing Java Serialization. Java deserialization is a clear and present danger as its widely used both directly by applications and indirectly by Java subsystems such as RMI (Remote Method Invocation), JMX (Java Management Extension), JMS (Java Messaging System). Deserialization of untrusted streams can result in remote code execution (RCE), denial-of service (DoS), and a range of other exploits. Applications can be vulnerable to these attacks even if they did nothing wrong
本教程为开发人员提供了安全实现Java序列化的实用指导。Java反序列化是一个明显而现实的危险,因为它被应用程序直接使用,也被诸如RMI(远程方法调用)、JMX (Java管理扩展)、JMS (Java消息传递系统)等Java子系统间接使用。不受信任流的反序列化可能导致远程代码执行(RCE)、拒绝服务(DoS)和一系列其他漏洞。应用程序可能容易受到这些攻击,即使它们没有做错任何事情
{"title":"Java Deserialization Vulnerabilities and Mitigations","authors":"R. Seacord","doi":"10.1109/SECDEV.2017.13","DOIUrl":"https://doi.org/10.1109/SECDEV.2017.13","url":null,"abstract":"This tutorial provides developers with practical guidance for securely implementing Java Serialization. Java deserialization is a clear and present danger as its widely used both directly by applications and indirectly by Java subsystems such as RMI (Remote Method Invocation), JMX (Java Management Extension), JMS (Java Messaging System). Deserialization of untrusted streams can result in remote code execution (RCE), denial-of service (DoS), and a range of other exploits. Applications can be vulnerable to these attacks even if they did nothing wrong","PeriodicalId":415145,"journal":{"name":"2017 IEEE Cybersecurity Development (SecDev)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123493378","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
FaCT: A Flexible, Constant-Time Programming Language 事实:一种灵活的、固定时间的编程语言
Pub Date : 2017-09-01 DOI: 10.1109/SecDev.2017.24
S. Cauligi, Gary Soeller, Fraser Brown, Brian Johannesmeyer, Yunlu Huang, Ranjit Jhala, D. Stefan
We argue that C is unsuitable for writing timingchannel free cryptographic code that is both fast and readable. Readable implementations of crypto routines would contain highlevel constructs like if statements, constructs that also introduce timing vulnerabilities. To avoid vulnerabilities, programmers must rewrite their code to dodge intuitive yet dangerous constructs, cluttering the codebase and potentially introducing new errors. Moreover, even when programmers are diligent, compiler optimization passes may still introduce branches and other sources of timing side channels. This status quo is the worst of both worlds: tortured source code that can still yield vulnerable machine code. We propose to solve this problem with a domainspecific language that permits programmers to intuitively express crypto routines and reason about secret values, and a compiler that generates efficient, timing-channel free assembly code.
我们认为C语言不适合编写既快速又可读的无时间通道加密代码。加密例程的可读实现将包含像if语句这样的高级结构,这些结构也会引入计时漏洞。为了避免漏洞,程序员必须重写他们的代码,以避开直观但危险的结构,使代码库混乱,并可能引入新的错误。此外,即使程序员很勤奋,编译器优化过程仍然可能引入分支和其他计时侧通道的来源。这种现状是两个世界中最糟糕的:饱受折磨的源代码仍然可能产生易受攻击的机器码。我们建议用一种特定领域的语言来解决这个问题,这种语言允许程序员直观地表达加密例程和对秘密值的推理,以及一个编译器来生成高效的、没有时间通道的汇编代码。
{"title":"FaCT: A Flexible, Constant-Time Programming Language","authors":"S. Cauligi, Gary Soeller, Fraser Brown, Brian Johannesmeyer, Yunlu Huang, Ranjit Jhala, D. Stefan","doi":"10.1109/SecDev.2017.24","DOIUrl":"https://doi.org/10.1109/SecDev.2017.24","url":null,"abstract":"We argue that C is unsuitable for writing timingchannel free cryptographic code that is both fast and readable. Readable implementations of crypto routines would contain highlevel constructs like if statements, constructs that also introduce timing vulnerabilities. To avoid vulnerabilities, programmers must rewrite their code to dodge intuitive yet dangerous constructs, cluttering the codebase and potentially introducing new errors. Moreover, even when programmers are diligent, compiler optimization passes may still introduce branches and other sources of timing side channels. This status quo is the worst of both worlds: tortured source code that can still yield vulnerable machine code. We propose to solve this problem with a domainspecific language that permits programmers to intuitively express crypto routines and reason about secret values, and a compiler that generates efficient, timing-channel free assembly code.","PeriodicalId":415145,"journal":{"name":"2017 IEEE Cybersecurity Development (SecDev)","volume":"65 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116671548","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}
引用次数: 46
Angr - The Next Generation of Binary Analysis Angr -下一代二进制分析
Pub Date : 2017-09-01 DOI: 10.1109/SecDev.2017.14
Fish Wang, Yan Shoshitaishvili
Software is becoming increasingly more complex, and vul-nerabilities more subtle Better approaches are required to effectively analyze modern binaries, efficiently identify deeply buried defects, and intelligently assist human analysts with specific software reversing tasks Tons of good techniques and approaches regarding binary analysis have recently emerged from both academia and industry, many of which are fairly applicable to real-world binary research tasks However, due to the lack of a flexible and approachable binary analysis platform, testing and applying these techniques becomes a difficult job. angr is the next-generation binary analysis platform devel-oped by the SecLab of University of California, Santa Barbara It is flexible, easy to work with, cross-platform and cross-architecture, and has many techniques from academia already implemented and embedded inside In this course, we will start about the fundamental underpinnings of angr, dynamic symbolic execution, and static binary analysis We will then demonstrate best practices in doing symbolic execution and data dependence tracking in angr In the end, we will show how angr can assist in bug hunting All demos will be performed on CTF challenges and real-world programs.
软件变得越来越复杂,漏洞越来越微妙,需要更好的方法来有效地分析现代二进制文件,有效地识别深埋的缺陷,并智能地协助人类分析人员完成特定的软件逆转任务。最近,学术界和工业界都出现了大量关于二进制分析的好技术和方法,其中许多相当适用于现实世界的二进制研究任务。由于缺乏一个灵活和易于接近的二进制分析平台,测试和应用这些技术成为一项困难的工作。angr是由加州大学圣巴巴拉分校SecLab开发的下一代二进制分析平台,它灵活,易于使用,跨平台和跨架构,并且已经实现和嵌入了许多学术界的技术。在本课程中,我们将开始了解angr的基本基础,动态符号执行,然后,我们将演示在angr中进行符号执行和数据依赖跟踪的最佳实践。最后,我们将展示angr如何帮助查找错误。所有演示将在CTF挑战和现实世界的程序上执行。
{"title":"Angr - The Next Generation of Binary Analysis","authors":"Fish Wang, Yan Shoshitaishvili","doi":"10.1109/SecDev.2017.14","DOIUrl":"https://doi.org/10.1109/SecDev.2017.14","url":null,"abstract":"Software is becoming increasingly more complex, and vul-nerabilities more subtle Better approaches are required to effectively analyze modern binaries, efficiently identify deeply buried defects, and intelligently assist human analysts with specific software reversing tasks Tons of good techniques and approaches regarding binary analysis have recently emerged from both academia and industry, many of which are fairly applicable to real-world binary research tasks However, due to the lack of a flexible and approachable binary analysis platform, testing and applying these techniques becomes a difficult job. angr is the next-generation binary analysis platform devel-oped by the SecLab of University of California, Santa Barbara It is flexible, easy to work with, cross-platform and cross-architecture, and has many techniques from academia already implemented and embedded inside In this course, we will start about the fundamental underpinnings of angr, dynamic symbolic execution, and static binary analysis We will then demonstrate best practices in doing symbolic execution and data dependence tracking in angr In the end, we will show how angr can assist in bug hunting All demos will be performed on CTF challenges and real-world programs.","PeriodicalId":415145,"journal":{"name":"2017 IEEE Cybersecurity Development (SecDev)","volume":"70 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121396798","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}
引用次数: 64
Creating Abuse Cases Based on Attack Patterns: A User Study 基于攻击模式创建滥用案例:用户研究
Pub Date : 2017-09-01 DOI: 10.1109/SecDev.2017.27
Imano Williams, Xiaohong Yuan
Software developers need to address security risks and elicit security requirements in the early stages of the Software Development Life Cycle. It is important to investigate how novices can incorporate security in the early stages of the SDLC.
软件开发人员需要在软件开发生命周期的早期阶段处理安全风险并引出安全需求。研究新手如何在SDLC的早期阶段整合安全性是很重要的。
{"title":"Creating Abuse Cases Based on Attack Patterns: A User Study","authors":"Imano Williams, Xiaohong Yuan","doi":"10.1109/SecDev.2017.27","DOIUrl":"https://doi.org/10.1109/SecDev.2017.27","url":null,"abstract":"Software developers need to address security risks and elicit security requirements in the early stages of the Software Development Life Cycle. It is important to investigate how novices can incorporate security in the early stages of the SDLC.","PeriodicalId":415145,"journal":{"name":"2017 IEEE Cybersecurity Development (SecDev)","volume":"9 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121653749","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
A Machine Learning Approach to SDL SDL的机器学习方法
Pub Date : 2017-09-01 DOI: 10.1109/SecDev.2017.15
R. Kannavara, Gilad Gressel, Damilare Fagbemi, Richard Chow
Security Risk Assessments (SRA) play a key role in the Security Development Lifecycle (SDL). At an early stage of the project, the SRA helps allocate security resources and identifies SDL requirements and activities. In this paper, we present key findings from a machine learning approach toward the SRA that seeks to learn from a database of previous product security risk assessments and associated requirements and activities. This approach has been implemented and adopted by product teams across our organization.
安全风险评估(SRA)在安全开发生命周期(SDL)中扮演着关键的角色。在项目的早期阶段,SRA帮助分配安全资源并确定SDL需求和活动。在本文中,我们提出了针对SRA的机器学习方法的主要发现,该方法旨在从以前的产品安全风险评估和相关需求和活动的数据库中学习。这个方法已经被整个组织的产品团队实现和采用。
{"title":"A Machine Learning Approach to SDL","authors":"R. Kannavara, Gilad Gressel, Damilare Fagbemi, Richard Chow","doi":"10.1109/SecDev.2017.15","DOIUrl":"https://doi.org/10.1109/SecDev.2017.15","url":null,"abstract":"Security Risk Assessments (SRA) play a key role in the Security Development Lifecycle (SDL). At an early stage of the project, the SRA helps allocate security resources and identifies SDL requirements and activities. In this paper, we present key findings from a machine learning approach toward the SRA that seeks to learn from a database of previous product security risk assessments and associated requirements and activities. This approach has been implemented and adopted by product teams across our organization.","PeriodicalId":415145,"journal":{"name":"2017 IEEE Cybersecurity Development (SecDev)","volume":"69 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122713815","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
Program Analysis of Cryptographic Implementations for Security 安全加密实现的程序分析
Pub Date : 2017-09-01 DOI: 10.1109/SecDev.2017.23
Sazzadur Rahaman, D. Yao
Cryptographic implementation errors in popular open source libraries (e.g., OpenSSL, GnuTLS, BotanTLS, etc.) and the misuses of cryptographic primitives (e.g., as in Juniper Network) have been the major source of vulnerabilities in the wild. These serious problems prompt the need for new compile-time security checking. Such security enforcements demand the study of various cryptographic properties and their mapping into enforceable program analysis rules. We refer to this new security approach as cryptographic program analysis (CPA). In this paper, we show how cryptographic program analysis can be performed effectively andits security applications. Specifically, we systematically investigate different threat categories on various cryptographicimplementations and their usages. Then, we derive varioussecurity rules, which are enforceable by program analysistools during code compilation. We also demonstrate the capabilities of static taint analysis to enforce most of these security rules and provide a prototype implementation. We point out promising future research and development directions in this new area of cryptographic program analysis.
流行的开源库(例如OpenSSL, GnuTLS, BotanTLS等)中的加密实现错误以及加密原语的滥用(例如,在Juniper Network中)一直是野外漏洞的主要来源。这些严重的问题促使我们需要进行新的编译时安全性检查。这种安全性强制要求研究各种加密属性,并将它们映射到可执行的程序分析规则中。我们将这种新的安全方法称为加密程序分析(CPA)。在本文中,我们展示了如何有效地进行密码程序分析及其安全应用。具体来说,我们系统地研究了各种加密实现及其使用的不同威胁类别。然后,我们推导出各种安全规则,这些规则在代码编译期间由程序分析工具强制执行。我们还演示了静态污染分析执行这些安全规则的能力,并提供了一个原型实现。我们指出了这一新的密码程序分析领域未来的研究和发展方向。
{"title":"Program Analysis of Cryptographic Implementations for Security","authors":"Sazzadur Rahaman, D. Yao","doi":"10.1109/SecDev.2017.23","DOIUrl":"https://doi.org/10.1109/SecDev.2017.23","url":null,"abstract":"Cryptographic implementation errors in popular open source libraries (e.g., OpenSSL, GnuTLS, BotanTLS, etc.) and the misuses of cryptographic primitives (e.g., as in Juniper Network) have been the major source of vulnerabilities in the wild. These serious problems prompt the need for new compile-time security checking. Such security enforcements demand the study of various cryptographic properties and their mapping into enforceable program analysis rules. We refer to this new security approach as cryptographic program analysis (CPA). In this paper, we show how cryptographic program analysis can be performed effectively andits security applications. Specifically, we systematically investigate different threat categories on various cryptographicimplementations and their usages. Then, we derive varioussecurity rules, which are enforceable by program analysistools during code compilation. We also demonstrate the capabilities of static taint analysis to enforce most of these security rules and provide a prototype implementation. We point out promising future research and development directions in this new area of cryptographic program analysis.","PeriodicalId":415145,"journal":{"name":"2017 IEEE Cybersecurity Development (SecDev)","volume":"22 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123730882","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}
引用次数: 20
Input Handling Done Right: Building Hardened Parsers Using Language-Theoretic Security 正确的输入处理:使用语言理论安全性构建强化的解析器
Pub Date : 2017-09-01 DOI: 10.1109/SecDev.2017.12
Prashant Anantharaman, Michael C. Millian, S. Bratus, M. Patterson
Input-handling vulnerabilities have been a constant source of security problems for decades. Many famous recent bugs are in fact input-handling bugs. We argue that the techniques for writing parsers in its present form are insufficient, and hence we propose a new pattern. In this tutorial, we will show participants a new design pattern for designing and implementing parsers using this new method. Participants will witness how this new method leads to more readable code that is easier to audit - while also inherently preventing many input-handling mistakes and having a small CPU footprint.
几十年来,输入处理漏洞一直是安全问题的根源。最近许多著名的错误实际上是输入处理错误。我们认为以目前的形式编写解析器的技术是不够的,因此我们提出了一种新的模式。在本教程中,我们将向参与者展示使用这种新方法设计和实现解析器的新设计模式。参与者将见证这种新方法是如何产生更易读、更容易审计的代码的——同时也从本质上防止了许多输入处理错误,并具有较小的CPU占用。
{"title":"Input Handling Done Right: Building Hardened Parsers Using Language-Theoretic Security","authors":"Prashant Anantharaman, Michael C. Millian, S. Bratus, M. Patterson","doi":"10.1109/SecDev.2017.12","DOIUrl":"https://doi.org/10.1109/SecDev.2017.12","url":null,"abstract":"Input-handling vulnerabilities have been a constant source of security problems for decades. Many famous recent bugs are in fact input-handling bugs. We argue that the techniques for writing parsers in its present form are insufficient, and hence we propose a new pattern. In this tutorial, we will show participants a new design pattern for designing and implementing parsers using this new method. Participants will witness how this new method leads to more readable code that is easier to audit - while also inherently preventing many input-handling mistakes and having a small CPU footprint.","PeriodicalId":415145,"journal":{"name":"2017 IEEE Cybersecurity Development (SecDev)","volume":"39 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132687825","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
Improving Attention to Security in Software Design with Analytics and Cognitive Techniques 用分析和认知技术提高对软件设计安全性的关注
Pub Date : 2017-09-01 DOI: 10.1109/SecDev.2017.16
J. Whitmore, W. Tobin
There is widening chasm between the ease of creating software and difficulty of "building security in". This paper reviews the approach, the findings and recent experiments from a seven-year effort to enable consistency across a large, diverse development organization and software portfolio via policies, guidance, automated tools and services. Experience shows that developing secure software is an elusive goal for most. It requires every team to know and apply a wide range of security knowledge in the context of what software is being built, how the software will be used, and the projected threats in the environment where the software will operate. The drive for better outcomes for secure development and increased developer productivity led to experiments to augment developer knowledge and eventually realize the goal of "building the right security in".
开发软件的便捷性和“构建安全”的难度之间的鸿沟正在扩大。本文回顾了方法、发现和最近的实验,从七年的努力中,通过政策、指导、自动化工具和服务,在一个大型的、多样化的开发组织和软件投资组合中实现一致性。经验表明,开发安全软件对大多数人来说是一个难以实现的目标。它要求每个团队了解并应用广泛的安全知识,包括正在构建的软件、软件将如何使用以及软件运行环境中预计的威胁。为了获得更好的安全开发结果和提高开发人员的生产力,需要进行实验,以增加开发人员的知识,并最终实现“构建正确的安全性”的目标。
{"title":"Improving Attention to Security in Software Design with Analytics and Cognitive Techniques","authors":"J. Whitmore, W. Tobin","doi":"10.1109/SecDev.2017.16","DOIUrl":"https://doi.org/10.1109/SecDev.2017.16","url":null,"abstract":"There is widening chasm between the ease of creating software and difficulty of \"building security in\". This paper reviews the approach, the findings and recent experiments from a seven-year effort to enable consistency across a large, diverse development organization and software portfolio via policies, guidance, automated tools and services. Experience shows that developing secure software is an elusive goal for most. It requires every team to know and apply a wide range of security knowledge in the context of what software is being built, how the software will be used, and the projected threats in the environment where the software will operate. The drive for better outcomes for secure development and increased developer productivity led to experiments to augment developer knowledge and eventually realize the goal of \"building the right security in\".","PeriodicalId":415145,"journal":{"name":"2017 IEEE Cybersecurity Development (SecDev)","volume":"42 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133056356","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
期刊
2017 IEEE Cybersecurity Development (SecDev)
全部 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.
﹀
mjeditor
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
Book学术官方微信
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1