Umeå universitets logga

umu.sePublikationer
Ändra sökning
RefereraExporteraLänk till posten
Permanent länk

Direktlänk
Referera
Referensformat
  • apa
  • ieee
  • vancouver
  • Annat format
Fler format
Språk
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Annat språk
Fler språk
Utmatningsformat
  • html
  • text
  • asciidoc
  • rtf
INCREASING COMPLETENESS OF ANDROID BINARY CFGS IN ANGR
Umeå universitet, Teknisk-naturvetenskapliga fakulteten, Institutionen för datavetenskap.
2023 (Engelska)Självständigt arbete på grundnivå (kandidatexamen), 10 poäng / 15 hpStudentuppsats (Examensarbete)
Abstract [en]

Control Flow Graphs are widely used for static binary analysis today but their completeness is often lacking. The main problem when recovering Control Flow Graphs from binaries is indirect jump recovery where target addresses are stored in a register or memory. This problem is prevalent in the Python framework Angr when trying to generate a CFGFast for an Android binary compiled with the Bionic function __libc_init. At the moment an error is thrown, stating that the function static_exits, which resolves control flow transfers for AngrSimProcedures, is not implemented for the SimProcedure __libc_init. In this paper, the missing function static_exits is implemented and verified. An answer to how the implementation of static_exits affects the CFGFast completeness in Angr is also presented. To answer the research question an experiment was performed on 11 binaries compiled with the Bionic function __libc_init, where CFGFasts were recovered for each binary file using the implemented static_exits function. The results gathered show that the expected indirect jump performed in __libc_init was resolved for each of the 11 binaries. The conclusion from this paper is that the completeness of CFGFasts in Angr recovered from binaries compiled with the Bionic library did increase after implementing the static_exits function.

Ort, förlag, år, upplaga, sidor
2023.
Serie
UMNAD ; 1392
Nationell ämneskategori
Datavetenskap (datalogi)
Identifikatorer
URN: urn:nbn:se:umu:diva-209810OAI: oai:DiVA.org:umu-209810DiVA, id: diva2:1767614
Utbildningsprogram
Kandidatprogrammet i Datavetenskap
Handledare
Examinatorer
Tillgänglig från: 2023-06-15 Skapad: 2023-06-14 Senast uppdaterad: 2023-06-15Bibliografiskt granskad

Open Access i DiVA

fulltext(3070 kB)415 nedladdningar
Filinformation
Filnamn FULLTEXT01.pdfFilstorlek 3070 kBChecksumma SHA-512
23598380d8600e91a3be9c4f59e761da6ed7dbada6d126ec20397fdeb98121f79b92e1f83a4be0c60081f39a90b59a9477640414fda953b0bd9f50965cb6004b
Typ fulltextMimetyp application/pdf

Av organisationen
Institutionen för datavetenskap
Datavetenskap (datalogi)

Sök vidare utanför DiVA

GoogleGoogle Scholar
Totalt: 415 nedladdningar
Antalet nedladdningar är summan av nedladdningar för alla fulltexter. Det kan inkludera t.ex tidigare versioner som nu inte längre är tillgängliga.

urn-nbn

Altmetricpoäng

urn-nbn
Totalt: 330 träffar
RefereraExporteraLänk till posten
Permanent länk

Direktlänk
Referera
Referensformat
  • apa
  • ieee
  • vancouver
  • Annat format
Fler format
Språk
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Annat språk
Fler språk
Utmatningsformat
  • html
  • text
  • asciidoc
  • rtf