Custom cover image
Custom cover image

Software Similarity and Classification / by Silvio Cesare, Yang Xiang

By: Contributor(s): Resource type: Ressourcentyp: Buch (Online)Book (Online)Language: English Series: SpringerBriefs in Computer Science | SpringerLink BücherPublisher: London : Springer London, 2012Description: Online-Ressource (XIV, 88p. 26 illus, digital)ISBN:
  • 9781447129097
  • 1280793031
  • 9781280793035
Subject(s): Additional physical formats: 9781447129080 | Buchausg. u.d.T.: 9781447129080 DDC classification:
  • 005.8
MSC: MSC: *68-02 | 68N30 | 68N99RVK: RVK: ST 276LOC classification:
  • QA76.9.A25
DOI: DOI: 10.1007/978-1-4471-2909-7Online resources:
Contents:
Software Similarity and Classification; Preface; Acknowledgments; Contents; 1 Introduction; Abstract; 1.1…Background; 1.2…Applications of Software Similarity and Classification; 1.3…Motivation; 1.4…Problem Formulization; 1.5…Problem Overview; 1.6…Aims and Scope; 1.7…Book Organization; References; 2 Taxonomy of Program Features; Abstract; 2.1…Syntactic Features; 2.1.1 Raw Code; 2.1.2 Abstract Syntax Trees; 2.1.3 Variables; 2.1.4 Pointers; 2.1.5 Instructions; 2.1.5.1 Assembly; 2.1.5.2 Intermediate Representations; 2.1.6 Basic Blocks; 2.1.7 Procedures; 2.1.8 Control Flow Graphs
2.1.9 Call Graphs2.1.10 Object Inheritances and Dependencies; 2.2…Semantic Features; 2.2.1 API Calls; 2.2.2 Data Flow; 2.2.3 Procedure Dependence Graphs; 2.2.4 System Dependence Graph; 2.3…Taxonomy of Features in Program Binaries; 2.3.1 Object File Formats; 2.3.2 Headers; 2.3.3 Object Code; 2.3.4 Symbols; 2.3.5 Debugging Information; 2.3.6 Relocations; 2.3.7 Dynamic Linking Information; 2.4…Case Studies; 2.4.1 Portable Executable; 2.4.2 Executable and Linking Format; 2.4.3 Java Class File; References; 3 Program Transformations and Obfuscations; Abstract
3.1…Compiler Optimisation and Recompilation3.1.1 Instruction Reordering; 3.1.2 Loop Invariant Code Motion; 3.1.3 Code Fusion; 3.1.4 Function Inlining; 3.1.5 Loop Unrolling; 3.1.6 Branch/Loop Inversion; 3.1.7 Strength Reduction; 3.1.8 Algebraic Identities; 3.1.9 Register Reassignment; 3.2…Program Obfuscation; 3.3…Plagiarism, Software Theft, and Derivative Works; 3.3.1 Semantic Changes; 3.3.2 Code Insertion; 3.3.3 Code Deletion; 3.3.4 Code Substitution; 3.3.5 Code Transposition; 3.4…Malware Packing, Polymorphism, and Metamorphism; 3.4.1 Dead Code Insertion; 3.4.2 Instruction Substitution
3.4.3 Variable Renaming3.4.4 Code Reordering; 3.4.5 Branch Obfuscation; 3.4.6 Branch Inversion and Flipping; 3.4.7 Opaque Predicate Insertion; 3.4.8 Malware Obfuscation Using Code Packing; 3.4.9 Traditional Code Packing; 3.4.10 Shifting Decode Frame; 3.4.11 Instruction Virtualization and Malware Emulators; 3.5…Features under Program Transformations; References; 4 Formal Methods of Program Analysis; Abstract; 4.1…Static Feature Extraction; 4.2…Formal Syntax and Lexical Analysis; 4.3…Parsing; 4.4…Intermediate Representations; 4.4.1 Intermediate Code Generation; 4.4.2 Abstract Machines
4.4.3 Basic Blocks4.4.4 Control Flow Graph; 4.4.5 Call Graph; 4.5…Formal Semantics of Programming Languages; 4.5.1 Operational Semantics; 4.5.2 Denotational Semantics; 4.5.3 Axiomatic Semantics; 4.6…Theorem Proving; 4.6.1 Hoare Logic; 4.6.2 Predicate Transformer Semantics; 4.6.3 Symbolic Execution; 4.7…Model Checking; 4.8…Data Flow Analysis; 4.8.1 Partially Ordered Sets; 4.8.2 Lattices; 4.8.3 Monotone Functions and Fixed Points; 4.8.4 Fixed Point Solutions to Monotone Functions; 4.8.5 Dataflow Equations; 4.8.6 Dataflow Analysis Examples; 4.8.7 Reaching Definitions; 4.8.8 Live Variables
4.8.9 Available Expressions
Summary: Yang XiangSummary: Software similarity and classification is an emerging topic with wide applications. It is applicable to the areas of malware detection, software theft detection, plagiarism detection, and software clone detection. Extracting program features, processing those features into suitable representations, and constructing distance metrics to define similarity and dissimilarity are the key methods to identify software variants, clones, derivatives, and classes of software. Software Similarity and Classification reviews the literature of those core concepts, in addition to relevant literature in each application and demonstrates that considering these applied problems as a similarity and classification problem enables techniques to be shared between areas. Additionally, the authors present in-depth case studies using the software similarity and classification techniques developed throughout the book.PPN: PPN: 1651395977Package identifier: Produktsigel: ZDB-2-SCS
No physical items for this record