Control flow integrity (CFI): a syrvey

Οι επιθέσεις εναντίον του λογισμικού παραμένουν ακόμη ένα επείγον θέμα παρά τα αντίμετρα που έχουν προταθεί. Έτσι, παρά το ότι οι υπάρχουσες άμυνες έχουν ανεβάσει σημαντικά τον πήχη για τους επιτιθέμενους δεν είναι ικανές να εξαλείψουν πλήρως τις επιθέσεις στο λογισμικό. Οι μηχανισμοί που προστατεύο...

Full description

Saved in:
Bibliographic Details
Main Author: Παπαδόπουλος, Βασίλειος
Other Authors: Καμπουράκης, Γεώργιος
Language:English
Published: 2015
Subjects:
Online Access:https://vsmart.lib.aegean.gr/webopac/FullBB.csp?WebAction=ShowFullBB&EncodedRequest=*A4*C3x*5C*FF*86m*E2*8F*C7t*3D*FB*21*94*7C&Profile=Default&OpacLanguage=gre&NumberToRetrieve=50&StartValue=3&WebPageNr=1&SearchTerm1=2015%20.1.110934&SearchT1=&Index1=Keywordsbib&SearchMethod=Find_1&ItemNr=3
http://hdl.handle.net/11610/8870
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1828461938222301184
author Παπαδόπουλος, Βασίλειος
author2 Καμπουράκης, Γεώργιος
author_facet Καμπουράκης, Γεώργιος
Παπαδόπουλος, Βασίλειος
author_sort Παπαδόπουλος, Βασίλειος
collection DSpace
description Οι επιθέσεις εναντίον του λογισμικού παραμένουν ακόμη ένα επείγον θέμα παρά τα αντίμετρα που έχουν προταθεί. Έτσι, παρά το ότι οι υπάρχουσες άμυνες έχουν ανεβάσει σημαντικά τον πήχη για τους επιτιθέμενους δεν είναι ικανές να εξαλείψουν πλήρως τις επιθέσεις στο λογισμικό. Οι μηχανισμοί που προστατεύουν τη μνήμη πολλές φορές παρακάμπτονται από επιθέσεις επαναχρησιμοποίησης κώδικα και οι μηχανισμοί τυχαιοποίησης είναι συνήθως αναποτελεσματικοί λόγω των διαρροών μνήμης.Η ακεραιότητα ελέγχου ροής προγράμματος (CFI) είναι ένα αντίμετρο ασφαλείας που βεβαιώνει ότι ο έλεγχος ροής ενός προγράμματος παραμένει εντός ενός έγκυρου μονοπατιού εκτέλεσης. Το συγκεκριμένο αντίμετρο μπορεί να εφαρμοστεί σε υπάρχον λογισμικό και προσφέρει μη-πιθανοτική προστασία. Επιβάλλει ελέγχους σε εντολές διακλάδωσης και μειώνει σημαντικά το σύνολο του κώδικα που μπορεί να χρησιμοποιηθεί σε μία επίθεση επαναχρησιμοποίσης κώδικα. Σε αυτή τη διατριβή αναλύουμε εκτενώς τη λειτουργία του CFI και περιγράφουμε τους περιορισμούς του και τις αντίστοιχες λύσεις που έχουν προταθεί. Επιπλέον, θα εξηγήσουμε το πώς το συγκεκριμένο αντίμετρο μπορεί να περιορίσει μία αληθινή επίθεση και θα συζητήσουμε για την μελλοντική του εξέλιξη.
id oai:hellanicus.lib.aegean.gr:11610-8870
institution Hellanicus
language English
publishDate 2015
record_format dspace
spelling oai:hellanicus.lib.aegean.gr:11610-88702022-08-10T00:00:43Z Control flow integrity (CFI): a syrvey Παπαδόπουλος, Βασίλειος Καμπουράκης, Γεώργιος ασφάλεια λογισμικού ακεραιότητα ελέγχου ροής προγράμματος επιθέσεις λογισμικού επαναχρησιμοπόιηση κώδικα software security control flow integrity software attack code-reuse Computer security Computer networks--Security measures Οι επιθέσεις εναντίον του λογισμικού παραμένουν ακόμη ένα επείγον θέμα παρά τα αντίμετρα που έχουν προταθεί. Έτσι, παρά το ότι οι υπάρχουσες άμυνες έχουν ανεβάσει σημαντικά τον πήχη για τους επιτιθέμενους δεν είναι ικανές να εξαλείψουν πλήρως τις επιθέσεις στο λογισμικό. Οι μηχανισμοί που προστατεύουν τη μνήμη πολλές φορές παρακάμπτονται από επιθέσεις επαναχρησιμοποίησης κώδικα και οι μηχανισμοί τυχαιοποίησης είναι συνήθως αναποτελεσματικοί λόγω των διαρροών μνήμης.Η ακεραιότητα ελέγχου ροής προγράμματος (CFI) είναι ένα αντίμετρο ασφαλείας που βεβαιώνει ότι ο έλεγχος ροής ενός προγράμματος παραμένει εντός ενός έγκυρου μονοπατιού εκτέλεσης. Το συγκεκριμένο αντίμετρο μπορεί να εφαρμοστεί σε υπάρχον λογισμικό και προσφέρει μη-πιθανοτική προστασία. Επιβάλλει ελέγχους σε εντολές διακλάδωσης και μειώνει σημαντικά το σύνολο του κώδικα που μπορεί να χρησιμοποιηθεί σε μία επίθεση επαναχρησιμοποίσης κώδικα. Σε αυτή τη διατριβή αναλύουμε εκτενώς τη λειτουργία του CFI και περιγράφουμε τους περιορισμούς του και τις αντίστοιχες λύσεις που έχουν προταθεί. Επιπλέον, θα εξηγήσουμε το πώς το συγκεκριμένο αντίμετρο μπορεί να περιορίσει μία αληθινή επίθεση και θα συζητήσουμε για την μελλοντική του εξέλιξη. Software security is still remaining an urgent issue despite several countermeasures have been proposed. Existing defenses have significantly raised the bar for attackers but they cannot completely thwart software attacks. Specifically, memory protection mechanisms are usually bypassed by more sophisticated exploits by means of code-reuse attacks, and randomization schemes are usually ineffective because of memory leaks. Control Flow Integrity (CFI) is a security countermeasure against software attacks that ensures that control flow stays within a valid execution path. CFI is applicable to existing software and offers non-probabilistic protection. It enforces checks in branch instructions and it significantly limits the amount of gadgets that can be used in code-reuse attacks. In this thesis, we provide an extensive explanation of how CFI works and we discuss about its limitations and proposed implementations. Further, we elaborate on how CFI could limit a real-world attack and discuss about future expectations. 2015-11-17T10:32:39Z 2015-11-17T10:32:39Z 2015 https://vsmart.lib.aegean.gr/webopac/FullBB.csp?WebAction=ShowFullBB&EncodedRequest=*A4*C3x*5C*FF*86m*E2*8F*C7t*3D*FB*21*94*7C&Profile=Default&OpacLanguage=gre&NumberToRetrieve=50&StartValue=3&WebPageNr=1&SearchTerm1=2015%20.1.110934&SearchT1=&Index1=Keywordsbib&SearchMethod=Find_1&ItemNr=3 http://hdl.handle.net/11610/8870 en application/pdf Σάμος
spellingShingle ασφάλεια λογισμικού
ακεραιότητα ελέγχου ροής προγράμματος
επιθέσεις λογισμικού
επαναχρησιμοπόιηση κώδικα
software security
control flow integrity
software attack
code-reuse
Computer security
Computer networks--Security measures
Παπαδόπουλος, Βασίλειος
Control flow integrity (CFI): a syrvey
title Control flow integrity (CFI): a syrvey
title_full Control flow integrity (CFI): a syrvey
title_fullStr Control flow integrity (CFI): a syrvey
title_full_unstemmed Control flow integrity (CFI): a syrvey
title_short Control flow integrity (CFI): a syrvey
title_sort control flow integrity cfi a syrvey
topic ασφάλεια λογισμικού
ακεραιότητα ελέγχου ροής προγράμματος
επιθέσεις λογισμικού
επαναχρησιμοπόιηση κώδικα
software security
control flow integrity
software attack
code-reuse
Computer security
Computer networks--Security measures
url https://vsmart.lib.aegean.gr/webopac/FullBB.csp?WebAction=ShowFullBB&EncodedRequest=*A4*C3x*5C*FF*86m*E2*8F*C7t*3D*FB*21*94*7C&Profile=Default&OpacLanguage=gre&NumberToRetrieve=50&StartValue=3&WebPageNr=1&SearchTerm1=2015%20.1.110934&SearchT1=&Index1=Keywordsbib&SearchMethod=Find_1&ItemNr=3
http://hdl.handle.net/11610/8870
work_keys_str_mv AT papadopoulosbasileios controlflowintegritycfiasyrvey