BinHunt: Automatically Finding Semantic Differences in Binary Programs View Full Text


Ontology type: schema:Chapter      Open Access: True


Chapter Info

DATE

2008

AUTHORS

Debin Gao , Michael K. Reiter , Dawn Song

ABSTRACT

We introduce BinHunt, a novel technique for finding semantic differences in binary programs. Semantic differences between two binary files contrast with syntactic differences in that semantic differences correspond to changes in the program functionality. Semantic differences are difficult to find because of the noise from syntactic differences caused by, e.g., different register allocation and basic block re-ordering. BinHunt bases its analysis on the control flow of the programs using a new graph isomorphism technique, symbolic execution, and theorem proving. We implement a system based on BinHunt and demonstrate the application of the system with three case studies in which BinHunt manages to identify the semantic differences between an executable and its patched version, revealing the vulnerability that the patch eliminates. More... »

PAGES

238-255

Identifiers

URI

http://scigraph.springernature.com/pub.10.1007/978-3-540-88625-9_16

DOI

http://dx.doi.org/10.1007/978-3-540-88625-9_16

DIMENSIONS

https://app.dimensions.ai/details/publication/pub.1049968375


Indexing Status Check whether this publication has been indexed by Scopus and Web Of Science using the SN Indexing Status Tool
Incoming Citations Browse incoming citations for this publication using opencitations.net

JSON-LD is the canonical representation for SciGraph data.

TIP: You can open this SciGraph record using an external JSON-LD service: JSON-LD Playground Google SDTT

[
  {
    "@context": "https://springernature.github.io/scigraph/jsonld/sgcontext.json", 
    "about": [
      {
        "id": "http://purl.org/au-research/vocabulary/anzsrc-for/2008/17", 
        "inDefinedTermSet": "http://purl.org/au-research/vocabulary/anzsrc-for/2008/", 
        "name": "Psychology and Cognitive Sciences", 
        "type": "DefinedTerm"
      }, 
      {
        "id": "http://purl.org/au-research/vocabulary/anzsrc-for/2008/1701", 
        "inDefinedTermSet": "http://purl.org/au-research/vocabulary/anzsrc-for/2008/", 
        "name": "Psychology", 
        "type": "DefinedTerm"
      }
    ], 
    "author": [
      {
        "affiliation": {
          "alternateName": "Singapore Management University, Singapore", 
          "id": "http://www.grid.ac/institutes/grid.412634.6", 
          "name": [
            "Singapore Management University, Singapore"
          ], 
          "type": "Organization"
        }, 
        "familyName": "Gao", 
        "givenName": "Debin", 
        "id": "sg:person.013015522271.54", 
        "sameAs": [
          "https://app.dimensions.ai/discover/publication?and_facet_researcher=ur.013015522271.54"
        ], 
        "type": "Person"
      }, 
      {
        "affiliation": {
          "alternateName": "University of North Carolina at Chapel Hill, USA", 
          "id": "http://www.grid.ac/institutes/grid.10698.36", 
          "name": [
            "University of North Carolina at Chapel Hill, USA"
          ], 
          "type": "Organization"
        }, 
        "familyName": "Reiter", 
        "givenName": "Michael K.", 
        "id": "sg:person.01265200500.82", 
        "sameAs": [
          "https://app.dimensions.ai/discover/publication?and_facet_researcher=ur.01265200500.82"
        ], 
        "type": "Person"
      }, 
      {
        "affiliation": {
          "alternateName": "University of California, Berkeley, USA", 
          "id": "http://www.grid.ac/institutes/grid.47840.3f", 
          "name": [
            "University of California, Berkeley, USA"
          ], 
          "type": "Organization"
        }, 
        "familyName": "Song", 
        "givenName": "Dawn", 
        "id": "sg:person.01143152610.86", 
        "sameAs": [
          "https://app.dimensions.ai/discover/publication?and_facet_researcher=ur.01143152610.86"
        ], 
        "type": "Person"
      }
    ], 
    "datePublished": "2008", 
    "datePublishedReg": "2008-01-01", 
    "description": "We introduce BinHunt, a novel technique for finding semantic differences in binary programs. Semantic differences between two binary files contrast with syntactic differences in that semantic differences correspond to changes in the program functionality. Semantic differences are difficult to find because of the noise from syntactic differences caused by, e.g., different register allocation and basic block re-ordering. BinHunt bases its analysis on the control flow of the programs using a new graph isomorphism technique, symbolic execution, and theorem proving. We implement a system based on BinHunt and demonstrate the application of the system with three case studies in which BinHunt manages to identify the semantic differences between an executable and its patched version, revealing the vulnerability that the patch eliminates.", 
    "editor": [
      {
        "familyName": "Chen", 
        "givenName": "Liqun", 
        "type": "Person"
      }, 
      {
        "familyName": "Ryan", 
        "givenName": "Mark D.", 
        "type": "Person"
      }, 
      {
        "familyName": "Wang", 
        "givenName": "Guilin", 
        "type": "Person"
      }
    ], 
    "genre": "chapter", 
    "id": "sg:pub.10.1007/978-3-540-88625-9_16", 
    "inLanguage": "en", 
    "isAccessibleForFree": true, 
    "isPartOf": {
      "isbn": [
        "978-3-540-88624-2", 
        "978-3-540-88625-9"
      ], 
      "name": "Information and Communications Security", 
      "type": "Book"
    }, 
    "keywords": [
      "differences", 
      "program", 
      "novel technique", 
      "study", 
      "contrast", 
      "changes", 
      "vulnerability", 
      "technique", 
      "analysis", 
      "patches", 
      "block", 
      "system", 
      "version", 
      "flow", 
      "program functionality", 
      "functionality", 
      "allocation", 
      "applications", 
      "execution", 
      "case study", 
      "semantic differences", 
      "noise", 
      "syntactic differences", 
      "proving", 
      "patched version", 
      "binary programs", 
      "control flow", 
      "basic blocks", 
      "symbolic execution", 
      "register allocation", 
      "theorem proving"
    ], 
    "name": "BinHunt: Automatically Finding Semantic Differences in Binary Programs", 
    "pagination": "238-255", 
    "productId": [
      {
        "name": "dimensions_id", 
        "type": "PropertyValue", 
        "value": [
          "pub.1049968375"
        ]
      }, 
      {
        "name": "doi", 
        "type": "PropertyValue", 
        "value": [
          "10.1007/978-3-540-88625-9_16"
        ]
      }
    ], 
    "publisher": {
      "name": "Springer Nature", 
      "type": "Organisation"
    }, 
    "sameAs": [
      "https://doi.org/10.1007/978-3-540-88625-9_16", 
      "https://app.dimensions.ai/details/publication/pub.1049968375"
    ], 
    "sdDataset": "chapters", 
    "sdDatePublished": "2022-05-20T07:42", 
    "sdLicense": "https://scigraph.springernature.com/explorer/license/", 
    "sdPublisher": {
      "name": "Springer Nature - SN SciGraph project", 
      "type": "Organization"
    }, 
    "sdSource": "s3://com-springernature-scigraph/baseset/20220519/entities/gbq_results/chapter/chapter_139.jsonl", 
    "type": "Chapter", 
    "url": "https://doi.org/10.1007/978-3-540-88625-9_16"
  }
]
 

Download the RDF metadata as:  json-ld nt turtle xml License info

HOW TO GET THIS DATA PROGRAMMATICALLY:

JSON-LD is a popular format for linked data which is fully compatible with JSON.

curl -H 'Accept: application/ld+json' 'https://scigraph.springernature.com/pub.10.1007/978-3-540-88625-9_16'

N-Triples is a line-based linked data format ideal for batch operations.

curl -H 'Accept: application/n-triples' 'https://scigraph.springernature.com/pub.10.1007/978-3-540-88625-9_16'

Turtle is a human-readable linked data format.

curl -H 'Accept: text/turtle' 'https://scigraph.springernature.com/pub.10.1007/978-3-540-88625-9_16'

RDF/XML is a standard XML format for linked data.

curl -H 'Accept: application/rdf+xml' 'https://scigraph.springernature.com/pub.10.1007/978-3-540-88625-9_16'


 

This table displays all metadata directly associated to this object as RDF triples.

121 TRIPLES      23 PREDICATES      57 URIs      50 LITERALS      7 BLANK NODES

Subject Predicate Object
1 sg:pub.10.1007/978-3-540-88625-9_16 schema:about anzsrc-for:17
2 anzsrc-for:1701
3 schema:author Nea19eab2bee548be9c5a47672903a04c
4 schema:datePublished 2008
5 schema:datePublishedReg 2008-01-01
6 schema:description We introduce BinHunt, a novel technique for finding semantic differences in binary programs. Semantic differences between two binary files contrast with syntactic differences in that semantic differences correspond to changes in the program functionality. Semantic differences are difficult to find because of the noise from syntactic differences caused by, e.g., different register allocation and basic block re-ordering. BinHunt bases its analysis on the control flow of the programs using a new graph isomorphism technique, symbolic execution, and theorem proving. We implement a system based on BinHunt and demonstrate the application of the system with three case studies in which BinHunt manages to identify the semantic differences between an executable and its patched version, revealing the vulnerability that the patch eliminates.
7 schema:editor N6d061c140d3d4f86ad34ae84a239c881
8 schema:genre chapter
9 schema:inLanguage en
10 schema:isAccessibleForFree true
11 schema:isPartOf Naad5cd95d941414093b54a8ec7b786a5
12 schema:keywords allocation
13 analysis
14 applications
15 basic blocks
16 binary programs
17 block
18 case study
19 changes
20 contrast
21 control flow
22 differences
23 execution
24 flow
25 functionality
26 noise
27 novel technique
28 patched version
29 patches
30 program
31 program functionality
32 proving
33 register allocation
34 semantic differences
35 study
36 symbolic execution
37 syntactic differences
38 system
39 technique
40 theorem proving
41 version
42 vulnerability
43 schema:name BinHunt: Automatically Finding Semantic Differences in Binary Programs
44 schema:pagination 238-255
45 schema:productId N358b002b0369487d9133b6a517fc7f86
46 Nc73526fbcc3442e089c2c94b38c534d0
47 schema:publisher Nb65091b3789545828b7dadaf948dabba
48 schema:sameAs https://app.dimensions.ai/details/publication/pub.1049968375
49 https://doi.org/10.1007/978-3-540-88625-9_16
50 schema:sdDatePublished 2022-05-20T07:42
51 schema:sdLicense https://scigraph.springernature.com/explorer/license/
52 schema:sdPublisher Nf2c61ecad12c4f4fbf5027a38f6540ea
53 schema:url https://doi.org/10.1007/978-3-540-88625-9_16
54 sgo:license sg:explorer/license/
55 sgo:sdDataset chapters
56 rdf:type schema:Chapter
57 N1fc6e86ff3d44892857563c2d4fe0025 schema:familyName Ryan
58 schema:givenName Mark D.
59 rdf:type schema:Person
60 N2a92e3874d96450a9d26a0df964f7261 rdf:first Ne4016c6ae202484b84d6e91a8d91ab45
61 rdf:rest rdf:nil
62 N358b002b0369487d9133b6a517fc7f86 schema:name doi
63 schema:value 10.1007/978-3-540-88625-9_16
64 rdf:type schema:PropertyValue
65 N6d061c140d3d4f86ad34ae84a239c881 rdf:first Nc7d93757dc694c6a86ec1b209bbe37f7
66 rdf:rest N9b2f0acc17aa4caebde381f7d7274fdf
67 N9b2f0acc17aa4caebde381f7d7274fdf rdf:first N1fc6e86ff3d44892857563c2d4fe0025
68 rdf:rest N2a92e3874d96450a9d26a0df964f7261
69 Naad5cd95d941414093b54a8ec7b786a5 schema:isbn 978-3-540-88624-2
70 978-3-540-88625-9
71 schema:name Information and Communications Security
72 rdf:type schema:Book
73 Nb65091b3789545828b7dadaf948dabba schema:name Springer Nature
74 rdf:type schema:Organisation
75 Nbf7b2735a9804221821d4b3e2c6e82ee rdf:first sg:person.01143152610.86
76 rdf:rest rdf:nil
77 Nc3065a724955421b9d027dd70e75e7d6 rdf:first sg:person.01265200500.82
78 rdf:rest Nbf7b2735a9804221821d4b3e2c6e82ee
79 Nc73526fbcc3442e089c2c94b38c534d0 schema:name dimensions_id
80 schema:value pub.1049968375
81 rdf:type schema:PropertyValue
82 Nc7d93757dc694c6a86ec1b209bbe37f7 schema:familyName Chen
83 schema:givenName Liqun
84 rdf:type schema:Person
85 Ne4016c6ae202484b84d6e91a8d91ab45 schema:familyName Wang
86 schema:givenName Guilin
87 rdf:type schema:Person
88 Nea19eab2bee548be9c5a47672903a04c rdf:first sg:person.013015522271.54
89 rdf:rest Nc3065a724955421b9d027dd70e75e7d6
90 Nf2c61ecad12c4f4fbf5027a38f6540ea schema:name Springer Nature - SN SciGraph project
91 rdf:type schema:Organization
92 anzsrc-for:17 schema:inDefinedTermSet anzsrc-for:
93 schema:name Psychology and Cognitive Sciences
94 rdf:type schema:DefinedTerm
95 anzsrc-for:1701 schema:inDefinedTermSet anzsrc-for:
96 schema:name Psychology
97 rdf:type schema:DefinedTerm
98 sg:person.01143152610.86 schema:affiliation grid-institutes:grid.47840.3f
99 schema:familyName Song
100 schema:givenName Dawn
101 schema:sameAs https://app.dimensions.ai/discover/publication?and_facet_researcher=ur.01143152610.86
102 rdf:type schema:Person
103 sg:person.01265200500.82 schema:affiliation grid-institutes:grid.10698.36
104 schema:familyName Reiter
105 schema:givenName Michael K.
106 schema:sameAs https://app.dimensions.ai/discover/publication?and_facet_researcher=ur.01265200500.82
107 rdf:type schema:Person
108 sg:person.013015522271.54 schema:affiliation grid-institutes:grid.412634.6
109 schema:familyName Gao
110 schema:givenName Debin
111 schema:sameAs https://app.dimensions.ai/discover/publication?and_facet_researcher=ur.013015522271.54
112 rdf:type schema:Person
113 grid-institutes:grid.10698.36 schema:alternateName University of North Carolina at Chapel Hill, USA
114 schema:name University of North Carolina at Chapel Hill, USA
115 rdf:type schema:Organization
116 grid-institutes:grid.412634.6 schema:alternateName Singapore Management University, Singapore
117 schema:name Singapore Management University, Singapore
118 rdf:type schema:Organization
119 grid-institutes:grid.47840.3f schema:alternateName University of California, Berkeley, USA
120 schema:name University of California, Berkeley, USA
121 rdf:type schema:Organization
 




Preview window. Press ESC to close (or click here)


...