The Experts below are selected from a list of 15192 Experts worldwide ranked by ideXlab platform
Angelos D. Keromytis - One of the best experts on this subject based on the ideXlab platform.
-
A Stack Memory Abstraction and Symbolic Analysis Framework for Executables
ACM Transactions on Software Engineering and Methodology, 2016Co-Authors: Kapil Anand, Khaled Elwazeer, Aparna Kotha, Matthew Smithson, Rajeev Barua, Angelos D. KeromytisAbstract:This article makes three contributions regarding reverse-engineering of executables. First, techniques are presented for recovering a precise and correct stack-Memory model in executables while addressing executable-specific challenges such as indirect control transfers. Next, the enhanced Memory model is employed to define a novel symbolic analysis framework for executables that can perform the same types of program analyses as source-level tools. Third, a demand-driven framework is presented to enhance the scalability of the symbolic analysis framework. Existing symbolic analysis frameworks for executables fail to simultaneously maintain the properties of correct representation, a precise stack-Memory model, and scalability. Furthermore, they ignore Memory-allocated variables when defining symbolic analysis mechanisms. Our methods do not use symbolic, relocation or debug information, which are usually absent in deployed binaries. We describe our framework, highlighting the novel intellectual contributions of our approach and demonstrating its efficacy and robustness. Our techniques improve the precision of existing stack-Memory models by 25p, enhance scalability of our basic symbolic analysis mechanism by 10×, and successfully uncovers five previously undiscovered information-flow vulnerabilities in several widely used programs.
-
an accurate stack Memory Abstraction and symbolic analysis framework for executables
International Conference on Software Maintenance, 2013Co-Authors: Kapil Anand, Khaled Elwazeer, Aparna Kotha, Matthew Smithson, Rajeev Barua, Angelos D. KeromytisAbstract:This paper makes two contributions regarding reverse engineering of executables. First, techniques are presented for recovering a precise and correct stack Memory model in executables in presence of executable-specific artifacts such as indirect control transfers. Next, the enhanced Memory model is employed to define a novel symbolic analysis framework for executables that can perform the same types of program analysis as source-level tools. Frameworks hitherto fail to simultaneously maintain the properties of correct representation and precise Memory model and ignore Memory-allocated variables while defining symbolic analysis mechanisms. Our methods do not use symbolic, relocation, or debug information, which are usually absent in deployed binaries. We describe our framework, highlighting the novel intellectual contributions of our approach, and demonstrate its efficacy and robustness by applying it to various traditional analyses, including identifying information flow vulnerabilities in five real-world programs.
-
ICSM - An Accurate Stack Memory Abstraction and Symbolic Analysis Framework for Executables
2013 IEEE International Conference on Software Maintenance, 2013Co-Authors: Kapil Anand, Khaled Elwazeer, Aparna Kotha, Matthew Smithson, Rajeev Barua, Angelos D. KeromytisAbstract:This paper makes two contributions regarding reverse engineering of executables. First, techniques are presented for recovering a precise and correct stack Memory model in executables in presence of executable-specific artifacts such as indirect control transfers. Next, the enhanced Memory model is employed to define a novel symbolic analysis framework for executables that can perform the same types of program analysis as source-level tools. Frameworks hitherto fail to simultaneously maintain the properties of correct representation and precise Memory model and ignore Memory-allocated variables while defining symbolic analysis mechanisms. Our methods do not use symbolic, relocation, or debug information, which are usually absent in deployed binaries. We describe our framework, highlighting the novel intellectual contributions of our approach, and demonstrate its efficacy and robustness by applying it to various traditional analyses, including identifying information flow vulnerabilities in five real-world programs.
Kapil Anand - One of the best experts on this subject based on the ideXlab platform.
-
A Stack Memory Abstraction and Symbolic Analysis Framework for Executables
ACM Transactions on Software Engineering and Methodology, 2016Co-Authors: Kapil Anand, Khaled Elwazeer, Aparna Kotha, Matthew Smithson, Rajeev Barua, Angelos D. KeromytisAbstract:This article makes three contributions regarding reverse-engineering of executables. First, techniques are presented for recovering a precise and correct stack-Memory model in executables while addressing executable-specific challenges such as indirect control transfers. Next, the enhanced Memory model is employed to define a novel symbolic analysis framework for executables that can perform the same types of program analyses as source-level tools. Third, a demand-driven framework is presented to enhance the scalability of the symbolic analysis framework. Existing symbolic analysis frameworks for executables fail to simultaneously maintain the properties of correct representation, a precise stack-Memory model, and scalability. Furthermore, they ignore Memory-allocated variables when defining symbolic analysis mechanisms. Our methods do not use symbolic, relocation or debug information, which are usually absent in deployed binaries. We describe our framework, highlighting the novel intellectual contributions of our approach and demonstrating its efficacy and robustness. Our techniques improve the precision of existing stack-Memory models by 25p, enhance scalability of our basic symbolic analysis mechanism by 10×, and successfully uncovers five previously undiscovered information-flow vulnerabilities in several widely used programs.
-
an accurate stack Memory Abstraction and symbolic analysis framework for executables
International Conference on Software Maintenance, 2013Co-Authors: Kapil Anand, Khaled Elwazeer, Aparna Kotha, Matthew Smithson, Rajeev Barua, Angelos D. KeromytisAbstract:This paper makes two contributions regarding reverse engineering of executables. First, techniques are presented for recovering a precise and correct stack Memory model in executables in presence of executable-specific artifacts such as indirect control transfers. Next, the enhanced Memory model is employed to define a novel symbolic analysis framework for executables that can perform the same types of program analysis as source-level tools. Frameworks hitherto fail to simultaneously maintain the properties of correct representation and precise Memory model and ignore Memory-allocated variables while defining symbolic analysis mechanisms. Our methods do not use symbolic, relocation, or debug information, which are usually absent in deployed binaries. We describe our framework, highlighting the novel intellectual contributions of our approach, and demonstrate its efficacy and robustness by applying it to various traditional analyses, including identifying information flow vulnerabilities in five real-world programs.
-
ICSM - An Accurate Stack Memory Abstraction and Symbolic Analysis Framework for Executables
2013 IEEE International Conference on Software Maintenance, 2013Co-Authors: Kapil Anand, Khaled Elwazeer, Aparna Kotha, Matthew Smithson, Rajeev Barua, Angelos D. KeromytisAbstract:This paper makes two contributions regarding reverse engineering of executables. First, techniques are presented for recovering a precise and correct stack Memory model in executables in presence of executable-specific artifacts such as indirect control transfers. Next, the enhanced Memory model is employed to define a novel symbolic analysis framework for executables that can perform the same types of program analysis as source-level tools. Frameworks hitherto fail to simultaneously maintain the properties of correct representation and precise Memory model and ignore Memory-allocated variables while defining symbolic analysis mechanisms. Our methods do not use symbolic, relocation, or debug information, which are usually absent in deployed binaries. We describe our framework, highlighting the novel intellectual contributions of our approach, and demonstrate its efficacy and robustness by applying it to various traditional analyses, including identifying information flow vulnerabilities in five real-world programs.
Ion Stoica - One of the best experts on this subject based on the ideXlab platform.
-
resilient distributed datasets a fault tolerant Abstraction for in Memory cluster computing
Networked Systems Design and Implementation, 2012Co-Authors: Matei Zaharia, Michael J. Franklin, Scott Shenker, Mosharaf Chowdhury, Tathagata Das, Ankur Dave, Murphy Mccauley, Ion StoicaAbstract:We present Resilient Distributed Datasets (RDDs), a distributed Memory Abstraction that lets programmers perform in-Memory computations on large clusters in a fault-tolerant manner. RDDs are motivated by two types of applications that current computing frameworks handle inefficiently: iterative algorithms and interactive data mining tools. In both cases, keeping data in Memory can improve performance by an order of magnitude. To achieve fault tolerance efficiently, RDDs provide a restricted form of shared Memory, based on coarse-grained transformations rather than fine-grained updates to shared state. However, we show that RDDs are expressive enough to capture a wide class of computations, including recent specialized programming models for iterative jobs, such as Pregel, and new applications that these models do not capture. We have implemented RDDs in a system called Spark, which we evaluate through a variety of user applications and benchmarks.
-
NSDI - Resilient distributed datasets: a fault-tolerant Abstraction for in-Memory cluster computing
2012Co-Authors: Matei Zaharia, Michael J. Franklin, Scott Shenker, Mosharaf Chowdhury, Tathagata Das, Ankur Dave, Murphy Mccauley, Ion StoicaAbstract:We present Resilient Distributed Datasets (RDDs), a distributed Memory Abstraction that lets programmers perform in-Memory computations on large clusters in a fault-tolerant manner. RDDs are motivated by two types of applications that current computing frameworks handle inefficiently: iterative algorithms and interactive data mining tools. In both cases, keeping data in Memory can improve performance by an order of magnitude. To achieve fault tolerance efficiently, RDDs provide a restricted form of shared Memory, based on coarse-grained transformations rather than fine-grained updates to shared state. However, we show that RDDs are expressive enough to capture a wide class of computations, including recent specialized programming models for iterative jobs, such as Pregel, and new applications that these models do not capture. We have implemented RDDs in a system called Spark, which we evaluate through a variety of user applications and benchmarks.
-
SIGMOD Conference - Shark: fast data analysis using coarse-grained distributed Memory
Proceedings of the 2012 international conference on Management of Data - SIGMOD '12, 2012Co-Authors: Cliff Engle, Antonio Lupher, Reynold Xin, Matei Zaharia, Michael J. Franklin, Scott Shenker, Ion StoicaAbstract:Shark is a research data analysis system built on a novel coarse-grained distributed shared-Memory Abstraction. Shark marries query processing with deep data analysis, providing a unified system for easy data manipulation using SQL and pushing sophisticated analysis closer to data. It scales to thousands of nodes in a fault-tolerant manner. Shark can answer queries 40X faster than Apache Hive and run machine learning programs 25X faster than MapReduce programs in Apache Hadoop on large datasets.
Matthew Smithson - One of the best experts on this subject based on the ideXlab platform.
-
A Stack Memory Abstraction and Symbolic Analysis Framework for Executables
ACM Transactions on Software Engineering and Methodology, 2016Co-Authors: Kapil Anand, Khaled Elwazeer, Aparna Kotha, Matthew Smithson, Rajeev Barua, Angelos D. KeromytisAbstract:This article makes three contributions regarding reverse-engineering of executables. First, techniques are presented for recovering a precise and correct stack-Memory model in executables while addressing executable-specific challenges such as indirect control transfers. Next, the enhanced Memory model is employed to define a novel symbolic analysis framework for executables that can perform the same types of program analyses as source-level tools. Third, a demand-driven framework is presented to enhance the scalability of the symbolic analysis framework. Existing symbolic analysis frameworks for executables fail to simultaneously maintain the properties of correct representation, a precise stack-Memory model, and scalability. Furthermore, they ignore Memory-allocated variables when defining symbolic analysis mechanisms. Our methods do not use symbolic, relocation or debug information, which are usually absent in deployed binaries. We describe our framework, highlighting the novel intellectual contributions of our approach and demonstrating its efficacy and robustness. Our techniques improve the precision of existing stack-Memory models by 25p, enhance scalability of our basic symbolic analysis mechanism by 10×, and successfully uncovers five previously undiscovered information-flow vulnerabilities in several widely used programs.
-
an accurate stack Memory Abstraction and symbolic analysis framework for executables
International Conference on Software Maintenance, 2013Co-Authors: Kapil Anand, Khaled Elwazeer, Aparna Kotha, Matthew Smithson, Rajeev Barua, Angelos D. KeromytisAbstract:This paper makes two contributions regarding reverse engineering of executables. First, techniques are presented for recovering a precise and correct stack Memory model in executables in presence of executable-specific artifacts such as indirect control transfers. Next, the enhanced Memory model is employed to define a novel symbolic analysis framework for executables that can perform the same types of program analysis as source-level tools. Frameworks hitherto fail to simultaneously maintain the properties of correct representation and precise Memory model and ignore Memory-allocated variables while defining symbolic analysis mechanisms. Our methods do not use symbolic, relocation, or debug information, which are usually absent in deployed binaries. We describe our framework, highlighting the novel intellectual contributions of our approach, and demonstrate its efficacy and robustness by applying it to various traditional analyses, including identifying information flow vulnerabilities in five real-world programs.
-
ICSM - An Accurate Stack Memory Abstraction and Symbolic Analysis Framework for Executables
2013 IEEE International Conference on Software Maintenance, 2013Co-Authors: Kapil Anand, Khaled Elwazeer, Aparna Kotha, Matthew Smithson, Rajeev Barua, Angelos D. KeromytisAbstract:This paper makes two contributions regarding reverse engineering of executables. First, techniques are presented for recovering a precise and correct stack Memory model in executables in presence of executable-specific artifacts such as indirect control transfers. Next, the enhanced Memory model is employed to define a novel symbolic analysis framework for executables that can perform the same types of program analysis as source-level tools. Frameworks hitherto fail to simultaneously maintain the properties of correct representation and precise Memory model and ignore Memory-allocated variables while defining symbolic analysis mechanisms. Our methods do not use symbolic, relocation, or debug information, which are usually absent in deployed binaries. We describe our framework, highlighting the novel intellectual contributions of our approach, and demonstrate its efficacy and robustness by applying it to various traditional analyses, including identifying information flow vulnerabilities in five real-world programs.
Khaled Elwazeer - One of the best experts on this subject based on the ideXlab platform.
-
A Stack Memory Abstraction and Symbolic Analysis Framework for Executables
ACM Transactions on Software Engineering and Methodology, 2016Co-Authors: Kapil Anand, Khaled Elwazeer, Aparna Kotha, Matthew Smithson, Rajeev Barua, Angelos D. KeromytisAbstract:This article makes three contributions regarding reverse-engineering of executables. First, techniques are presented for recovering a precise and correct stack-Memory model in executables while addressing executable-specific challenges such as indirect control transfers. Next, the enhanced Memory model is employed to define a novel symbolic analysis framework for executables that can perform the same types of program analyses as source-level tools. Third, a demand-driven framework is presented to enhance the scalability of the symbolic analysis framework. Existing symbolic analysis frameworks for executables fail to simultaneously maintain the properties of correct representation, a precise stack-Memory model, and scalability. Furthermore, they ignore Memory-allocated variables when defining symbolic analysis mechanisms. Our methods do not use symbolic, relocation or debug information, which are usually absent in deployed binaries. We describe our framework, highlighting the novel intellectual contributions of our approach and demonstrating its efficacy and robustness. Our techniques improve the precision of existing stack-Memory models by 25p, enhance scalability of our basic symbolic analysis mechanism by 10×, and successfully uncovers five previously undiscovered information-flow vulnerabilities in several widely used programs.
-
an accurate stack Memory Abstraction and symbolic analysis framework for executables
International Conference on Software Maintenance, 2013Co-Authors: Kapil Anand, Khaled Elwazeer, Aparna Kotha, Matthew Smithson, Rajeev Barua, Angelos D. KeromytisAbstract:This paper makes two contributions regarding reverse engineering of executables. First, techniques are presented for recovering a precise and correct stack Memory model in executables in presence of executable-specific artifacts such as indirect control transfers. Next, the enhanced Memory model is employed to define a novel symbolic analysis framework for executables that can perform the same types of program analysis as source-level tools. Frameworks hitherto fail to simultaneously maintain the properties of correct representation and precise Memory model and ignore Memory-allocated variables while defining symbolic analysis mechanisms. Our methods do not use symbolic, relocation, or debug information, which are usually absent in deployed binaries. We describe our framework, highlighting the novel intellectual contributions of our approach, and demonstrate its efficacy and robustness by applying it to various traditional analyses, including identifying information flow vulnerabilities in five real-world programs.
-
ICSM - An Accurate Stack Memory Abstraction and Symbolic Analysis Framework for Executables
2013 IEEE International Conference on Software Maintenance, 2013Co-Authors: Kapil Anand, Khaled Elwazeer, Aparna Kotha, Matthew Smithson, Rajeev Barua, Angelos D. KeromytisAbstract:This paper makes two contributions regarding reverse engineering of executables. First, techniques are presented for recovering a precise and correct stack Memory model in executables in presence of executable-specific artifacts such as indirect control transfers. Next, the enhanced Memory model is employed to define a novel symbolic analysis framework for executables that can perform the same types of program analysis as source-level tools. Frameworks hitherto fail to simultaneously maintain the properties of correct representation and precise Memory model and ignore Memory-allocated variables while defining symbolic analysis mechanisms. Our methods do not use symbolic, relocation, or debug information, which are usually absent in deployed binaries. We describe our framework, highlighting the novel intellectual contributions of our approach, and demonstrate its efficacy and robustness by applying it to various traditional analyses, including identifying information flow vulnerabilities in five real-world programs.