Relational abstract interpretation of arrays in assembly code.

Saved in:
Bibliographic Details
Title: Relational abstract interpretation of arrays in assembly code.
Authors: Ballabriga, Clément, Forget, Julien, Ruiz, Jordy
Source: Formal Methods in System Design; 2022, Vol. 59 Issue 1-3, p103-135, 33p
Subject Terms: BINARY codes, SOURCE code, COMPILERS (Computer programs), INFORMATION resources
Abstract: In this paper, we propose a static analysis technique for assembly code, based on abstract interpretation, to discover properties on arrays. Considering assembly code rather than source code has important advantages: we do not require to make assumptions on the compiler behaviour, and we can handle closed-source programs. The main disadvantage however, is that information about source code variables and their types, in particular about arrays, is unavailable. Instead, the binary code reasons about data-locations (registers and memory addresses) and their sizes in bytes. Without any knowledge of the source code, our analysis infers which sets of memory addresses correspond to arrays, and establishes properties on these addresses and their contents. The underlying abstract domain is relational, meaning that we can infer relations between variables of the domain. As a consequence, we can infer properties on arrays whose start address and size are defined with respect to variables of the domain, and thus can be unknown statically. Currently, no other tool operating at the assembly or binary level can infer such properties. [ABSTRACT FROM AUTHOR]
Copyright of Formal Methods in System Design is the property of Springer Nature and its content may not be copied or emailed to multiple sites without the copyright holder's express written permission. Additionally, content may not be used with any artificial intelligence tools or machine learning technologies. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract. (Copyright applies to all Abstracts.)
Database: Complementary Index
FullText Text:
  Availability: 0
CustomLinks:
  – Url: https://resolver.ebscohost.com/openurl?sid=EBSCO:edb&genre=article&issn=09259856&ISBN=&volume=59&issue=1-3&date=20220101&spage=103&pages=103-135&title=Formal Methods in System Design&atitle=Relational%20abstract%20interpretation%20of%20arrays%20in%20assembly%20code.&aulast=Ballabriga%2C%20Cl%C3%A9ment&id=DOI:10.1007/s10703-022-00399-3
    Name: Full Text Finder
    Category: fullText
    Text: Full Text Finder
    Icon: https://imageserver.ebscohost.com/branding/images/FTF.gif
    MouseOverText: Full Text Finder
  – Url: https://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=EBSCO&SrcAuth=EBSCO&DestApp=WOS&ServiceName=TransferToWoS&DestLinkType=GeneralSearchSummary&Func=Links&author=Ballabriga%20C
    Name: ISI
    Category: fullText
    Text: Nájsť tento článok vo Web of Science
    Icon: https://imagesrvr.epnet.com/ls/20docs.gif
    MouseOverText: Nájsť tento článok vo Web of Science
Header DbId: edb
DbLabel: Complementary Index
An: 161020090
RelevancyScore: 916
AccessLevel: 6
PubType: Academic Journal
PubTypeId: academicJournal
PreciseRelevancyScore: 915.911193847656
IllustrationInfo
Items – Name: Title
  Label: Title
  Group: Ti
  Data: Relational abstract interpretation of arrays in assembly code.
– Name: Author
  Label: Authors
  Group: Au
  Data: <searchLink fieldCode="AR" term="%22Ballabriga%2C+Clément%22">Ballabriga, Clément</searchLink><br /><searchLink fieldCode="AR" term="%22Forget%2C+Julien%22">Forget, Julien</searchLink><br /><searchLink fieldCode="AR" term="%22Ruiz%2C+Jordy%22">Ruiz, Jordy</searchLink>
– Name: TitleSource
  Label: Source
  Group: Src
  Data: Formal Methods in System Design; 2022, Vol. 59 Issue 1-3, p103-135, 33p
– Name: Subject
  Label: Subject Terms
  Group: Su
  Data: <searchLink fieldCode="DE" term="%22BINARY+codes%22">BINARY codes</searchLink><br /><searchLink fieldCode="DE" term="%22SOURCE+code%22">SOURCE code</searchLink><br /><searchLink fieldCode="DE" term="%22COMPILERS+%28Computer+programs%29%22">COMPILERS (Computer programs)</searchLink><br /><searchLink fieldCode="DE" term="%22INFORMATION+resources%22">INFORMATION resources</searchLink>
– Name: Abstract
  Label: Abstract
  Group: Ab
  Data: In this paper, we propose a static analysis technique for assembly code, based on abstract interpretation, to discover properties on arrays. Considering assembly code rather than source code has important advantages: we do not require to make assumptions on the compiler behaviour, and we can handle closed-source programs. The main disadvantage however, is that information about source code variables and their types, in particular about arrays, is unavailable. Instead, the binary code reasons about data-locations (registers and memory addresses) and their sizes in bytes. Without any knowledge of the source code, our analysis infers which sets of memory addresses correspond to arrays, and establishes properties on these addresses and their contents. The underlying abstract domain is relational, meaning that we can infer relations between variables of the domain. As a consequence, we can infer properties on arrays whose start address and size are defined with respect to variables of the domain, and thus can be unknown statically. Currently, no other tool operating at the assembly or binary level can infer such properties. [ABSTRACT FROM AUTHOR]
– Name: Abstract
  Label:
  Group: Ab
  Data: <i>Copyright of Formal Methods in System Design is the property of Springer Nature and its content may not be copied or emailed to multiple sites without the copyright holder's express written permission. Additionally, content may not be used with any artificial intelligence tools or machine learning technologies. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract.</i> (Copyright applies to all Abstracts.)
PLink https://erproxy.cvtisr.sk/sfx/access?url=https://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edb&AN=161020090
RecordInfo BibRecord:
  BibEntity:
    Identifiers:
      – Type: doi
        Value: 10.1007/s10703-022-00399-3
    Languages:
      – Code: eng
        Text: English
    PhysicalDescription:
      Pagination:
        PageCount: 33
        StartPage: 103
    Subjects:
      – SubjectFull: BINARY codes
        Type: general
      – SubjectFull: SOURCE code
        Type: general
      – SubjectFull: COMPILERS (Computer programs)
        Type: general
      – SubjectFull: INFORMATION resources
        Type: general
    Titles:
      – TitleFull: Relational abstract interpretation of arrays in assembly code.
        Type: main
  BibRelationships:
    HasContributorRelationships:
      – PersonEntity:
          Name:
            NameFull: Ballabriga, Clément
      – PersonEntity:
          Name:
            NameFull: Forget, Julien
      – PersonEntity:
          Name:
            NameFull: Ruiz, Jordy
    IsPartOfRelationships:
      – BibEntity:
          Dates:
            – D: 01
              M: 01
              Text: 2022
              Type: published
              Y: 2022
          Identifiers:
            – Type: issn-print
              Value: 09259856
          Numbering:
            – Type: volume
              Value: 59
            – Type: issue
              Value: 1-3
          Titles:
            – TitleFull: Formal Methods in System Design
              Type: main
ResultId 1