You are on page 1of 244

1-1

ΑΣΦΑΛΕΙΑ ΔΙΚΤΥΩΝ

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο

1-1

1η Σειρά Διαλέξεων : Εισαγωγή

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο


1-2

Τι είναι Computer Security;


• Η προστασία των περιουσιακών στοιχείων
(πόρων ή assets) ενός συστήματος
υπολογιστή
• Πόροι (assets)
• Hardware
• Software
• Data

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο

1-3

Πόροι / Assets

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο


1-4

Αξία Πόρων

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο

1-5

Βασικοί Οροί
• Vulnerability (ευπάθεια, τρωτό σημείο)
• Threat (απειλή)
• Attack (επίθεση)
• Countermeasure or control (αντίμετρο
ή μέτρο προστασίας)

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο


1-6

Ευπάθεια
Ευπάθεια (vulnerability)
Είναι η αδυναμία του Πληροφοριακού Συστήματος. Στις διαδικασίες, στο σχεδιασμό,
στην υλοποίηση, η οποία μπορεί να αξιοποιηθεί για να προκληθεί ζημία, απώλεια,
παραβίαση, υποκλοπή, περιορισμός διαθεσιμότητας πόρων κοκ

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο

1-7

Απειλή
Απειλή (threat)
Η δυνατότητα για παραβίαση της ασφάλειας

υπάρχει όταν ενεργοποιηθεί κάποιο περιστατικό, ενέργεια, ή συμβάν που επιτρέπει


την παραβίαση της ασφάλειας με πιθανές αρνητικές συνέπειες.

O πιθανός κίνδυνος να εκμεταλλευτεί κάποιος μια ευπάθεια του συστήματος.

• Φυσική Απειλή
• επιφέρει φυσικές καταστροφές

• Ανθρώπινη απειλή (human threat)


• προέρχεται από ανθρώπινες ενέργειες.

• Τυχαία απειλή (accidental threat)


• προέρχεται από ενέργειες που δεν είχαν κακόβουλο χαρακτήρα.

• Σκόπιμη απειλή (deliberate threat)


• προέρχεται από κακόβουλες ενέργειες.

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο


1-8

Επίθεση
Επίθεση (attack)
Η προσβολή της ασφάλειας του συστήματος που προέρχεται από μια έξυπνη
απειλή.

Mια (ευφυής) πράξη που αποτελεί σκόπιμη απόπειρα για την παράκαμψη των
υπηρεσιών ασφάλειας και την παραβίαση ενός συστήματος.

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο

Απειλές. Η τριάδα C-I-A


• Confidentiality
• Μυστικότητα, απόρρητο
• Integrity
• Μη τροποποίηση
• Availability
• Διαθεσιμότητα, αδιάλειπτη λειτουργία

• Επίσης
• Authentication (αυθεντικοποίηση)
• Nonrepudiation (μη αποποίηση)
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο
10

Εμπιστευτικά Δεδομένα (1)


Γιατί τα δεδομένα χαρακτηρίζονται εμπιστευτικά;
• Έμφυτη
• Θέσεις πυραύλων, μέσος όρος κερδών κτηνιάτρων σε πόλεις με
ένα κτηνίατρο
• Από ευαίσθητη πηγή
• Πληροφορία από πληροφοριοδότητη η οποία αν αποκαλυφθεί
αποκαλύπτει και τον πληροφοριοδότητη
• Δεδηλωμένη ως έμπιστη
• Π.χ. όνομα δωροθέτη – χορηγού
• Μέρος ευαίσθητου συνόλου
• Π.χ. ένας εργαζόμενος δεν πρέπει να φαίνεται ότι εργάζεται στη
εταιρεία, η θέση του, η μισθοδοσία του….
• Σε σχέση προηγούμενη αποκάλυψη
• Αν αποκαλυφθεί το longitude του πυραύλου κανένα πρόβλημα
• Μετά δεν πρέπει να αποκαλυφθεί και το latitude coordinate

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο

11

Εμπιστευτικά Δεδομένα (2)


Γιατί τα δεδομένα χαρακτηρίζονται εμπιστευτικά;
• Νομοθεσία
• Ευαίσθητα δεδομένα
• Ιατρικός φάκελος
• Πολίτικές προτιμήσεις
• Κοινωνικές προτιμήσεις
• Προσωπικά δεδομένα (δεδομένα προσωπικού χαρακτήρα)
• Νόμος Κράτους: 4624/2019 – ΦΕΚ Α. Αρ. Φύλλου 137
• Καταναλωτικό profile, οικονομική κατάσταση, δ/σνη κατοικίας,
φύλλο ή φυλή, ηλικία, κοκ
• Απόρρητα δεδομένα
• Τηλεφωνικές συνομιλίες, περιεχόμενα email
• Αρχείο καινοτόμων διαδικασιών
• Στρατιωτικά, εθνικά μυστικά

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο


1-12

Έλεγχος Πρόσβασης (Access Control)

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο

1-14

Network Security;
• Παθητικές απειλές/επιθέσεις
• Υποκλοπή: Αποκάλυψη περιεχομένου
επικοινωνιών, μηνύματος, αρχείων,
λογαριασμού
• Ανάλυση κίνησης

• Ενεργητικές επιθέσεις
• Μεταμφίεση
• Τροποποίηση περιεχομένων
• Διακοπή ή Άρνηση εξυπηρέτησης

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο


1-15

Παθητικές επιθέσεις

Sniffing ή
Eavesdropping

υποκλοπή του περιεχομένου ενός μηνύματος

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο

1-16

Παθητικές επιθέσεις

Traffic
Analysis

ανάλυση κίνησης

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο


1-17

Ενεργητικές επιθέσεις

Address Spoofing, Μεταμφίεση,


Masquerading, Πλαστογράφηση,
Impersonating Παραπλάνηση

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο

1-18

Ενεργητικές επιθέσεις

Replay Αναπαραγωγή
Shadow Ανάκλαση
Attacks

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο


1-19

Ενεργητικές επιθέσεις

Message Εκούσια
Fabrication, Τροποποίηση
Modification Μηνυμάτων

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο

1-20

Ενεργητικές επιθέσεις

Denial of Απάρνηση
Service Εξυπηρέτησης

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο


1-21

Επιθέσεις, υπηρεσίες,
και μηχανισμοί
• Μηχανισμός ασφάλειας:
• Ένας μηχανισμός που έχει στόχο τον εντοπισμό, την
αποτροπή, ή την ανάκαμψη μετά από μια επίθεση
ασφάλειας.
• Υπηρεσία ασφάλειας:
• Μια υπηρεσία που βελτιώνει την ασφάλεια των
συστημάτων επεξεργασίας και μεταφοράς πληροφοριών.

Η υπηρεσία ασφάλειας χρησιμοποιεί έναν ή


περισσότερους μηχανισμούς ασφάλειας.
Σύσταση X.800 της ITU-T,
Αρχιτεκτονική Ασφάλειας του OSI : συστηματική προσέγγιση

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο

1-22

Αντίμετρα/Μέθοδοι άμυνας
• Φυσικοί έλεγχοι
• Πολιτικές (π.χ. διαχείριση συνθηματικών) ή
διαχειριστικές (π.χ. ενημέρωση προσωπικού)
• Τεχνικά αντίμετρα
• Κρυπτογράφηση
• Μηχανισμοί firewall και IDS/IPS
• Έλεγχοι λογισμικού (antivirus),
• Περιορισμοί πρόσβασης στη ΒΔ
• Προστασία στο λειτουργικό σύστημα
• Έλεγχοι υλικού

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο


1-23

Περίληψη
• Οι ευπάθειες είναι αδυναμίες ενός συστήματος. Οι απειλές
εκμεταλλεύονται αυτές τις αδυναμίες. Οι έλεγχοι
προστατεύουν αυτές τις αδυναμίες από την εκμετάλλευση
• Η εμπιστευτικότητα, η ακεραιότητα και η διαθεσιμότητα
είναι τα τρία βασικά θεμέλια της ασφάλειας υπολογιστών
• Διαφορετικοί επιτιθέμενοι θέτουν διαφορετικά είδη
απειλών με βάση τις δυνατότητες και τα κίνητρά τους
• Διαφορετικοί έλεγχοι αντιμετωπίζουν διαφορετικές
απειλές. Οι έλεγχοι έχουν πολλές εφαρμογές και μπορούν
να υπάρχουν σε διάφορα σημεία του συστήματος ή να
συνδυάζονται σε μία πιο ολοκληρωμένη υπηρεσία
ασφάλειας
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο

2-1

ΑΣΦΑΛΕΙΑ ΔΙΚΤΥΩΝ
2η Σειρά Διαλέξεων : Εισαγωγή
Κρυπτογραφία και Κρυπτανάλυση

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


2-2

Κεφάλαιο 2. Στόχοι
• Μάθετε βασικές έννοιες και τις αρχές της κρυπτογραφίας
• Κατανοήσετε τους όρους και τα εργαλεία της
κρυπτανάλυσης
• Εντρυφήσετε στις διαφορές συμμετρικής κρυπτογραφίας
και κρυπτογραφίας δημοσίου κλειδιού
• Αναλύσετε τις συναρτήσεις σύνοψης και τις διαφορές με
τις κρυπτογραφικές μεθόδους
• Αναγνωρίσετε πως κρυπτογραφία και σύνοψη
συνεισφέρουν στις ψηφιακές υπογραφές
• Εξοικειωθείτε με τη χρήση των παραπάνω εργαλείων ως
μηχανισμούς και αντίμετρα ασφάλειας

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

2-3

Αρχές συμμετρικής κρυπτογράφησης

• Ένα συμμετρικό σύστημα κρυπτογράφησης


(κρυπτοσύστημα) περιλαμβάνει πέντε στοιχεία
• Αρχικό κείμενο, ή μήνυμα, ή πηγαίος κώδικας, record
λέξη, αρχείο, …
• Αλγόριθμο κρυπτογράφησης
• Κοινά Συμφωνημένο (Συμμετρικό) Μυστικό Κλειδί

• Κρυπτοκείμενο
• Αλγόριθμο αποκρυπτογράφησης

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


2-4

Συμμετρική Κρυπτογραφία

• Η Alice θέλει να στείλει ένα μυστικό


μήνυμα m στον Bob
• Πρώτα ανταλλάσσουν (συμφωνούν)
μυστικά το κλειδί κρυπτογράφησης e
• Με βάση αυτό ο Bob υπολογίζει το
κλειδί αποκρυπτογράφησης d
– Στην πράξη: e == d (κοινό συμμετρικό κλειδί)
• Η Alice που θέλει να στείλει το m στον
Bob υπολογίζει το κρυπτομήνυμα
c=Ee(m) και στέλνει το c στον Bob.
• Μόλις ο Bob λάβει το c, υπολογίζει
Dd(c)=m και ανακτά το αρχικό κείμενο m

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

2-5

Συμμετρική Κρυπτογραφία
• m αρχικό μήνυμα (plaintext): προστασία
του από επιτιθέμενους στο δημόσιο
κανάλι επικοινωνίας
• c κρυπτομύνημα ή κρυπτοκείμενο
(chipretext), μια ακατάληπτο έκδοση του
m. Υπάρχουν πολλές …
• e το μυστικό κλειδί. Υπόθεση ασφαλούς
καναλιού για συμφωνία
• Ee(m) η συνάρτηση μετασχηματισμού
(πχ αντικατάσταση, ανάμειξη, XOR)
κρυπτογράφησης
• Dd(c) η συνάρτηση μετασχηματισμού
(πχ αντικατάσταση, ανάμειξη, XOR)
αποκρυπτογράφησης
– Dd(c) αντίστροφη της Ee(c)
– Συμμετρική: e == d
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22
2-6

Συμμετρική Κρυπτογραφία
Σταθμοί: Αρχαία Ελλάδα – Σκυτάλη
 Αναφέρεται από τον Απολλώνιο τον Ρόδιο
 Μια σκυτάλη και μια λωρίδα δέρματος με το μήνυμα
 Έδρανα και κατασκευή σκυτάλης: ίδια σε αποστολέα
και παραλήπτη
 Μυστική μέθοδος κρυπτογράφησης (E):
Ελικοειδής Τύλιγμα και Οριζόντια Γραφή
Εικόνα από wikipedia  Κλειδί (e): Έδρανα σκυτάλης (π.χ. 4εδρη,
τύλιγμα 5εδρη, …)
 Για να κρυπτογραφηθεί ένα μήνυμα ο αποστολέας
Ε Ρ Χ Ο
τυλίγει μια λωρίδα δέρματος ελικοειδώς στη σκυτάλη
Διάβασμα Ν Τ Α Ι και γράφει
Ο Ι Π Ε
Ρ Σ Ε Σ  Ο παραλήπτης λαμβάνει τη λωρίδα με το μήνυμα
και την τυλίγει στην σκυτάλη. Διαβάζει την μια πλευρά
μετά την άλλη (αποκρυπτογραφεί)
 Αρχή: Security Through Obscurity
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

2-7

Συμμετρική Κρυπτογραφία
Αρχή: Security Through Obscurity
• Η ασφάλεια πρέπει να εξαρτάται από τη μυστικότητα
του κλειδιού e, και όχι του αλγόριθμου
κρυπτογράφησης E
• Βασικές αρχές Kerchoff (1880, Kerckhoffs's desideratum)
• The cryptosystem must be practically, if not mathematically,
indecipherable;
• It should not require secrecy, and it should not be a problem if it falls
into enemy hands;
• It must be possible to communicate and remember the key without
using written notes, and correspondents must be able to change or
modify it at will;
• It must be applicable to telegraph communications;
• It must be portable
• Ισοδύναμο χρηματοκιβωτίου
• Μηχανισμός κλειδώματος/ξεκλειδώματος vs κλειδί

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


2-8

Συμμετρική Κρυπτογραφία
Σταθμοί: Κρυπτοσύστημα Καίσαρα (1)
Caesar’s Cipher (trivial shift cipher)
Αντιστοίχησε αλφάβητο σε αριθμούς (Α->1, ...., Ζ-> 26)
Μετέτρεψε τα γράμματα του κειμένου σε αριθμούς
Πρόσθεσε 3 σε κάθε αριθμό
Αν ο νέος αριθμός είναι > 26, τότε αφαίρεσε 26 από αυτόν
Μετέτρεψε αριθμούς σε γράμματα
Στείλε μήνυμα
Παράδειγμα
THE HUNS ARE COMING (plaintext)
WKH KXQV DUH FRPLQJ (ciphertext)

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

2-9

Συμμετρική Κρυπτογραφία
Σταθμοί: Κρυπτοσύστημα Καίσαρα (2)
Caesar’s Cipher (trivial shift cipher)
Βασίζεται στην αρχή “Security Through Obscurity”
Τύπου: monoalphabetic substitution (μοναλφαβητική αντικατάσταση). Κάθε
γράμμα αντικαθίσταται σταθερά με το ίδιο γράμμα όσο το κλειδί παραμένει ίδιο
Κλειδί : οποιοσδήποτε αριθμός μεταξύ 1 και 25. Χώρος κλειδιών έχει cardinality
25 (δυνατά κλειδιά)
Το δυαδικό μέγεθος του κλειδιού είναι 5bits (25=32 > 25)
–O Caesar cipher στο αλφάβητο Α είναι κρυπτογραφία αντικατάστασης που
περιορίζεται από ολίσθηση κατά e χαρακτήρες, για κάποιο κλειδί e
– Αν |A|=s, και κάθε γράμμα mi αντιστοιχίζεται σε ένα ακέραιο αριθμό i, 0≤i≤s-1,
τότε ci = Εe(mi) = mi +emods. Η συνάρτηση αποκρυπτογράφησης ορίζεται ως
De(ci)=ci - emods.
• Μπορεί εύκολα να σπάσει εφόσον υπάρχουν μόνο s=|A|-1 κλειδιά (s=26)

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


2-10

Συμμετρική Κρυπτογραφία
Σταθμοί: Affine Cipher (ή γραμμικός κώδικας)
Γενίκευση του shift cipher
 Αντιστοίχισε αλφάβητο σε αριθμούς (Α->0, ...., Ζ-> 25)
 Encryption: Για κλειδί k = (a,b) και κειμενο x: Ek(x)=C=(ax + b)mod26
 Πώς θα αποκρυπτογραφήσουμε; Θα πρέπει να λύσουμε την
C=(ax+b)mod26 ⇔ ax = (C – b)mod 26 ⇔ x = a-1(C – b)mod 26
 Πρέπει να λύσουμε εξισώση πολλαπλασιαστικού αντιστρόφου της
μορφής ax=zmod26. Μπορεί να λυθεί μόνο αν gcd(a,26)=1.
 Βάση Euler's phi function υπάρχουν φ(26)=12 αριθμοί a που
ικανοποιούν την ως άνω σχέση
 Δηλαδή Key space: 25*φ(26)=25*φ(2*13)=25*(2-1)*(13-1)=25*12 =
300

K = {(a,b) : b∈ Ζn, gcd(a,n) = 1}


Encryption: ek(x) = (ax + b) mod n
Decryption: dk(y) = a-1(b - y) mod n

2-11

Συμμετρική Κρυπτογραφία
Προβλήματα μονοαλφαβητικής αντικατάστασης

Αν αυξήσουμε το χώρο των κλειδιών? π.χ. πιο πολύπλοκη συνάρτηση ek(x)?


Δεν μας βοηθάει.
Αδυναμία της μονοαλφαβητικής αντικατάστασης: το κρυπτοκείμενο διατηρεί τις συχνότητες
εμφάνισης των γραμμάτων

Στην ελληνική Πιο συχνά


γλώσσα: γράμματα:
α, ο, τ, ε, ν, ι

Διάλεξη 2-11
2-12

Συμμετρική Κρυπτογραφία
Προβλήματα μονοαλφαβητικής αντικατάστασης

Αν αυξήσουμε το χώρο των κλειδιών? π.χ. πιο πολύπλοκη συνάρτηση ek(x)?


Δεν μας βοηθάει.
Αδυναμία της μονοαλφαβητικής αντικατάστασης: το κρυπτοκείμενο διατηρεί τις συχνότητες
εμφάνισης των γραμμάτων

Στην αγγλική Πιο συχνά


γλώσσα: γράμματα:
e, t, a, o, i

Διάλεξη 2-12

2-13

Συμμετρική Κρυπτογραφία
Σταθμοί: πολυαλφαβητική αντικατάσταση (polyalphabetic substitution)
16oς Αιώνας Vigenère Cipher
 Ένας πίνακας λατινικών χαρακτήρων
 Διαστάσεις 26x26
 Κάθε γραμμή / στήλη ξεκινά απαρίθμηση
γραμμάτων από το γράμμα που τις αντιστοιχεί
 Ο αποστολέας επιλέγει ένα κείμενο
 π.χ. THEHUNSARECOMING
 Ο αποστολέας επιλέγει μυστική λέξη και
παράγει ακολουθία ίδιου μήκους με το κείμενο
 π.χ. Μυστική λέξη ΙΟΑNNIS οπότε ακολουθία
ίσου μήκους ΙΟΑNNISΙΟΑNNISIO
 το παραγόμενο κρυπτοκείμενο προκύπτει από το
περιεχόμενο του πίνακα που τέμνει η γραμμή του
κειμένου και η στήλη του κλειδιού
 BVEUHVKIFEPBUAVU

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


2-14

Συμμετρική Κρυπτογραφία
Σταθμοί: πολυαλφαβητική αντικατάσταση (polyalphabetic substitution)
 Περιστρεφόμενοι κύλινδροι
1790 – Κύλινδρος Jefferson  Κάθε ένας: 26 γράμματα (τυχαία
τοποθετημένα)
 Κύλινδροι στοιβαγμένοι με την ίδια σειρά σε
αποστολέα και παραλήπτη
 Για να κρυπτογραφηθεί ένα ΜΗΝΥΜΑ ο
αποστολέας περιστρέφει τους κυλίνδρους μέχρι
να σχηματιστεί η λέξη σε μια γραμμή
 Κατόπιν επιλέγει να στείλει έξι γράμματα (π.χ.,
ΔΟΧΕΛΚ) από άλλη γραμμή που σχηματίζεται
 Ο παραλήπτης λαμβάνει το μήνυμα ΔΟΧΕΛΚ,
Εικόνα από wikipedia
και περιστρέφει τους κυλίνδρους του
 Αν τα καταφέρει θα δει ότι σε μια άλλη γραμμή
σχηματίζεται η λέξη ΜΗΝΥΜΑ την οποία και
θεωρεί ως το κείμενο που ήθέλε να στείλει ο
αποστολέας
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

2-15

Συμμετρική Κρυπτογραφία
Σταθμοί: πολυαλφαβητική αντικατάσταση (polyalphabetic substitution)
1930-45 – Μηχανές Enigma  Ηλεκτρο-μηχανικές συσκευές με βιβλίο κωδικών
 Αντικαθίσταται ένα γράμμα κάθε φορά με άλλο
Οι συνεχόμενοι 3
ρότορες Εικόνα από
ανάλογα με τη τρέχουσα διαμόρφωση της διάταξης
wikipedia
 πολυ-αλφαβητική αντικατάσταση
 Μηχανικό μέρος:
 Πληκτρολόγιο
Το βιβλίο κωδικών
(wikipedia)  Συνεχόμενοι (3 - 8) περιστρεφόμενοι κύλινδροι σε άξονα
 Κάθε ένας: L=26 γράμματα

 Ηλεκτρολογικό μέρος:
 κυκλώματα που κλείνουν ανάλογα με τη θέση των κυλίνδρων
 λαμπτήρες που δείχνουν το κρυπτόγραμμα που επιλέγεται
 Μυστικό (ή κλειδί) : αλλάζει από το codebook
 (π.χ., κάθε μέρα) και αφορά τη θέση των κυλίνδρων
Διάλεξη 1-15
2-16

Συμμετρική Κρυπτογραφία
Σταθμοί: Αντιμετάθεση (Permutation ή Transposition)
Α : αλφάβητο από q σύμβολα
Κάθε plaintext m ομαδοποιείται σε blocks των t χαρακτήρων
M : σύνολο όλων των strings μήκους t στο A.
Σε κάθε block εφαρμόζεται απλή αντιμετάθεση e στα σύμβολα 1 έως t.
Έστω K το σύνολο όλων των αντιμεταθέσεων (permutations) του συνόλου {1, 2,…,t}.
Για κάθε e є K η συνάρτηση encryption είναι Ee(m)=me(1)me(2)...me(t), όπου m=(m1 m2...mt)
єM
-1
Στην αποκρυπτογράφηση εφαρμόζεται απλή αντιμετάθεση d=e η οποία αντιστρέφει την e.
Για αποκρυπτογράφηση c = (c1c2...ct), υπολογίζεται η Dd(c) = (cd(1)cd(2)...cd(t)).
Ο χώρος κλειδιών K έχει cardinality t!
Παράδειγμα
Έστω permutation cipher με t=6 και αντιμετάθεση e=(6 4 1 3 5 2)
Το μήνυμα m=ΠΕΡΑΣΕ κωδικοποιείται ως c=ΕΑΠΡΣΕ
Η αποκωδικοποίηση γίνεται με την αντίστροφη αντιμετάθεση d=(3 6 4 2 5 1)
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

2-17

Συμμετρική Κρυπτογραφία

• Η λειτουργία χαρακτηρίζεται από πολλές


ανεξάρτητες παραμέτρους:
• Το τρόπο συμφωνίας κλειδιού (ασφαλές κανάλι ή άλλη
μέθοδος)
• Το μέγεθος του κάθε κλειδιού
• Τη συχνότητα αλλαγής κλειδιού
• Το τρόπο παραγωγής κλειδιού (τυχαίος ή όχι;)
• Τον μετασχηματισμό κρυπτογράφησης του αρχικού
κειμένου
• Αντικατάσταση, μετάθεση (ανάμειξη)
• Δίκτυα Μετασχηματισμών
• Δίκτυα Μετασχηματισμών με κλειδί

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


2-18

Συμμετρική Κρυπτογραφία
Σύγχρονη τάση: Product Ciphers & Substitution & Permutation
Networks, SPNs
Product Cipher: Eίναι η σύνθεση t ≥ 2 μετασχηματισμών: Ek1  Ek2  ...  Ekt
για plaintext M, ciphertext C = Ek1 …(Ekt-1(Ekt(x)))
 Ασφαλείς, πρακτικοί και αποδοτικοί
 Χρησιμοποιούνται σε όλα τα σύγχρονα συμμετρικά κρυπτοσυστήματα, όπου κάθε
Ei είναι είτε substitution, είτε transposition cipher, είτε XOR με το κλειδί
Παράδειγμα
Έστω P=C=K το σύνολο όλων των binary string μήκους 6 (|P|=64), και x=(x1x2...x6)
Έστω
Ek1(x) = x⊕k; όπου k є K; ένας polyalphabetic substitution cipher
E2(x) = (x4x5x6x1x2x3) ένας permutation cipher
Το Ek1οE2 είναι ένας product cipher
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

2-19

Συμμετρική Κρυπτογραφία
Σύγχρονη τάση: Product Ciphers & Substitution & Permutation
Networks, SPNs

Δίκτυα Αντικατάστασης-
Μετάθεσης με κλειδί
• Παράμετροι ενός SPN
– μήκος της εισόδου n σε bits
– ο αριθμός των γύρων r
– το πλήθος των κιτίων αντικατάστασης
mxm
• Ένας γύρος ορίζεται από μια σειρά
κιτίων αντικατάστασης, συνοδευόμενο
από μια συνάρτηση μετάθεσης και ένα
κλειδί γύρου (βασιζόμενο σε master
key)
• DES/3DES/AES έχουν σχεδιαστεί με
αυτήν τη λογική
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22
2-20

Συμμετρική Κρυπτογραφία
Σύγχρονη τάση: Product Ciphers & Substitution & Permutation
Networks, SPNs

Επιθυμητές ιδιότητες (Shannon)


1. Σύγχυση (confusion): Η ικανότητα του αλγορίθμου ώστε ο αντίπαλος
να μην μπορεί να προβλέψει ποιες μεταβολές θα συμβούν στο
ciphertext αν αλλάξουμε κάτι στο plaintext /key pair
2. Διάχυση (diffusion) Το να μπορεί μία μικρή αλλαγή σε ένα τμήμα του
plaintext να αλλάζει όσο το δυνατόν περισσότερο το ciphertext

Τα Δίκτυα Αντικατάστασης-Μετάθεσης με κλειδί σχεδιάστηκαν για


να ικανοποιήσουν αυτές τις ανάγκες

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

2-21

Συμμετρική Κρυπτογραφία
Κρυπτανάλυση – Στόχοι Επιτιθέμενου
Στόχος 1: Αποκρυπτογράφηση (γνωρίζοντας
το C) σε M. Dei(C) =Mi
Εξαντλητική αναζήτηση στο χώρο των
κλειδιών μέχρι να βρούμε νόημα στο Mi.
Άμυνα: κλειδί μεγάλο, έτσι ώστε να
απαιτεί πολύ χρόνο+κόστος στον
επιτιθέμενο

Στόχος 2: Εύρεση κλειδιού e


Έστω Κ=ei το κλειδί που βρέθηκε από
εξαντλητική αναζήτηση. Άμυνα: να αλλάζει
συχνά το κλειδί, έτσι ώστε το ίδιο κλειδί να
ισχύει για λίγα Μ και το επόμενο κλειδί για
λίγα επόμενα κοκ

Στόχος 3: Εύρεση αλγορίθμου παραγωγής e,


αποκάλυψη τρόπου λειτουργίας key source.
Άμυνα: γεννήτρια παραγωγής τυχαίων
κλειδιών
I. Μαριάς, Ασφάλεια Δικτύων, (RNGs)
7 εξάμηνο, Ακ
ο Έτος 2021-22
2-22

Συμμετρική Κρυπτογραφία
Κρυπτανάλυση – Είδη Επιθέσεων
• Κρυπτογραφήματος που έχει
υποκλαπεί
• Κρυπτογράφημα
• Ένα σχήμα ευπαθές σε τέτοια
επίθεση είναι τελείως ανασφαλές.
• Brute force attack: μη πρακτική για
μεγάλο key space

• Γνωστού ή πιθανού αρχικού


κειμένου
• Ένα ή περισσότερα ζεύγη αρχικού
κειμένου–κρυπτογραφήματος,
παραγόμενα από το ίδιο μυστικό
κλειδί

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

2-23

Συμμετρική Κρυπτογραφία
Κρυπτανάλυση – Είδη Επιθέσεων

• Επιλεγμένου αρχικού κειμένου


• Αρχικό κείμενο, επιλεγμένο από τον
κρυπταναλυτή, μαζί με το αντίστοιχο
κρυπτογράφημα
• Ο adversary εισάγει τεχνηέντως Mi για
να παρακολουθεί τα αντίστοιχα Ci που
παράγονται στην έξοδο της Alice προς
τα ανασφαλές κανάλι
• Διαφορικές σχέσεις
• Γραμμικές σχέσεις

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


2-24

Συμμετρική Κρυπτογραφία
Κρυπτανάλυση – Είδη Επιθέσεων

• Επιλεγμένου
κρυπτογραφήματος
• Επιλεγμένο από τον κρυπταναλυτή
κρυπτογράφημα
• Αντίστοιχο αποκρυπτογραφημένο
κείμενο
• Ο adversary εισάγει τεχνηέντως Ci για
να παρακολουθεί τα αντίστοιχα Mi που
παράγονται στην έξοδο του BOB μετά
την αποκρυπτογράφηση
• Διαφορικές σχέσεις
• Γραμμικές σχέσεις

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

2-25

Συμμετρική Κρυπτογραφία
Κρυπτανάλυση

Unconditionally secure
 Κρυπτοσύστημα που αντιστέκεται σε επιθέσεις κρυπτανάλυσης,
ανεξάρτητα από την υπολογιστική ισχύ και το χρόνο που αφιερώνεται για
να σπάσει
Computationally secure
 Το κόστος για να σπάσει το Κρυπτοσύστημα ξεπερνά την αξία την
πληροφορίας που κρυπτογραφείται.
 Ο Χρόνος για να σπάσει το Κρυπτοσύστημα ξεπερνά την χρονική αξία
την πληροφορίας που κρυπτογραφείται.

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


2-26

Συμμετρική Κρυπτογραφία
Κρυπτανάλυση. Η σημασία του χώρου (μεγέθους) των κλειδιών

Μέγεθος Πλήθος Χρόνος που απαιτείται (με


κλειδιού διαφορετικών 106 αποκρυπτογραφήσεις
ανά μsec)
(bit) κλειδιών (Χώρος
Κλειδιών)
32 232 = 4,3 × 109 2,15 milliseconds
DES=56 256 = 7,2 × 1016 10,01 ώρες
3DES/ 2128 = 3,4 × 1038 5,4 × 1018 χρόνια
ΑΕS=128
168 2168 = 3,7 × 1050 5,9 × 1030 χρόνια
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

2-27

Συμμετρική Κρυπτογραφία
Ανακεφαλαίωση
 Χρησιμοποιείται για εμπιστευτικότητα μηνυμάτων, records, αρχείων,
περιεχομένων σκληρού δίσκου, επικοινωνιών δεδομένων …
 Σε ένα συμμετρικό κρυπτοσύστημα η συνάρτηση κρυπτογράφησης
Ee(m) είναι αντιστρέψιμη. Η αντιστροφή της είναι η De(c)
 Οι Ee(m) και De(c) ορίζουν μετασχηματισμούς 1-2 και επί
 Η ασφάλεια από την ασάφεια του κρυπτοσυστήματος δεν είναι πλέον
χρήσιμη στις σύγχρονες εφαρμογές
 Ο επιτιθέμενος σίγουρα θα καταφέρει να κρυπταναλύσει με εξαντλητική
αναζήτηση στο χώρο των κλειδιών.
 Αρκεί να έχει χρόνο ή/και επεξεργαστικούς πόρους
 Το μέγεθος του κλειδιού σημαντικό
 Η προϋπόθεση ασφαλούς καναλιού επικοινωνίας για την ανταλλαγή ή
συμφωνία του συμμετρικού κλειδιού δημιουργεί δυσκολίες εφαρμογής
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22
2-28

Κρυπτογραφία Δημοσίου Κλειδιού (ΚΔΚ)


Διαφορές από τη συμμετρική κρυπτογραφία (1)

 Στην ΚΔΚ κάθε οντότητα έχει δύο κλειδιά


 Ένα ιδιωτικό (μυστικό, private) για αποκρυπτογράφηση ή υπογραφή
μηνυμάτων, συναλλαγών, κώδικα, αρχείων κοκ
 Ένα δημόσιο (γνωστό σε όλους, public) για κρυπτογράφηση ή
επιβεβαίωση υπογραφής μηνυμάτων, συναλλαγών, κώδικα, αρχείων κοκ

 Στην ΚΔΚ το κλειδί κρυπτογράφησης δεν απαιτεί ασφαλή τρόπο


συμφωνίας μεταξύ δύο οντοτήτων
 Στη συμμετρική κρυπτογραφία απαιτεί

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

2-29

Κρυπτογραφία Δημοσίου Κλειδιού (ΚΔΚ)


Διαφορές από τη συμμετρική κρυπτογραφία (2)

 Στην ΚΔΚ το κλειδί κρυπτογράφησης δεν απαιτεί ασφαλή τρόπο


συμφωνίας μεταξύ δύο οντοτήτων
 Στη συμμετρική κρυπτογραφία απαιτεί

 Στην ΚΔΚ πέρα από το μέγεθος του κλειδιού βασιζόμαστε σε


υπολογιστικά δύσκολα προβλήματα (πχ παραγοντοποίηση μεγάλων
ακεραίων, πρόβλημα διακριτού λογαρίθμου) για ασφάλεια έναντι
κρυπτανάλησης
 Στη συμμετρική κρυπτογραφία βασιζόμαστε μόνο στο μέγεθος του
κλειδιού

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


2-30

Κρυπτογραφία Δημοσίου Κλειδιού (ΚΔΚ)


Διαφορές από τη συμμετρική κρυπτογραφία (3)
Παρέχει διευρυμένους μηχανισμούς ασφάλειας
 Κρυπτογράφηση/αποκρυπτογράφηση:
 Ο αποστολέας κρυπτογραφεί ένα μήνυμα με το δημόσιο
κλειδί του παραλήπτη
 Ψηφιακή υπογραφή:
 Ο αποστολέας ‘υπογράφει’ ένα μήνυμα με το ιδιωτικό του
κλειδί
 Συμφωνία στην εγκαθίδρυση κλειδιών (πχ συμμετρικών)
 Οι δύο πλευρές συνεργάζονται για να ανταλλάξουν ένα κλειδί
περιόδου εργασίας
 Αυθεντικοποίηση πηγής προέλευσης:
 από ποιον προέρχεται το μήνυμα ή η συναλλαγή

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

2-31

Αρχές κρυπτογράφησης δημοσίου κλειδιού

• Ένα κρυπτοσύστημα δημοσίου κλειδιού περιλαμβάνει έξι


στοιχεία
• Αρχικό κείμενο, ή μήνυμα, ή πηγαίος κώδικας, record λέξη, αρχείο, …

• Αλγόριθμο κρυπτογράφησης

• Κοινό (Δημόσιο) Κλειδί Κρυπτογράφησης προς Παραλήπτη (ή


Επιβεβαίωσης Υπογραφής από Αποστολέα)
• Κρυπτοκείμενο

• Μυστικό (Ιδιωτικό) Κλειδί Αποκρυπτογράφησης από Παραλήπτη (ή


Υπογραφής του Αποστολέα)
• Αλγόριθμο αποκρυπτογράφησης

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


2-32

Αρχές κρυπτογράφησης δημοσίου κλειδιού


Συμμετρική Κρυπτογράφηση
Κρυπτογράφηση Δημοσίου Κλειδιού

Διαφορές Κρυπτογράφησης Συμμετρικής και Δημοσίου Κλειδιού


I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

2-33

Κρυπτογραφία Δημοσίου Κλειδιού (ΚΔΚ)


Trapdoor & oneway functions

 One-way functions
 συναρτήσεις που μπορούμε να τις υπολογίσουμε εύκολα, είναι όμως
υπολογιστικά ανέφικτο να υπολογίσουμε την αντίστροφή τους
 Hard and Soft one-way functions
 π.χ. συναρτήσεις σύνοψης
 Trapdoor (Καταπακτή)
 πληροφορία που μας επιτρέπει να υπολογίσουμε την αντίστροφη
μιας one-way function
 Ουσιαστικά στην ΚΔΚ ψάχνουμε για trapdoor των soft one-way
encryption functions
 Με trap-door το ιδιωτικό κλειδί η συνάρτηση αποκρυπτογράφησης
αντιστρέφει τη διαδικασία

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


2-34

Κρυπτογραφία Δημοσίου Κλειδιού (ΚΔΚ)


Απαιτήσεις (1)

1. Πρέπει να είναι υπολογιστικά εύκολο να κατασκευάσει


μια οντότητα B ένα ζεύγος κλειδιών (δημόσιο κλειδί
e=KUb, και ιδιωτικό κλειδί d=KRb)
2. Πρέπει να είναι εύκολο για τον αποστολέα να
κατασκευάσει το κρυπτογράφημα:
C = EKUb (M )
3. Πρέπει να είναι εύκολο για τον παραλήπτη να το
αποκρυπτογραφήσει με το ιδιωτικό κλειδί (trapdoor):
M = DKRb (C ) = DKRb [ EKUb ( M )]

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

2-35

Κρυπτογραφία Δημοσίου Κλειδιού (ΚΔΚ)


Απαιτήσεις (2)

4. Πρέπει να είναι υπολογιστικά αδύνατο να προσδιοριστεί


το ιδιωτικό κλειδί (KRb) αν ο επιτιθέμενος γνωρίζει μόνο
το δημόσιο κλειδί (KUb)
5. Πρέπει να είναι υπολογιστικά αδύνατο να ανακτηθεί το
μήνυμα M αν ο επιτιθέμενος γνωρίζει μόνο το KUb και το
κρυπτογράφημα C
6. Οποιοδήποτε από τα δύο κλειδιά μπορεί να
χρησιμοποιηθεί
M = DKRb [ EKUb ( M )] = DKUb [ EKRb ( M )]
Κρυπτογράφηση προς Β και Υπογραφή από Β και επιβεβαίωση
αποκρυπογράφηση από Β υπογραφής του B από τρίτο μέρος
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22
2-36

Κρυπτογραφία Δημοσίου Κλειδιού (ΚΔΚ)


Κρυπτοσυστήματα

 Clifford Christopher Cocks σε GCHQ (1973, declassified


1997)
 Παραγοντοποίηση μεγάλων αριθμών σε πρώτους

 RSA – Rivest, Shamir, Adleman (1977)


 Παραγοντοποίηση μεγάλων αριθμών σε πρώτους

 El Gamal (1985)
 Πρόβλημα διακριτού λογάριθμου

 Elliptic Curve Cryptography από Koblitz και Miller (1985)


 Πρόβλημα διακριτού λογάριθμου σε ελλειπτικές καμπύλες

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

2-37

Κρυπτογραφία Δημοσίου Κλειδιού (ΚΔΚ)


Ανοικτά θέματα

 Όταν κρυπτογραφώ με το δημόσιο κλειδί του παραλήπτη


πως γνωρίζω και επιβεβαιώνω ότι ανήκει σε αυτόν;
 Όταν επιβεβαιώνω μια υπογραφή ενός αποστολέα πως
επιβεβαιώνω ότι το δημόσιο κλείδι επιβεβαίωσης ανήκει σε
αυτόν;
 Εμπιστοσύνη ότι ένα δημόσιο κλειδί ανήκει στον κατέχοντα
 Λύση: Public-Key Certificates

Πιστοποιητικά Δημοσίου Κλειδιού:


Συνδέουν ΑΔΙΑΜΦΙΣΒΗΤΗΤΑ το δημόσιο κλειδί ενός κατεχόντα με τον κατέχοντα

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


2-38

Κρυπτογραφία Δημοσίου Κλειδιού (ΚΔΚ)


Πιστοποιητικά Δημοσίου Κλειδιού (1)

• Παράγονται από Έμπιστη Τρίτη Οντότητα ή Certificate


Authority (CA)
• Ένα πιστοποιητικό συσχετίζει την “ταυτότητα” ενός χρήστη
(identity) με ένα public key
• Συχνά περιλαμβάνει πρόσθετες πληροφορίες, όπως χρόνος
εγκυρότητας, δικαιώματα χρήσης κοκ
• Τα περιεχόμενα του πιστοποιητικού υπογράφονται (signed)
από την έμπιστη ΕΤΟ (CA)

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

2-39

Κρυπτογραφία Δημοσίου Κλειδιού (ΚΔΚ)


Πιστοποιητικά Δημοσίου Κλειδιού (2)
• Το πιστοποιητικό δημοσίου κλειδιού
• μπορεί να επαληθευτεί από όποιον κατέχει το public-key της CA
Ένας
• παραδίδεται στο χρήστη και σχετίζεται με το αντίστοιχο ιδιωτικό του κλειδί
χρήστης μεταβιβάζει το δημόσιο κλειδί του σε ένα άλλο χρήστη με το
να του στείλει το πιστοποιητικό δημοσίου κλειδιούτου
• Χαρακτηριστικά
• Μόνο η CA μπορεί να δημιουργεί cert.
• Κάθε χρήστης μπορεί να λάβει ένα cert., να το διαβάσει και να προσδιορίσει την
ταυτότητα και το δημόσιο κλειδί του κατόχου του
• Κάθε χρήστης μπορεί να πιστοποιήσει ότι το cert. δημιουργήθηκε από την CA και
δεν είναι πλαστό
• Κάθε χρήστης μπορεί να επαληθεύσει τη χρονική ισχύ του cert.

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


2-40

Κρυπτογραφία Δημοσίου Κλειδιού (ΚΔΚ)


Πιστοποιητικά Δημοσίου Κλειδιού (3)
KUCA, KRCA,

KUI: Public Key Entity I


CertCA= EKRCA[KUCA , IDCA, Time] KRI: Private Key Entity I
CA.com Τimei: Expiration i

KUA
KUB

CertA= EKRCA[KUA , IDA, Time1]

CertB= EKRCA [KUB , IDB, Time2]

KUA, KRA, KUB, KRB,


CA

A Β

CB

Ο Χρήστης παράγει ζεύγος ιδιωτικού (KR) και δημόσιου (KU) κλειδιού


Ο Χρήστης απευθύνεται στην CA και υποβάλει το δημόσιο κλειδί του αιτούμενος ένα certficate
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

2-41

Κρυπτογραφία Δημοσίου Κλειδιού (ΚΔΚ)


Πιστοποιητικά Δημοσίου Κλειδιού (4)

H Alice θέλει να κρυπτογραφήσει την συναλλαγή M προς τον bob.com


Θα βρει από το site του bob.com το πιστοποιητικό CB
Βλέπει ότι έχει υπογραφεί από την CA
Βλέπει ότι εμπιστεύεται αυτήν την CA να εκδώσει πιστοποιητικά δημοσίου κλειδιού
Ανακτά το δημόσιο κλειδί της KUCA
1) DKUCA (CertB) = DKUCA (EKRCA [KUB , IDB, Time2]) = KUB , IDB, Time2  το KUB ανήκει στον Bob.com
2) EKUB(M) = C
3) Στέλνει το C στον Bob.com
4) O Bob.com χρησιμοποιεί το KR B που, Ασφάλεια
I. Μαριάς μόνο αυτός
Δικτύων,κατέχει γιαΑκνα
7ο εξάμηνο, αποκρυπτογραφήσει
Έτος 2021-22 το C: EKRB(C) = M
2-42

Συναρτήσεις Σύνοψης
Λειτουργικές Προϋποθέσεις – Ευρύς Ορισμός
• Μπορεί να εφαρμοστεί σε τμήμα δεδομένων οποιουδήποτε μεγέθους
• Παράγει έξοδο (σύνοψη h) σταθερού μικρού μήκους
• Εύκολα υπολογίσιμη για δοθέν κείμενο x
m bits του x >> n bits του h

m bits n bits
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

2-43

Ασφαλείς Συναρτήσεις Σύνοψης


Προϋποθέσεις Ασφάλειας
Συνήθως θέλουμε μία συνάρτηση hash h: X={0,1}m → Y ={0,1}n m >> n
να ικανοποιεί τις ακόλουθες ιδιότητες:
1. Δεδομένης hash function h() και y ∈ Y, πρέπει να είναι
υπολογιστικά δύσκολο να βρεθεί x τέτοιο ώστε h(x) = y
(preimage resistance)
2. Δεδομένης hash function h() και x ∈ X, πρέπει να είναι
υπολογιστικά δύσκολο να βρεθεί x΄ τέτοιο ώστε h(x΄) == h(x)
(2nd preimage resistance ή weak collision resistance)
3. Δεδομένης hash function h, πρέπει να είναι υπολογιστικά
δύσκολο να βρεθούν x, x’ ∈ X τέτοια ώστε h(x) == h(x’)
(strong collision resistance)

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


2-44

Ασφαλείς Συναρτήσεις Σύνοψης


Εφαρμογές

• ψηφιακές υπογραφές
• Το μεγάλο μήνυμα κατακερματίζεται και μόνο η hash τιμή υπογράφεται
• εξοικονομεί χρόνο και χώρο σε σύγκριση με την υπογραφή του
μηνύματος άμεσα
• ακεραιότητα των δεδομένων
• Η hash-τιμή που αντιστοιχεί στα δεδομένα υπολογίζεται σε κάποια
χρονική στιγμή
• Η ακεραιότητα της hash-τιμής προστατεύεται
• Σε μεταγενέστερη χρονική στιγμή επανα-υπολογίζεται η hash-τιμή των
δεδομένων και γίνεται σύγκριση με την αρχική
• ακεραιότητα των δεδομένων και αυθεντικοποίηση πηγής
δεδομένων (data origin authentication)
• με key-based hash functions

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

2-45

Ασφαλείς Συναρτήσεις Σύνοψης


Ακεραιότητα μηνύματος Μ και αυθεντικοποίηση πηγής δεδομένων (data origin
authentication) με public key encryption (1)
Adam
Adam public key ΚUΑ
Adam private key ΚRΑ

1 6 SΚRΑ(H(M))||M
5 Bob

2 End of step 5: M 7 SΚRΑ(H(M))


Σύνοψη
5 SΚRΑ(H(M))||M 7α 7b
Η()
3 4
1778909 8α 8b
ΚRΑ Σύνοψη
ΚUΑ
Η()
9α 9b
1778909 Σύγκριση 1778909

Ψηφιακή Υπογραφή του Adam με χρήση message digests End of step 8b:
V ΚU Α( SΚR Α(H(M)))  H(M)
και Επιβεβαίωση Υπογραφής από Bob
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22
2-46

Ασφαλείς Συναρτήσεις Σύνοψης


Ακεραιότητα μηνύματος Μ και αυθεντικοποίηση πηγής δεδομένων (data origin
authentication) με public key encryption (2)
Adam
Adam public key ΚUΑ
Adam private key ΚRΑ

1 6 SΚRΑ(H(M))||Μ’
5 Bob

2 End of step 5: M’ 7 SΚRΑ(H(M))


Σύνοψη
5 SΚRΑ(H(M))||M 7α 7b
Η()
3 4
1778909 8α 8b
ΚRΑ Σύνοψη
ΚUΑ
Η()
9α 9b
Αρχικό μήνυμα M=Πλήρωσε 100 Ευρώ στην Nike 1778909 Σύγκριση 1778909
Πλαστό μήνυμα M’=Πλήρωσε 1000 Ευρώ στον Mike End of step 8b:
Η(M)==Η(M’) V ΚU Α( SΚR Α(H(M)))  H(M)
Η() πρέπει να είναι collision free I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

2-47

Ασφαλείς Συναρτήσεις Σύνοψης


Ακεραιότητα μηνύματος Μ και αυθεντικοποίηση πηγής δεδομένων (data origin
authentication) με Message Authentication Code (1)

Αποστολέας Α Server B
h1 s
Μ
μήνυμα H(s||M)||M
Σύνοψη
Σύνοψη
H()
Η()

h2=H(s||M)
Κοινό μυστικό s h1 == h2 ?
Κωδικός Πιστοποίησης Μηνύματος (MAC)
Υπολογίζεται ο κωδικός MAC ως συνάρτηση του μηνύματος και του μυστικού: MAC = H(s||M)
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22
2-48

Ασφαλείς Συναρτήσεις Σύνοψης


Ακεραιότητα μηνύματος Μ και αυθεντικοποίηση πηγής δεδομένων (data origin
authentication) με Message Authentication Code (2)
Προσθήκη μηχανισμού antireplay attack
Αποστολέας Α Server B
h1 s
Μ
μήνυμα H(s||M||||Ri)||M||Ri
Σύνοψη
Σύνοψη
H()
Η()

h2=H(s||M||||Ri)
Κοινό μυστικό s h1 == h2 ?
Κωδικός Πιστοποίησης Μηνύματος (MAC)
Υπολογίζεται ο κωδικός MAC ως συνάρτηση του μηνύματος και του μυστικού: MAC = H(s||M)
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

2-49

Replay Attacks (1)

• Πρόβλημα:
• Ένας εχθρός ανακτά τα μηνύματα που ανταλλάσσονται και τα αναμεταδίδει
στο μέλλον
• Η κρυπτογράφηση και οι ασφαλείς συνόψεις δε το αντιμετωπίζουν
• Απαιτείται ενσωμάτωση μηχανισμών προσδιορισμού
«προσφατότητας» μηνυμάτων
• freshness identifiers
• Τρεις τύποι freshness identifier
• nonces
• timestamps
• sequence numbers

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


2-50

Replay Attacks (2)

• Nonce
• Τυχαίος αριθμός, απρόβλεπτος και μη επαναχρησιμοποιούμενος
(μοναδικός)
• Timestamps
• Ο αποστολέας επισυνάπτει real-time timestamp σε κάθε μήνυμα
• Ο παραλήπτης λαμβάνει timestamp και το συγκρίνει με το τρέχοντα χρόνο
• Αν η διαφορά αρκετά μικρή, τότε αποδέχεται μήνυμα, διαφορετικά το απορρίπτει
• Πρόβλημα ο συγχρονισμός μεταξύ sender και receiver
• Sequence numbers
• Ο αποστολέας επισυνάπτει μια μονοτονικά αύξουσα τιμή (counter) σε κάθε
μήνυμα, αυξάνει κατά 1 μετά από κάθε αποστολή μηνύματος προς
παραλήπτη
• Ο παραλήπτης απαιτείται να θυμάται την τελευταία μέγιστη τιμή του counter
που έλαβε από αποστολέα

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-1

Entity Authentication

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


3-2

Περιεχόμενα

• Αυθεντικοποίηση
• Local authentication: Συνθηματικά
• Remote authentication: Nonces
• Αδυναμίες και Επιθέσεις
• Μηχανισμοί και Πρωτόκολλα αυθεντικοποίησης

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-3

Αυθεντικοποίηση
Αυθεντικοποίηση (Authentication)
 Επιβεβαίωση δέσμευσης με μία ταυτότητας - Απαιτείται
για να αναγνωριστεί ο αιτούμενος ενέργειας/συναλλαγής
 Απαραίτητη για
• Έλεγχος πρόσβασης
• Εξουσιοδότηση (authorization - απόδοση δικαιωμάτων)
• Λογοδοσία (accounting)
 Π.χ. ATM τραπεζών
• Αυθεντικοποίηση με κωδικό (4ψηφιο) και μαγνητική κάρτα
(account number)
• Είσοδος σε (δια)τραπεζικό σύστημα
• Εκχώρηση δικαιωμάτων
– Πχ συναλλαγές μόνο σε λογαριασμό όψεως ή ταμιευτήριο
• Συναλλαγή
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22
3-4

Αυθεντικοποίηση
Μέγεθος αναγνωριστικού – ταυτότητας
 Κατανόηση της διαφοράς μεταξύ
 Πληροφορίας για ταυτοποίηση (π.χ., unique name and
photo)
• Παρουσίαση αναγνωριστικού ελέγχου ταυτότητας που δεσμεύουν
μονοσήμαντα την οντότητα και το αναγνωριστικό
 Πληροφορίας για επαλήθευση ταυτότητας –
αυθεντικοποίηση
• Παρουσίαση αναγνωριστικού ελέγχου ταυτότητας που
επιβεβαιώνουν τη δέσμευση μεταξύ της οντότητας και του
αναγνωριστικού
• Στην ουσία είναι ο τρόπος με τον οποίο ένας χρήστης παρέχει μια
αξιωμένη ταυτότητα στο σύστημα. Η αυθεντικοποίηση χρήστη είναι
το μέσο για την επαλήθευση της εγκυρότητας της αξίωσης.
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-5

Αυθεντικοποίηση
Μέθοδοι αυθεντικοποίησης
 Διακρίνονται ανάλογα με το από πού προέρχεται η πληροφορία
 Κάτι που ο χρήστης ξέρει
 Username, Password, PIN, passphrases, όνομα σκύλου
 Κάτι που ο χρήστης έχει
 Άδεια οδήγησης, κλειδιά αυτοκινήτου, token, smart card, ticket …
 Κάτι που ο χρήστης είναι
 Φυσικά χαρακτηριστικά: Αποτύπωμα, ίριδα, παλαμομορφή κοκ (static
biometrics)
 Χαρακτηριστικά Συμπεριφοράς: Φυσική Υπογραφή, φωνή (dynamic
biometrics)
 Κάτι που ο χρήστης εκτελεί
 Μοτίβο γραφής, ρυθμός δακτυλογράφησης

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


3-6

Αυθεντικοποίηση
Μέθοδοι αυθεντικοποίησης
 Διακρίνονται ανάλογα με το από πού προέρχεται η
πληροφορία
 Κάτι που ο χρήστης ξέρει (–) Υποκλοπή
(–) Social engineering
 Username, Password, PIN, passphrases
(–) Απώλεια/χάσιμο
(–) Ευκολία αναπαραγωγής
 Κάτι που ο χρήστης έχει
(–) Δυσκολία αρχικοποίησης / διανομής
 Token, smart card, ticket … (+) χαμηλό false negative, false positive
 Κάτι που ο χρήστης είναι (biometrics)
 Φυσικά χαρακτηριστικά: Αποτύπωμα, ίριδα, παλαμομορφή κοκ
(+) Δυσκολία Υποκλοπής
(static biometrics)
(+) Όχι Social engineering
 Χαρακτηριστικά Συμπεριφοράς: Φυσική Υπογραφή, φωνή
(+) Μη Απώλεια/χάσιμο
(dynamic(+) Σχετική δυσκολία αναπαραγωγής
biometrics)
(+) Ευκολία αρχικοποίησης
(-) υψηλό false negative, false positive
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-7

Αυθεντικοποίηση
Κάτι που ο χρήστης έχει: Κάρτες
 Embossed Cards
 Ανάγλυφες κάρτες
 Τυπωμένος αριθμός, όνομα κοκ
 Πολύ παλιές κάρτες credit
 Εύκολα διαβάζεται, υποκλέπτεται, με μικρό κόστος
κλωνοποιείται

 Πλαστική μαγνητική κάρτα (magnetic stripe)


 Με μαγνητική ταινία με tracks που περιέχουν
 ταυτότητα κατόχου, account number, expiration
day, issuing bank, format information
 Εύκολα διαβάζεται, υποκλέπτεται, με μικρό κόστος
κλωνοποιείται

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


3-8

Αυθεντικοποίηση
Κάτι που ο χρήστης έχει: Κάρτες (2)
 Memory Card
 Can store but do not process data
 περιλαμβάνει εσωτερική ηλεκτρονική μνήμη
 Μπορεί να χρησιμοποιηθεί και για φυσική πρόσβαση (ATM,
δωματίου ξενοδοχείου)
 Παρέχει σημαντικά μεγαλύτερη ασφάλεια όταν συνδυάζεται
με κωδικό πρόσβασης ή PIN
 Έξυπνη κάρτα
 Με integrated circuit και on-board micro-processor, με
READ/WRITE capabilities
 Δεδομένα στην κάρτα μπορούν να προσπελαστούν ή να
τροποποιηθούν
 Παρέχουν strong authentication μέσω cryptography
 Contact/Contactless
 Δεν κλωνοποιείται εύκολα
Pictures from “Introduction
to computer Security”, by
Roberto Tamassia

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-9

Αυθεντικοποίηση
Κάτι που ο χρήστης έχει: Έξυπνη Κάρτα
 Η πιο σημαντική κατηγορία έξυπνων διακριτικών
 Έχει την εμφάνιση πιστωτικής κάρτας
 Διαθέτει ηλεκτρονική διεπαφή
 Μπορεί να υλοποιήσει οποιοδήποτε από τα πρωτόκολλα διακριτικών
 Περιέχει:
• Ολόκληρο μικροεπεξεργαστής (CPU, Μνήμη, Θύρες εισόδου / εξόδου)
 Συνήθως περιλαμβάνουν τρεις τύπους μνήμης:
• Μνήμη μόνο για ανάγνωση (ROM)
– Αποθηκεύει δεδομένα που δεν αλλάζουν κατά τη διάρκεια ζωής της κάρτας

• Ηλεκτρικά διαγράψιμο προγραμματιζόμενο ROM (EEPROM)


– Διατηρεί δεδομένα και προγράμματα εφαρμογών

• Μνήμη τυχαίας προσπέλασης (RAM)


– Διατηρεί προσωρινά δεδομένα που δημιουργούνται κατά την εκτέλεση εφαρμογών

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


3-10

Αυθεντικοποίηση
Κάτι που ο χρήστης είναι: Βιομετρικά Χαρακτηριστικά
Προϋποθέσεις Χρήσεις
Ευρύτητα Εφαρμογής (Universality).
 Κάθε άτομο πρέπει να έχει αυτό το χαρακτηριστικό
Διαφορετικότητα (Distinctiveness)
 Κάθε άτομο πρέπει να διαθέτει εμφανείς διαφορές στο
χαρακτηριστικό αυτό
Μονιμότητα (Permanence).
 Το χαρακτηριστικό πρέπει να παραμένει αναλλοίωτο με το
χρόνο
Εφαρμοσιμότητα ή ικανότητα συλλογής (Collectability)
Pictures from “Introduction
 Το χαρακτηριστικό πρέπει να είναι εύκολα μετρήσιμο, ή to computer Security”, by
Roberto Tamassia
αναγνώσιμο
Ικανότητα τρίτων να κλωνοποιήσουν το χαρακτηριστικό

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-11

Αυθεντικοποίηση
Κάτι που ο χρήστης είναι: Βιομετρικά Χαρακτηριστικά
Υποψήφια
Fingerprints
 Πιο σύνηθες
Ιris scans
 Ακριβός εξοπλισμός
DNA
 Ακριβή και χρονοβόρα διαδικασία
Voice recognition
 Αλλάζει συν το χρόνο
 Χαμηλότερα ποσοστά αξιοπιστίας
Pictures from “Introduction
Face recognition to computer Security”, by
Roberto Tamassia

 Ακριβός εξοπλισμός
 Όχι άμεση διαδικασία

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


3-12

Αυθεντικοποίηση
Κάτι που ο χρήστης είναι: Βιομετρικά Χαρακτηριστικά
Διαδικασία
Λαμβάνω μέτρηση
Αναγνωρίζω διάνυσμα ταυτοποίησης
Ανακαλώ υποψήφια διανύσματα για
ταίριασμα
Συγκρίνω με υποψήφια
 Ή με του υποψήφιου αν μου το δηλώνει
 Αλγόριθμοι ταιριάσματος
Απαντώ στην ερώτηση ταυτοποίησης
 FALSE POSITIVE / NEGATIVE συνθήκες

Pictures from “Introduction


to computer Security”, by
Roberto Tamassia

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-13

Αυθεντικοποίηση
Κάτι που ο χρήστης ξέρει: Passwords
 Απλό στη σκέψη
 ο χρήστης δίνει κάποιο αναγνωριστικό
 Username, passphrases
 Το σύστημα ζητά password
 Αν το password ταιριάζει με αυτό του χρήστη, τότε γίνεται
authenticated και του επιτρέπεται η πρόσβαση στο
σύστημα
 Διαφορετικά του ζητάται να ξαναδώσει στοιχεία
 Απλό αλλά με αδυναμίες

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


3-14

Αυθεντικοποίηση
Passwords
 Αδυναμίες συστήματος
 Η αυθεντικοποίηση βασίζεται στη σωστή δυάδα <userid, password>
 Αν το σύστημα αποκρίνεται ότι μόνο το userid είναι λάθος τότε διαχέει
πληροφορία στον attacker
• το μήνυμα λάθους δεν θα πρέπει να ορίζει ποιο από τα userid ή password είναι
λαθεμένο
 Social engineering
 Μελέτη έδειξε
• 2/3 χρηστών θα αποκάλυπταν το password αν τους δίναμε ένα εκπτωτικό
κουπόνι μερικών $
• 75% χρηστών αποκάλυψαν ότι διαθέτουν το ίδιο password για περισσότερα
από ένα συστήματα
 Απρόσεκτη Χρήση
 Αφηρημάδα: passwords είναι καταγεγραμμένα σε κινητά, flash/memory
sticks etc.
 Συνηθισμένο: “my password is x, get the file yourself”.

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-15

Αυθεντικοποίηση
Passwords
 Αδυναμίες συστήματος
 Η αυθεντικοποίηση βασίζεται στη σωστή δυάδα <userid, password>
 Αν το σύστημα αποκρίνεται ότι μόνο το userid είναι λάθος τότε διαχέει
πληροφορία στον attacker
• το μήνυμα λάθους δεν θα πρέπει να ορίζει ποιο από τα userid ή password είναι
λαθεμένο
 Λιγότερες αδυναμίες – κανόνες για ασφαλή πρόσβαση
 Γενικό μήνυμα λάθους
 Αλλαγή password σε τακτά χρονικά διαστήματα
 Σε ενημερώνει πότε και από που έκανες το τελευταίο login session
 Να μην ξαναχρησιμοποιείς το ίδιο password
 Κλείδωσε το λογαριασμό μετά από Χ συνεχόμενες αποτυχίες
 Ειδοποίηση του χρήστη κατά το login αν έχει συλλέξει αυθεντικά
contact details

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


3-16

Αυθεντικοποίηση
Passwords
 Αδύναμες επιλογές
 Μελέτη σε 3829 passwords
 Πρόσθετα (on-line UK bank):
• 23% όνομα παιδιού
• 19% όνομα συζύγου ή
συντρόφου
• 9% ίδιο με το όνομα
κατόχου
-------- σύνολο 50% --------
• 8% όνομα κατοικίδιου
• 9% όνομα διάσημου

Users’ Password Choices.


C. Pfleeger and S. Pfleeger “Security in Computing”, 4th edition, Prentice Hall

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-17

Αυθεντικοποίηση
Passwords
 32 εκατομ. passwords
εκλάπησαν από το RockYou
 December 2009
 Περιείχαν passwords για
websites όπως
 MySpace, Yahoo, Hotmail
 Δημοσιεύτηκαν στο Web
 Αναλύθηκαν από Imperva.com
 1% είναι το 123456
 20% των password ανήκουν σε ένα
set των 5000 different passwords

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


3-18

Αυθεντικοποίηση
Passwords – Παραγωγή

Στατικοί Κανόνες
 Passwords must contain at least 1 letter.
 Passwords must contain at least 1 number or punctuation mark.
 Passwords must be between 8 and 16 characters long.
 Passwords must contain more than 4 unique characters.
 Passwords must not contain spaces.
 Passwords must not contain easily guessed words (e.g., Purdue).
 Passwords must not contain your name or parts of your name (e.g., Chris or the letters "is«)
https://www.purdue.edu/policies/information-technology/s16.html

Δυνατό με Βάση Κανόνες Password: P@ssw0rd1


Αποδεκτό Password ? P@ssw0rd1
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-19

Αυθεντικοποίηση
Passwords – Παραγωγή
 Use of various characters
 Use lengths > 10 chars
 Markov chains for testing
strengthen
 Based on dictionaries
Αντιδραστικός έλεγχος
 Based on existing passwords – το σύστημα εκτελεί περιοδικά το δικό του
πρόγραμμα σπασίματος συνθηματικών για να
 What happens when the εντοπίσει αδύναμα συνθηματικά.

systems chooses password ? Προληπτικός έλεγχος


– επιτρέπεται στο χρήστη να επιλέξει το δικό
 What happens if you choose του συνθηματικό.
– την ώρα της επιλογής το σύστημα ελέγχει αν
the same password with αυτό το συνθηματικό είναι επιτρεπτό
another user? – Αν δεν είναι το απορρίπτει.

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


3-20

Αυθεντικοποίηση
Passwords – Παραγωγή
Μοντέλο Markov για παραγωγή προβλέψιμων
συνθηματικών
• δείχνει γλώσσα με αλφάβητο 3 χαρακτήρων
a, b, c
a, b, c.., z, $,!, @, #, 1,2, ..,9
• κατάσταση συστήματος σε οποιαδήποτε στιγμή
είναι η ταυτότητα του πιο πρόσφατου γράμματος
• Τιμή μετάβασης από μία κατάσταση σε άλλη =
η πιθανότητα να ακολουθείται ένα γράμμα από
κάποιο άλλο

το μοντέλο Markov είναι μια τετράδα [m, A, T, k],


• m είναι ο αριθμός των καταστάσεων στο μοντέλο,
• A είναι ο χώρος καταστάσεων,
• T είναι ο πίνακας των πιθανοτήτων μεταβάσεων,
• k είναι η τάξη του μοντέλου.
Για ένα μοντέλο k τάξης, η πιθανότητα για μετάβαση σε ένα συγκεκριμένο
γράμμα εξαρτάται από τα προηγούμενα k γράμματα που έχουν παραχθεί. Η
Εικόνα δείχνει ένα απλό μοντέλο πρώτης τάξης

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-21

Αυθεντικοποίηση
Passwords – Παραγωγή μοντέλο δεύτερης τάξης
Αρχικά κατασκευάζεται λεξικό από προβλέψιμα
συνθηματικά.
Στη συνέχεια υπολογίζεται ο πίνακας μεταβάσεων:
1. Καθορίζουμε τον πίνακα συχνοτήτων f, όπου
f(i, j, k) είναι το πλήθος των εμφανίσεων της
τριάδας γραμμάτων που αποτελείται από τους
χαρακτήρες i, j, και k.
• Για παράδειγμα, το συνθηματικό parsnips μας δίνει τις
τριάδες par, ars, rsn, sni, nip, και ips.
2. Για κάθε δυάδα γραμμάτων ij, υπολογίζουμε το
f(i, j, ∞) ως το συνολικό αριθμό των τριάδων
που ξεκινούν με ij.
• Π.χ. το f(a, b, ∞) είναι ο συνολικός αριθμός των τριάδων
γραμμάτων της μορφής aba, abb, abc, και ούτω καθεξής.
3. Υπολογίζουμε τις καταχωρίσεις του T ως εξής:

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


3-22

Αυθεντικοποίηση
Passwords
 Exhaustive attacks
 Έστω passwords μήκους έως 8 χαρακτήρων από τα κεφαλαία λατινικά
(Α-Ζ, 26 χαρακτήρες)
 Υπάρχουν
• 261 passwords μήκους 1 χαρακτήρα
• 262 passwords μήκους 2 χαρακτήρων
• 263 passwords μήκους 3 χαρακτήρα
………..
Σύνολο 261 + 262 + …. + 268 = 5*1012 πιθανά passwords
 Έστω επεξεργαστής με δοκιμή ενός password/milisec
• Passwords μήκους 3 ή less = 261 +262+263=18.278, άρα 18.278 msecs
• Passwords μήκους 4 ή less = 475 seconds (8min)
• Passwords μήκους 5 ή less = 3,5 hours

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-23

Αυθεντικοποίηση
Passwords & Social Engineering
 Baiting
 Πρόσφερε ένα μικρό δώρο (δόλωμα) για να δελεάσεις προκειμένου
να γίνει μια ανασφαλής ενέργεια
• Μερικά USB sticks με «διάσημη ταινία» ως δώρο πάνω στα γραφεία εργαζομένων
• Προ-φόρτωση sticks με malware
 Quid pro quo (μία σου και μία μου)
 Πείθεις ότι παρέχεις μια υπηρεσία και κατόπιν ζητάς κάτι ως
αντάλλαγμα
• Μαθαίνεις όνομα admin και καλείς ALICE
• Της κάνεις παρατήρηση ότι κάτι δεν κάνει καλά με υπολογιστή της
• Της ζητάς να αλλάξει το password με αυτό που θα της δώσεις και θα τη
βοηθήσεις remotely να σβήσει ορισμένα κακόβουλα αρχεία

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


3-24

Αυθεντικοποίηση
Passwords – Αποθήκευση
 Αποθήκευση
 Το password πρέπει να αποθηκεύεται στο σύστημα
 Ελέγχεται ταίριασμα με αυτό που δίνει ο χρήστης
 Τρόπος αποθήκευσης?
 Η λίστα με τα password είναι οργανωμένη σε πίνακα με δύο στήλες
• user ID’s και το αντίστοιχο password.
 Αποτροπή ανάγνωσης σε μη εξουσιοδοτημένους χρήστες?
 Υπάρχει εξουσιοδοτημένος χρήστης
 Τυπικά όχι, πλην του λειτουργικού (n+1 users approach)
 Ισχυρό access control επιτρέπει την πρόσβαση μόνο στο
λειτουργικό / admin

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-25

Αυθεντικοποίηση
Crack Passwords : Κλέψε το αρχείο
 Έστω DAC σε LINUX
 subject Admin έχει read and write access στο file object pass.pwd
 subject Cracker μπορεί να γράψει πρόγραμμα που δημιουργεί νέο
object Trojan.exe
περιεχόμενο: cat pass.pwd >> myFile.txt
 χορηγεί στο subject Admin exe access στο Trojan.exe
 χορηγεί στο subject Cracker read access στο myFile.txt
 Το subject Cracker μεταμφιέζει το πρόγραμμα ως «νόμιμο» (π.χ.,
από Trojan.exe σε ls) και το
Αποθηκεύει στο δίσκο ή
Το στέλνει στο subject Admin

Όταν το subject Admin εκτελεί το πρόγραμμα, το πρόγραμμα έχει τα


ίδια permissions με το subject Admin και αποκαλύπτει τα περιεχόμενα
του pass.pwd στο subject Cracker στο αρχείο myFile.txt

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


3-26

Αυθεντικοποίηση
Passwords – Αποθήκευση
 Άρα ο έλεγχος πρόσβασης μπορεί να είναι ανεπαρκής :
 Διαδικασίες του λειτουργικού δεν είναι απαραίτητο να έχουν πρόσβαση, άρα
καλύτερα να περιορίσουμε πρόσβαση σε όσες το χρησιμοποιούν
 Πρόβλημα και με τα backup tapes
• Θέλει και φυσικό έλεγχο πρόσβασης
 Το αρχείο πρέπει να είναι κρυπτογραφημένο
 Για αποφυγή ανάγνωσης από διαχειριστές
 Συνήθης πρακτική : χρήση one-way function για απόκρυψη
 easy to compute, difficult to invert
 π.χ. Unix
 Αντί το password αποθηκεύεται το αποτέλεσμα της συνάρτησης
 Στο password που εισάγεται εφαρμόζεται η μονόδρομη συνάρτηση και
συγκρίνεται με τα στοιχεία της λίστας για ταίριασμα

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-27

Αυθεντικοποίηση
Passwords – Unix
 1η λύση Encryption (ξεπερασμένη)
 αρχικά 25 iterations του DES
 Οι οκτώ πρώτοι χαρακτήρες του user password χρησιμοποιούνται για
να παράξουν το 56-bit DES key

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


3-28

Αυθεντικοποίηση
Passwords – Unix
 Encryption – Επαλήθευση (ξεπερασμένη)

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-29

Αυθεντικοποίηση
Passwords – Unix
 2η λύση Hashing
 Για την προστασία των κωδικών πρόσβασης, μόνο το αποτύπωμα
(hash value) είναι αποθηκευμένο
• /etc/passwd user info
• /etc/shadow password hashes (root level access)
 Όταν ένας χρήστης εισάγει έναν κωδικό πρόσβασης στο σύστημα
παράγει τη σύνοψη από αυτό
• τη συγκρίνει με την πραγματική τιμή
 Εάν ένας εισβολέας κλέψει το αρχείο με κωδικούς πρόσβασης δεν
αποκαλύπτονται τα passwords

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


3-30

Αυθεντικοποίηση
Crack Passwords
 Ιδέα: υπολόγισε όλα τα hash values και αποθήκευσε τα
στο δίσκο
 Κακή ιδέα. Πχ MD5 με 128 bit θέλει 10^26 terabytes
 Κόστος Θ(|P|n), όπου P χώρος passwords και n hash value in bits
 Αρχή Heisenberg για συλλογή στοιχείων: Δεν είναι απλώς δύσκολο
να συγκεντρωθούν όλες οι πληροφορίες σε έναν υπολογιστή, είναι
ουσιαστικά αδύνατο
 Εναλλακτικά: προ-υπολόγισε τη hash value για πιθανά
passwords και αποθήκευσε τιμές
 Στατιστικές προηγούμενων διαφανειών
 crack password
 Κλέψε το αρχείο
 Σύγκρινε τιμές (rainbow tables)

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-31

Αυθεντικοποίηση
Crack Passwords step 2: Σύγκρινε
 Rainbow Tables
 Προσπαθούν να αντιστρέψουν cryptographic hash functions
 Κεντρική Ιδέα: αντάλλαξε (tradeoff) storage με χρόνο (CPU time)
• Λιγότερη Disk Storage & Memory
• Σύνολο P από passwords pi
• Hash function H με τιμές h
• Reduction function R (ίδια παντού – αυτό θα αλλάξει αργότερα)
– Αντιστοιχεί hash values πίσω σε τιμές του P
• Εναλλάσσοντας H και R παράγονται αλυσίδες από p και h
• Έστω αλυσίδες μήκους k τιμών
p H h R p H h R p
aaaaaa ------> 281E1B48 ------> sgsdss------> 921E1C41 ------> kieabb
1 2 3 4 k=5

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


3-32

Αυθεντικοποίηση
Crack Passwords step 2: Σύγκρινε (cont)
 Rainbow Tables
 Φτιάξε πίνακα παίρνοντας κάποιο υποσύνολο από το P
 Για κάθε p που επέλεξες φτιάξε αλυσίδα μήκους k
 Αποθήκευσε μόνο το πρώτο και το τελευταίο password στην αλυσίδα
wikimedia.org

 Στόχος: δεδομένης της hash value h’ θέλουμε να βρούμε το


αντίστροφο (το p password που έδωσε το h’=Η(p))

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-33

Αυθεντικοποίηση
Crack Passwords step 2: Σύγκρινε (cont)
 Rainbow Tables
 Έστω h’= kolscx
 Εκτελούμε όσες φορές χρειάζεται την ακολουθία H(R(h’) μέχρι να
βρούμε valid τελική τιμή σε γραμμή (εδώ θα βρούμε την myname)

wikimedia.org

 Γυρνάμε στην αρχική τιμή της γραμμής (abcdefgh) και ξεκινάμε νέα
ακολουθία H(R(abcdefgh)) μέχρι να βρούμε h’=kolscx καταγράφοντας
ενδιάμεσα αποτελέσματα. Η προηγούμενη τιμή είναι το ζητούμενο p
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22
3-34

Αυθεντικοποίηση
Crack Passwords step 2: Σύγκρινε (cont)
 Rainbow Tables
 Επιλέγουμε συνήθως M random passwords (γραμμές) από P οπότε με
k iteration στην αλυσίδα έχουμε M*k> no. of passwords (|P|)
 Υπάρχουν collisions που οδηγούν σε εσφαλμένα συμπεράσματα για p

wikimedia.org

 H R αντικαθιστάτε από ακολουθία reduction functions R1 έως Rk


• Για να συγκρουστούν αλυσίδες πρέπει να εμφανιστούν ίδια τιμή στο ίδιο iteration.

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-35

Αυθεντικοποίηση
Passwords Αποθήκευση – Hashes and Salting
 Password salting  αποτροπή επίθεσης με rainbow tables
 Πριν από one-way function παράγεται το salt, 12-bit random value
• από system time και process id
 Αποτρέπει πρακτικά rainbow attacks
• ο attacker πρέπει να υπολογίσει tables για κάθε δυνατή salt value  αδύνατο
 Αποτρέπει ίδια encrypted passwords σε δύο χρήστες
 Το salt αποθηκεύεται και αυτό στο password table μαζί με το output
της one-way function (fingerprint)
• Σήμερα: από 48 σε 128 bits
• Σήμερα: To OpenBSD χρησιμοποιεί Blowfish block cipher-based hash algorithm που
ονομάζεται Bcrypt
• Uses 128-bit salt to create 192-bit hash value
 HashSalted(password) = hash(hash(password)+salt)
• key stretching

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


3-36

Αυθεντικοποίηση
Passwords Αποθήκευση – Hashes and Salting
Εγγραφή. Ο χρήστης επιλέγει κωδικό πρόσβασης.
To σύστημα επιλέγει salt. Ο κωδικός πρόσβασης
και το salt είσοδοι σε αλγόριθμο secure hashing
για παραγωγή fingerprint σταθερού μήκους. Ο
αλγόριθμος hashing έχει σχεδιαστεί ώστε να είναι
αργός στην εκτέλεση προκειμένου να αποτρέψει
επιθέσεις.

Login. Όταν o χρήστης συνδεθεί σε σύστημα


UNIX, παρέχει αναγνωριστικό του και κωδικό
πρόσβασης Το σύστημα χρησιμοποιεί το
αναγνωριστικό για ευρετήριο στο αρχείο κωδικού
πρόσβασης και ανακτά το salt και το fingerprint.
Το salt και ο κωδικός πρόσβασης που παρέχεται
από τον χρήστη χρησιμοποιούνται ως είσοδος στη
ρουτίνα secure hashing. Εάν το αποτέλεσμα
ταιριάζει με την αποθηκευμένη τιμή, ο κωδικός
είναι αποδεκτός.

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-37

Αυθεντικοποίηση
Passwords – Επιθέσεις
Spoofing
 Όταν εισάγουμε userid / password έχουμε τη σιγουριά με
ποιον εξυπηρέτη / σύστημα μιλάμε;
• Συνήθως όχι. Δεν γνωρίζουμε το λήπτη
 Τα συστήματα λειτουργούν με την λογική μονομερούς
αυθεντικοποίησης (unilateral authentication)
 Τρόποι ανάδρασης :
• Εμφάνιση αριθμού αποτυχιών πρόσβασης χρήστη (failed log-ins)
από την τελευταία επιτυχημένη πρόσβαση
• Υποστήριξη αμοιβαίου (mutual) authentication

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


3-38

Αυθεντικοποίηση
Passwords – Επιθέσεις
Key loggers
 Συλλαμβάνουν πληκτρολογήσεις (keystrokes) χρηστών και
άρα υποκλέπτουν passwords
 Hardware: Τρεις κατηγορίες
• Στη γραμμή μετάδοσης από keyboard (inline devices)
• Εξαρτήματα που τοποθετούνται μέσα στο keyboard
• Replacement keyboards.
 Software: Εφαρμογές που διαβάζουν και μεταδίδουν
keylogging
• Τετριμμένες πλέον, διατίθεται στο διαδίκτυο
• Ως μέρος ενός trojan horse, virus ή worm.

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-39

14 καλές πρακτικές που σχετίζονται με passwords χρηστών


 Καν.01 Να δέχεσαι πάντα passwords που είναι σύμφωνα με την πολιτική σου,
ακόμα και αν ήδη υπάρχουν ενεργά για άλλους χρήστες
 Καν.02 Hashing and salting στην αποθήκευση
 Καν.03 Να παροτρύνεις τους χρήστες σου να αλλάζουν το password μετά από
X μήνες
 Καν.04 Κάθε νέο password του χρήστη να μην είναι ίδιο (ή παρόμοιο) με
προηγούμενο
 Καν.05 και στο login και στο password set/reset 2FA π.χ., αποστολή
email/SMS/viber με μοναδικό αριθμό πρόσβασης
 Καν.06 Κλείδωσε τον λογαριασμό μετά από Ν αποτυχημένες προσπάθειες
 Καν.07 Ευαισθητοποίηση για μη χρήση ίδιου συνθηματικού σε άλλα
sites/συστήματα

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


3-40

14 καλές πρακτικές που σχετίζονται με passwords χρηστών


 Καν.08 Να αποθηκεύεις τα πιο συχνά Ips/domains σύνδεσης και να κάνεις τα
ακόλουθα:
α) να στέλνεις alert sτο χρήστη (email/SMS) όταν διαπιστώσεις ότι γίνεται προσπάθεια
πρόσβασης από άλλο domain
b) μετά την είσοδο να ενημερώνεις το χρήστη από ποια IP/domain έγινε η τελευταία σύνδεση
c) από διαφορετικό browser / συσκευή

 Καν.09 Αν ασκείς προληπτικό έλεγχο, δείξε στο χρήστη αν ένα password που επιλέγει
είναι αδύναμο ή όχι, ακόμα και αν υπακούει στην πολιτική σου. Αν ασκείς αναδρομικό
έλεγχο, πείσε το χρήστη να αλλάξει αδύναμο password, ακόμα και αν υπακούει στην
πολιτική σου
 Καν. 10 anti-bot policy: καλό θα ήταν να χρησιμοποιείς και CAPTCHAs (google) σε
χρήστες κατά την είσοδο
 Καν. 11 Να μην αναφέρεις στον χρήστη ότι έκανε λάθος είτε το uname είτε το password
(παρά μόνο και τα δύο, π.χ., λάθος uname ή password, ξαναπροσπάθησε)
 Καν. 12 μην εμφανίζεις το password στο text box στην οθόνη κατά την εισαγωγή (παρά
μόνο obfuscated chars, π.χ. ****, &^%%**), δώσε στον χρήστη την επιλογή
 Καν. 13 Κατά την εγγραφή: Επιβεβαίωση κωδικού επιλογής για 2 φορά
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-41

Αυθεντικοποίηση
Challenge-Response μέθοδοι για REMOTE
AUTHENTICATION
Στα επόμενα:
 Υποθέτουμε ανάγκη για αυθεντικοποίηση μέσω
διαδικτύου – REMOTE AUTHENTICATION
 Ο εχθρός ακούει το δίκτυο και μπορεί να αναμεταδώσει
πληροφορία που έχει υποκλέψει
• Δεν μπορεί ωστόσο να διακόψει την επικοινωνία μεταξύ
εξυπηρέτη – εξυπηρετούμενου
 Αρκετά Challenge-Response μοντέλα έχουν προταθεί
• Θα δούμε αδυναμίες τους

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


3-42

Αυθεντικοποίηση
Αυθεντικοποίηση – μέθοδος am1
Alice I’m Alice Bob Alice Bob

Enemy Enemy

Αδυναμίες
 Δεν υπάρχει τρόπος να γνωρίζει o Bob ότι το πρόσωπο που έστειλε το μήνυμα
“I’m Alice” είναι όντως η Alice
 Ο Enemy μπορεί να αντιγράψει την Alice

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-43

Αυθεντικοποίηση
Αυθεντικοποίηση – μέθοδος am2
I’m Alice
Alice gime passwd Bob Alice Bob
passwd

Έτσι λειτουργούσε το Password


Authentication Protocol (PAP) over PPP

Enemy Enemy

Προσθήκη κωδικού επικοινωνίας


 O Bob ζητάει μέρα γέννησης, κωδικός πρόσβασης (κτλ)
Αδυναμίες
 Δεν υπάρχει τρόπος να γνωρίζει o Bob ότι το πρόσωπο που έστειλε το μήνυμα
“I’m Alice” είναι όντως η Alice
 Ο Enemy μπορεί να αντιγράψει την Alice και το password της

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


3-44

Αυθεντικοποίηση
Αυθεντικοποίηση – μέθοδος am2.encr
I’m Alice
Alice gime passwd Bob Alice Bob
$#1q&u9

ΚΑΒ(passwd) Έτσι λειτουργούσε το Password


Authentication Protocol (PAP) over PPP
=$#1q&u9 (RFC 1334)

Enemy Enemy
Προσθήκη κωδικού επικοινωνίας κρυπτογραφημένου
 ΚΑΒ συμμετρικό κλειδί
 Κρυπτογράφηση password

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-45

Αυθεντικοποίηση
Αυθεντικοποίηση – μέθοδος am2.encr
I’m Alice
Alice gime passwd Bob Alice Bob
$#1q&u9

ΚΑΒ(passwd) Έτσι λειτουργούσε το Password


Authentication Protocol (PAP) over PPP
=$#1q&u9 (RFC 1334)

Enemy Enemy
Προσθήκη κωδικού επικοινωνίας κρυπτογραφημένου
 ΚΑΒ συμμετρικό κλειδί
 Κρυπτογράφηση password
Αδυναμίες
 Ο Enemy μπορεί να αντιγράψει το encrypted password της Alice
 Υλοποιεί κατόπιν replay attacks
 O Bob δεν μπορεί να ξεχωρίσει το αρχικό μήνυμα αυθεντικοποίησης της Alice από το
ύστερο αντίγραφό του (playback)

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


3-46

Αυθεντικοποίηση
Replay Attacks
 Πρόβλημα:
 Ένας εχθρός ανακτά τα μηνύματα που ανταλλάσσονται και τα αναμεταδίδει
στο μέλλον
 Η κρυπτογράφηση δε αντιμετωπίζει το πρόβλημα.
 Απαιτείται ενσωμάτωση μηχανισμών προσδιορισμού «προσφατότητας»
μηνυμάτων από τον αποστολέα
 freshness identifiers, nonce
 Τρεις τύποι freshness identifier
 Random numbers
 Timestamps
 Sequence numbers

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-47

Αυθεντικοποίηση
Freshness Identifiers – άπαξ τιμές ως Challenges
R=32bits  να χωρέσει σε ένα πεδίο (field) ενός πρωτοκόλλου
 Random numbers μεγαλύτερο από 2^32 για να ξαναγυρίσει
 Τυχαίος αριθμός, απρόβλεπτος και μη επαναχρησιμοποιούμενος
 Timestamps  μοναδικά, είναι οι τρέχουσες στιγμές, [DATE][TIMEmicrosec]
 Ο αποστολέας επισυνάπτει encrypted real-time timestamp σε κάθε μήνυμα
 Ο παραλήπτης αποκρυπτογραφεί timestamp και το συγκρίνει με το τρέχοντα χρόνο
• Αν η διαφορά αρκετά μικρή, τότε αποδέχεται μήνυμα, διαφορετικά το απορρίπτει
 Πρόβλημα ο συγχρονισμός μεταξύ sender και receiver
 Sequence numbers 2^32 θα ξαναγυρίσει
 Ο αποστολέας επισυνάπτει μια μονοτονικά αύξουσα τιμή (counter) σε κάθε μήνυμα,
αυξάνει κατά 1 μετά από κάθε αποστολή μηνύματος προς παραλήπτη
 Ο παραλήπτης απαιτείται να θυμάται την τελευταία μέγιστη τιμή του counter που έλαβε
από αποστολέα

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


3-48

Αυθεντικοποίηση
Αυθεντικοποίηση – μέθοδος am3.singlekey (Lamport 81)
I’m Alice
Alice R1 Bob Alice Bob
ΚΑΒ(R1)

Έτσι λειτουργεί το Challenge Authentication


Protocol (CHAP) over PPP (RFC 1994)

Enemy Enemy
Προσθήκη απαίτησης για Nonce R, και time-stamp
 ΚΑΒ συμμετρικό κλειδί  παράγεται με μια συνάρτηση που έχει ως όρισμα το
password της Alice
 Κρυπτογράφηση R1
Αδύνατο για forgery
 Ο Enemy μπορεί να αντιγράψει το encrypted R2 της Alice
 Replay attacks δεν μπορεί να αναπτυχθούν
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-49

Αυθεντικοποίηση
Αυθεντικοποίηση – μέθοδος am3.singlekey (Lamport 81)
Πρακτικό Παράδειγμα – GSM δίκτυα
 SIM cards :
 Integrated circuit card ID (ICCID) που περιέχει πληροφορίες ταυτοποίησης
 Κάθε SIM card αντιστοιχίζετε σε ένα record στην ΒΔ των subscribers που
διατηρεί ένας provider
 Περιέχει
 ένα unique 18-digit number για hardware identification (ΙΜΕΙ)
 ένα unique 64 bit international identity (IMSI)
• ταυτοποιεί χώρα, δίκτυο και κωδικό συνδρομής
 Προσοχή ΙΜΕΙ ≠ IMSI ≠ MSISDN
 συμμετρικό 128-bit secret key για authentication με mobile network
 Ως πρόσθετο χαρακτηριστικά:
 PIN πριν τη πρόσβαση στο τηλέφωνο
 PUK πριν τη πρόσβαση στη κάρτα

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


3-50

Αυθεντικοποίηση
Αυθεντικοποίηση – μέθοδος am3.singlekey (Lamport 81)
Πρακτικό Παράδειγμα – GSM δίκτυα Mobile Country Mobile Operator
Country Network
Code Code
(MCC) (MNC)
202 GR 1 Cosmote
202 GR 5 Vodafone
GSM CHALLENGE – RESPONSE για
202 GR 9 Q-telecom
authentication μεταξύ MS και Operator (ΑuC)
202 GR 10 WIND
310-316 US Various Various

IMSI

Για να αποτραπούν οι eavesdroppers να αναγνωρίσουν το IMSI στο radio interface, το IMSI στέλνεται σπάνια ενώ
στέλνεται ένα randomly-generated TMSI

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-51

Αυθεντικοποίηση
Αυθεντικοποίηση – γενική μέθοδος C/R
LoginUsrename: Alice F(P,C)
C F: συνάρτηση σύνοψης Η()
Alice f (P,C)=h1 Bob
ΕΚΑB (P,C)=Chipher1

 Αρχικά ο χρήστης αιτείται access στο σύστημα με το να


παράσχει το user name του
 Το σύστημα απαντά με μια random “challenge” C.
 Ο χρήστης αποκρίνεται με το αποτέλεσμα της εφαρμογής
συνάρτησης f στο challenge Cκαι στο password P
 To σύστημα διαθέτοντας το password P μετά από
υπολογισμούς δέχεται ή απορρίπτει την αίτηση πρόσβασης

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


3-52

Αυθεντικοποίηση
Αυθεντικοποίηση – S/Key (RFC 1760)
LoginUsrename: Alice
Challenge N
Alice f N(s) Bob

 S/Key: one-time password σχήμα


 Βασίζεται σε επαναληπτικές εκτελέσεις μονόδρομης συνάρτησης
 Ο χρήστης και ο host πρέπει να συμφωνούν από κοινού σε μια oneway
function (πχ hash-function)
• π.χ. SHA2 hash-function / 64-bit input και 256-bit output
 Εφαρμογή one-way function N φορές σε ένα secret key (για να πάρεις
το 1ο password), μετά N-1 φορές (για το 2ο password), κοκ
• To N δεν επαναλαμβανόμενος αριθμός ή αριθμός σε ακολουθία
• Έτσι προκύπτει ακολουθία από N one-time passwords

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-53

Αυθεντικοποίηση
Αυθεντικοποίηση – am4.hash S/Key
LoginUsrename: Alice
Alice sha2N(s) Bob

 S/Key: one-time password σχήμα


 Ο host και ο χρήστης συμφωνούν σε ένα 64-bit key S (seed)
 Ο host αποθηκεύει τις k τιμές fk(S), όπου f ή one-way function.
• fk σημαίνει εφαρμογή της f κατά k φορές
 Όταν ο χρήστης θέλει να αυθεντικοποιηθεί ο host αφαιρεί 1 από την
τρέχουσα τιμή k, και στέλνει αυτή την τιμή ως challenge N
 Ο χρήστης απαντά με response r = fN(S)
 Ο host επιβεβαιώνει με το να ελένξει αν f(r) = fk(S).
• Αν ναι αντικαθιστά την τρέχουσα τιμή fk(S) ε την fN(S)
 Τα one-time passwords πρέπει να χρησιμοποιούνται με τη σωστή σειρά

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


3-54

Αυθεντικοποίηση
One Time Password Tokens
 OTP Generator
 Mathematical algorithm OTP
• To σχήμα Lambort είναι ένα παράδειγμα ενός μαθηματικού αλγορίθμου
που μπορεί να χρησιμοποιηθεί
• Απαιτεί ανάστροφη σειρά (προηγούμενη διαφάνεια)
 Time-synchronised ΟΤΡ
• RSA SecureID βασίζεται σε time-synchronisation
• Μέσα στο USB token υπάρχει ρολόι συγχρονισμένο με το server
• Κάθε ένα USB token έχει δικό του seed (S)
• O RSA Authentication server ξέρει το seed SY κάθε token που έχει
δοθεί στον χρήση Υ.
• Σε fixed intervals (πχ 30 secs) το token ενεργοποιείται και παράγει νέα
κλειδιά που τα στέλνει για εξουσιοδότηση στον server:
• HMAC (Sy||t) : t is the current interval
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-55

Αυθεντικοποίηση
Αυθεντικοποίηση – μέθοδος am5.publicKey
I’m Alice
R
Υπογραφή της Alice
ΚRA(R)
Alice Send me KUA Bob Alice Bob
ΚUA

Enemy Enemy
Απαίτηση για χρήση Δημοσίων Κλειδιών και Nonce R
 ΚUA ΚRA δημόσιο και ιδιωτικό κλειδί οντότητας Α, αντίστοιχα
Αδυναμίες  Forgery
 Ο Enemy μπορεί χρησιμοποιεί τα δικά του κλειδιά
 O Bob εκτελεί ΚUΕ(ΚRE(R)), ανακτά R και μπερδεύει την Alice με τον Enemy

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


3-56

Αυθεντικοποίηση
Αυθεντικοποίηση – μέθοδος am5.publicKey
I’m Alice
R
Υπογραφή της Alice
ΚRA(R)
Alice Send me KUA Bob Alice Bob
ΚUA

Enemy Enemy
Απαίτηση για χρήση Δημοσίων Κλειδιών και Nonce R
 ΚUA ΚRA δημόσιο και ιδιωτικό κλειδί οντότητας Α, αντίστοιχα Λύση;
Αδυναμίες  Forgery ΠΔΚ
 Ο Enemy μπορεί χρησιμοποιεί τα δικά του κλειδιά
 O Bob εκτελεί ΚUΕ(ΚRE(R)), ανακτά R και μπερδεύει την Alice με τον Enemy

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-57

Αυθεντικοποίηση
Αυθεντικοποίηση και Πιστοποιητικά Δημοσίου
Κλειδιού (ΠΔΚ)
 Προτάθηκε από Kohnfelder (1978)
 Τα Π.Δ.Κ. παράγονται από Έμπιστη Τρίτη Οντότητα (ΕΤΟ) ή
όπως αναφέρεται Certificate Authority (CA)
 Ένα πιστοποιητικό συσχετίζει την “ταυτότητα” ενός χρήστη
(identity) με public key
 Συχνά περιλαμβάνει πρόσθετες πληροφορίες, όπως χρόνος
εγκυρότητας, δικαιώματα χρήσης κοκ
 Τα περιεχόμενα του πιστοποιητικού υπογράφονται (signed)
από την έμπιστη ΕΤΟ (CA)

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


3-58

Αυθεντικοποίηση
Αυθεντικοποίηση και ΠΔΚ

 Το ΠΔΚ μπορεί να επαληθευτεί από οποιονδήποτε γνωρίζει το


public-key της CA
 Το ΠΔΚ παραδίδεται στο χρήστη και σχετίζεται με το
αντίστοιχο ιδιωτικό του κλειδί Έ
 Ένας χρήστης μεταβιβάζει το δημόσιο κλειδί του σε ένα άλλο
χρήστη με το να του μεταδώσει το ΠΔΚ του
 Χαρακτηριστικά
 Μόνο η CA μπορεί να δημιουργεί και να ανανεώνει ΠΔΚ
 Κάθε χρήστης μπορεί να λάβει ένα ΠΔΚ , να το διαβάσει και να
προσδιορίσει την ταυτότητα και το δημόσιο κλειδί του κατόχου του
 Κάθε χρήστης μπορεί να πιστοποιήσει ότι το ΠΔΚ δημιουργήθηκε από
την CA και δεν είναι πλαστό
 Κάθε χρήστης μπορεί να επαληθεύσει την ισχύ (π.χ., χρονική) του ΠΔΚ

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-59

Αυθεντικοποίηση
Αυθεντικοποίηση και ΠΔΚ KUCA: Public Key
KRCA: Private Key

CA
KUA
KUB
CA= EKR [KUA , IDA, Time1]
CA

CB= EKR [KUB , IDB, Time2]


CA
KUA: Public Key KUB: Public Key
KRA: Private Key KRB: Private Key

CA

Alice Bob

CB

Ο Χρήστης παράγει ζεύγος ιδιωτικού (KR) και δημόσιου (KU) κλειδιού


Ο Χρήστης απευθύνεται στην CA και υποβάλει το δημόσιο κλειδί του αιτούμενος ένα certficate

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


3-60

Αυθεντικοποίηση
Αυθεντικοποίηση και ΠΔΚ
CCA={EKRCA[KUCA , IDCA, TimeX] || KUCA || IDCA|| TimeX}
self-signed certificate
KUCA: Public Key
KRCA: Private Key

CA
KUA
KUB
CA= EKR {[KUA , IDA, Time1] || KUΑ || IDΑ|| Time1 }
CA

CB= EKR {[KUB , IDB, Time2] || KUB || IDB|| Time2}


CA
KUA: Public Key KUB: Public Key
KRA: Private Key KRB: Private Key

CA

Alice Bob

CB

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-61

Αυθεντικοποίηση
Αυθεντικοποίηση και ΠΔΚ
 Για τον χρήστη Α η CA παρέχει ένα ΠΔΚ της μορφής
 CA = EKRauth[KUA , IDA, T1]
 Ο χρήστης Α μπορεί να μεταβιβάσει το CA σε άλλο χρήστη, π.χ., Β
 Ο παραλήπτης Β λαμβάνει το CA και επαληθεύει την ταυτότητα και το
δημόσιο κλειδί του Α ως εξής:
 DKUauth[CA] = DKUauth[EKRauth[KUA , IDA, T1]] = (KUA , IDA, T1)
 Εφόσον το CA είναι αναγνώσιμο μόνο με χρήση του ιδιωτικού κλειδιού
της CA, επαληθεύεται ότι έχει δημιουργηθεί από την CA
 Τα στοιχεία KUA και IDA παρέχουν στον παραλήπτη την ταυτότητα και
το δημόσιο κλειδί του κατόχου του ΠΔΚ
 Το timestamp T1 επικυρώνει την ισχύ του ΠΔΚ, ενεργώντας ως
«ημερομηνία λήξης».
 «Ληγμένα» ΠΔΚ πρέπει να κρίνονται ανασφαλή

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


3-62

Αυθεντικοποίηση
Επιβεβαίωση υπογεγραμμένου Μ από Alice
 Βήμα 1. Η Alice υπογράφει το M: EKRA(H(M))
 Βήμα 2. Η Alice στέλνει σε Βοb: EKRA(H(M)),M,CA,IDCA
 Βήμα 3. O Bob περνάει το Μ, από την Η: Η(Μ)=h1
 Bήμα 4. Ο Βοb χρησιμοποιεί το CA: EKR {[KUA , IDA, Time1]}
CA
Λαμβάνει από το self-signed πιστοποιητικό της CA το δημόσιο κλειδί KUCA
DKU {EKR {[KUA , IDA, Time1]} }  εξαγάγει δημόσιο κλειδί της Alice: KUA
CA CA
 Bήμα 5. Επιβεβαιώνει το EKRA(H(M)): DKUA(EKRA(H(M)))= H(M) =h2
 Bήμα 6. Aν h2 == h1 τότε το Μ έρχεται από Alice

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

Πιστοποιητικά Δημοσίου Κλειδιού 3-63

Σκοπός Πιστοποιητικού

Χαρακτηριστικά πιστοποιητικών που παράγονται από CA:


 Πιστοποιεί το δημόσιο κλειδί της οντότητας που κατέχει το
αντίστοιχο ιδιωτικό κλειδί
 Καμία ανάγκη για προστασία πιστοποιητικών
 Κάθε χρήστης με πρόσβαση στο δημόσιο κλειδί της CA (KUaut)
μπορεί να ανακτήσει το δημόσιο κλειδί του χρήστη που
συναλλάσσεται
 Κρυπτογραφεί
 Αυθεντικοποιεί

 Καμία οντότητα, πλην της CA, δεν έχει τη δυνατότητα να


τροποποιήσει ένα πιστοποιητικό χωρίς αυτό να μη γίνεται
αντιληπτό.
 Ένας χρήστης μπορεί να έχει πλέον του ενός πιστοποιητικά
(ένα για κάθε ζεύγος KUA , KRA)
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22
Πιστοποιητικά Δημοσίου Κλειδιού 3-64

Ρ όλος CA

 Συσχέτιση οντότητας με Public Key.


 Αυθεντικοποιεί την οντότητα που κατέχει το
δημόσιο κλειδί ..... και ότι κατέχει το αντίστοιχο
ιδιωτικό
 Πρόβλημα : Μεγάλη Κοινότητα Χρηστών
• Η CA μπορεί να αποτελέσει bottleneck
 Λύση: Πολλαπλές CA
• Κάθε μία παράγει πιστοποιητικά για ένα τμήμα της
κοινότητας
• Πλεονέκτημα έναντι μίας Authority
 Νέο πρόβλημα:
• Χρήστες με πιστοποιητικά από διαφορετικές CA
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

Πιστοποιητικά Δημοσίου Κλειδιού 3-65

Διαπιστοποίηση

CAX CAY
KUB
KUA

CA= EKRx[KUA , IDA, Time1] CB= EKRy[KUB , IDB, Time2]

CA
A B
CB

A ανάκτησε certificate από CA Χ.


B ανάκτησε certificate από CA Υ.
Αν ο A «δεν γνωρίζει» το public key της Υ, του είναι άχρηστο το certificate του B.
Αν ο Β «δεν γνωρίζει» το public key της Χ, του είναι άχρηστο το certificate του Α.

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


Πιστοποιητικά Δημοσίου Κλειδιού 3-66

Διαπιστοποίηση
KUΧ
CΧ =EKRy[KUΧ , IDΧ, Time3]
CΥ =EKRx[KUΥ , IDΥ, Time4]

CAX CAY
KUB
KUA CY

KUΥ
CB= EKRy[KUB , IDB, Time2]
CA= EKRx[KUA , IDA, Time1]

CA
A B
CB

Ο A γνωρίζει το public key του X


Δια-πιστοποίηση CAs
Ο A μπορεί να ανακτήσει το certificate του Υ (CY) signed by X
Οι CAs ανταλλάσσουν τα public keys τους O A μπορεί να ανακτήσει το δημόσιο κλειδί του Y που περιέχεται
Κάθε CA πιστοποιεί τo public key της άλλης CΑ στο πιστοποιητικό CY
O A διαθέτει το πιστοποιητικό του B (CB, issued by Υ)
Άρα μπορεί να ανακτήσει το δημόσιο κλειδί του Β.

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

Πιστοποιητικά Δημοσίου Κλειδιού 3-67

Διαπιστοποίηση
KUΧ
CΧ =EKRy[KUΧ , IDΧ, Time3]
CΥ =EKRx[KUΥ , IDΥ, Time4]

CAX CAY
KUB
KUA CY

KUΥ
CA= EKRx[KUA , IDA, Time1] CB= EKRy[KUB , IDB, Time2]

CA
A B
CB

Σενάριο: Ο Α πρέπει να κρυπτογραφήσει μήνυμα Μ προς Β .....


DKUx[CY] DKUx[EKRx[[KUΥ , IDΥ, Time4]] KUΥ , IDΥ, Time4
DKUy[CB] DKUy[EKRy[[KUB , IDB, Time2]] KUB , IDB, Time2
C = MKUB mod n

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


Πιστοποιητικά Δημοσίου Κλειδιού 3-68

Διαπιστοποίηση. Ι εραρχική

Η Root CA (AUEB) υπογράφει το πιστοποιητικό


της CA DeptInfo
AUEB Root CA H CA DeptInfo υπογράφει το πιστοποιητικό της
CA MScIS
H CA MScIS υπογράφει το πιστοποιητικό της
οντότητας E1
DeptInfo DeptODE Ωστόσο, η οντότητα E1 χρησιμοποιεί το δημόσιο
κλειδί της Root CA (AUEB) για να επιζητήσει
την εγκυρότητα δημοσίου κλειδιού άλλης Ei στην
ιεραρχία
MScIS MScCS MBA execMBA
Η root CA αυτο-υπογράφει το πιστοποιητικό της
(self-signed)
( – ) H αξιοπιστία εξαρτάται από το ιδιωτικό
E1 EN κλειδί της Root CA
( – ) Μακροσκελείς αλυσίδες πιστοποίησης σε
μεγάλες ιεραρχίες`

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

Πιστοποιητικά Δημοσίου Κλειδιού 3-69

Διαπιστοποίηση. Ι εραρχική

Certs από CA
Trust Anchor CD1=EKRCA[KUD1 , IDD1]
CD2 =EKRCA[KUD2 , IDD2]
Πώς η root CA λειτουργεί ως trust anchor
CA CD3=EKRCA[KUD3 , IDD3]
CD4=EKRCA[KUD4 , IDD4] Α2 Α1 υπογεγραμμένο μήνυμα Μ:
Α2 Α1: EKRA2[M || IDA2] || IDA2 || D1
Α1 αναζητά δημόσιο κλειδί Α2
Α1 ανασύρει πιστοποιητικό CA2
To CA2 υπογεγραμμένο από ιδιωτικό κλειδί D1
D1 D2 D3 D4 Α1 αναζητά δημόσιο κλειδί D1
A1 ανασύρει πιστοποιητικό CD1
To CD1 υπογεγραμμένο από ιδιωτικό κλειδί root CA
την οποία όλοι εμπιστεύονται
A1 A2 B1 B2

Certs από D1
CA1=EKRD1[KUA1 , IDA1]
CA2 =EKRD1[KUA2 , IDA2]

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


Πιστοποιητικά Δημοσίου Κλειδιού 3-70

Διαπιστοποίηση. Δένδρα πολλαπλών ριζών


Οι δύο Root CAs δημιουργούν
πιστοποιητικά η μία για την άλλη

KUUoA
CUoA =EKRUoC[KUUoA , IDUoA]
CUoA
CUoC =EKRUoA[KUUoC , IDUoC]
AUEB UOA
CUoC
KUUoC

School of Science School of Health School of Science School of Health Science

di.aueb phys.aueb nurs.aueb pharm.aueb di.uoa phys.uoa nurs.uoa pharm.uoa

di.E1 di.EN di.E1 di.EN

Οι χρήστες που ανήκουν στην ιεραρχία με Root CA το UoA αποκτούν εμπιστοσύνη


στα πιστοποιητικά της ιεραρχίας με Root CA το AUEB, και τανάπαλιν.

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

Πιστοποιητικά Δημοσίου Κλειδιού 3-71

Χ .509 Πιστοποιητικά

 ITU-T recommendation X.509 (IETF PKIX)


 ISO 9495–2 το αντίστοιχο ISO standard
 Στηριζόμενο σε κρυπτογραφία δημοσίου κλειδιού και
πιστοποιητικά δημοσίου κλειδιού
 Σχήμα που αποτελείται από ένα σύνολο CA Servers με
καταλόγους
 ταυτοτήτων χρηστών, δημοσίων κλειδιών, πιστοποιητικών,
χρονοσημάνσεων
 Οι τελικοί χρήστες (υποκείμενα) δεν μπορούν να είναι CAs
 Ιεραρχική ή διμερής διαπιστοποίηση
 Το RSA συστήνεται για χρήση (δεν επιβάλλεται)
 Εφαρμογές: S/MIME, TLS/SSL, IPsec, SET
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22
Πιστοποιητικά Δημοσίου Κλειδιού 3-72

Χ .509 Δομή Πιστοποιητικού

 Τα ITU-T recommendations (X.500 Series) προσδιορίζουν μία


ιεραρχική δομή προσδιορισμού αντικειμένων
 Παγκόσμιας Εμβέλειας
Root

C=GR C=US C=GB

O=AUEB

OU=Dept. Of. Informatics Ένα Χ509 Distinguished Name (DN):


C=GR; O=AUEB; OU=Dept. Of. Informatics; CN= G.F. Marias

CN=G. F. Marias

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

Πιστοποιητικά Δημοσίου Κλειδιού 3-73

Χ .509 Δομή Πιστοποιητικού


v1, v2, v3
Ακέραιος, μοναδικός για την εκδότρια CA

Αλγόριθμος (π.χ., RSA, DSS, ECC) που χρησιμοποιείται


για υπογραφή του πιστοποιητικού από την CA (repeated)
Όνομα της εκδότριας CA (κατά X509 notation)
Περίοδος ισχύς
Όνομα της οντότητας (X509 notation) για την οποία εκδίδεται το πιστ.
Το δημόσιο κλειδί της οντότητας για την οποία
εκδίδεται το πιστοποιητικό, ο αλγόριθμος για χρήση
Ένα bit string που χρησιμοποιείται για να προσδιορίσει μοναδικά
τη CA και τον χρήστη αν το το όνομά τους χρησιμοποιείται ξανά

Υπογραφή από CA. Αφορά όλα τα πεδία. Υπογράφει τη


σύνοψη και περιέχει τον αλγόριθμο που χρησιμοποιείται
για υπογραφή του πιστοποιητικού

Network security essentials (International edition), William Stallings, Prentice-Hall, 2002. ISBN: 0131202715

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


Πιστοποιητικά Δημοσίου Κλειδιού 3-74

Χ .509 Πιστοποιητικό

Version: v3
Serial Number: 02:41:00:00:16
Signature Algorithm: SHA1 With RSA Encryption
Issuer: CN=AUEB_CA, OU=Dept. Of. Informatics, O= AUEB, C=GR
Validity:
Not Before: Dec 5 18:39:01 2019
Not After: Dec 5 18:39:01 2021
Subject SN: CN=G.F. Marias, OU=Dept. Of. Informatics, O= AUEB, C=GR
Subject Public Key Info:
Algorithm: RSA Encryption
Public Key:
Modulus: 00:c2:29:01:63:a1:fe:32:ae:0c:51:8d:e9:07:6b:02:fe:ec:6d:0e:cc:95:4b:dc:0a:4b:0b:31:a3:1a:e1:
68:1f:d8:0b:b7:91:fb:f7:fd:bd:32:ba:76:01:45:e1:7f:8b:66:cd:7e:79:67:8d:48:30:2a:09:48:4c:9b:c7:98:d2:b
3:1c:e9:54:2c:3c:0a:10:b0:76:ae:06:69:58:ac:e8:d8:4f:37:83:c3:f1:34:02:6d:9f:38:60:6f:5e:54:4f:71:c7:92:
28:fb:0a:b3:44:f3:1a:a3:fe:99:f4:3f:d3:12:e2:f8:3b:03:65:33:88:9b:67:c7:de:88:23:90:2b
Public Exponent: 65537
Extensions:
Certified Usage: SSL Client
Signature:
Algorithm:SHA2 With RSA Encryption
Signature:2d:76:3f:49:5b:53:3a:c5:02:06:a3:67:6d:d9:03:50:57:7f:de:a7:a9:cd:69:02:97:6f:66:6a:7f:95:ea
:89:75:7a:fc:b0:26:81:fc:33:bb:60:e8:f7:73:77:37:f8:8a:04:3b:fc:c1:3e:42:40:3d:58:16:17:7e:47:35:1c:73:5
a:ab:72:33:c3:f5:2b:c6:eb:b5:39:52:82:c6:3e:e1:38:c6:39:8b:ee:e3:9f:b3:b9:29:42:0d:11:a5:79:af:6d:3a:f8
:a6:ba:d0:9c:55:48:0d:75:91:05:0b:47:67:98:32:f3:2d:2e:49:ed:22:ab:28:e8:d6:96:a1:9b

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-75

Αρχιτεκτονικές CSI
Χ .509 Ανάκληση Πιστοποιητικών
Certificate R evocation Lists

 Λίστα ανακληθέντων πιστοποιητικών


 Black-list
 Απαντά στην ανάγκη για επαλήθευση εγκυρότητας πιστοποιητικών
 Εκδίδεται και υπογράφεται από CA
 που έχει εκδώσει και υπογράψει τα αντίστοιχα πιστοποιητικά
 Εκτενής
 Περικλείει όλα τα πιστοποιητικά που έχουν ανακληθεί (από το πρώτο
ανακαλούμενο ...)
 Αναφέρονται οι ημερομηνίες έκδοσης και επόμενης έκδοσης
 Περιοδική ή Event-driven έκδοση
 Σχήμα όχι request-response

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


3-76

Αρχιτεκτονικές CSI
Χ .509 Ανάκληση Πιστοποιητικών
Certificate R evocation Lists

Αλγόριθμος (π.χ., RSA, DSS, EC) που χρησιμοποιείται


για υπογραφή από την CA (repeated)
Όνομα της εκδότριας CA (κατά X509 notation)
Ημερομηνία έκδοσης CRL

Ημερομηνία έκδοσης επόμενης CRL


Ακέραιος, μοναδικός για την εκδότρια CA
Ημερομηνία ανάκλησης

Υπογραφή από CA. Αφορά όλα τα πεδία. Υπογράφει τη


σύνοψη και περιέχει τον αλγόριθμο που χρησιμοποιείται
για υπογραφή του πιστοποιητικού

Network security essentials (International edition), William Stallings, Prentice-Hall, 2002. ISBN: 0131202715

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-77

Αρχιτεκτονικές CSI
Χ .509 Ανάκληση Πιστοποιητικών
Certificate R evocation Lists – Αδυναμίες

 Μεγάλες λίστες:
 δυσκολία επαλήθευσης
 δυσκολία εύρεσης συγκεκριμένου πιστοποιητικού (SN)
 ανάκτηση μεγάλων λιστών πρόβλημα σε δίκτυα χαμηλών
ρυθμών μετάδοσης
 Προσφατότητα κατάστασης πιστοποιητικού
 Λίστες ανακοινώνονται κατά το δοκούν
 όχι κατά-απαίτηση
 Λίστες ανακοινώνονται σε ένα δημόσιο τόπο
 bottleneck
 Dos
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22
3-78

Αρχιτεκτονικές CSI
Χ .509 Κατάσταση Πιστοποιητικών
Online Certificate Status P rotocol – OCSP

 Πρωτόκολλο για επαλήθευση πληροφοριών κατάστασης


πιστοποιητικού (Certificate Status Information, CSI) σε
πραγματικό χρόνο
 Χωρίς χρήση CRLs
 Περισσότερο πρόσφατη πληροφορία κατάστασης από CRLs
 Ένας OCSP client εκδίδει και στέλνει αίτηση αναφοράς
κατάστασης πιστοποιητικού σε έναν OCSP responder
 Μέχρι να λάβει απάντηση αναστέλλει την αποδοχή ενός
πιστοποιητικού
 Το πρωτόκολλο περιγράφει τα μηνύματα που
ανταλλάσσονται μεταξύ OCSP client και OCSP responder για
την αίτηση και απάντηση αναφοράς κατάστασης
 RFC2560, 1999
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-79

Αρχιτεκτονικές CSI
Χ .509 Κατάσταση Πιστοποιητικών
OCSP . Οντότητες

1) H CA που εξέδωσε το πιστοποιητικό OCSP


2) Ένας Trusted Responder του οποίου το Responder OCSP_Res:= EKROR[Status(CA)]
public key είναι αποδεκτό από τον Client
3) Ένας Authorized Responder που κατέχει
ένα certificate που εκδόθηκε από την CA, το
οποίο αναφέρει ρητά ότι ο Responder
μπορεί να εκδίδει OCSP responses εκ
μέρους της CA

OCSP_Req.Status(CA)

OCSP
A CA
Client
Certificate Relying
Subject Party

Google Chrome, Firefox, Opera, Internet Explorer implement Online Certificate Status Protocol (OCSP)
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22
3-80

Access Control

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-81

Access Control

Εφαρμόζεται μετά την επιτυχή αυθεντικοποίηση


Στόχοι:
 Έλεγχος κάθε απόπειρας πρόσβασης
 Επιβολή του ελάχιστου προνομίου
 Επαλήθευση αποδεκτής χρήσης
 Καταγραφή ελέγχου (audit logging) για την
παρακολούθηση των προσβάσεων

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


3-82

Access Control

Μέθοδοι Υλοποίησης

Access control directory


Access control matrix
Access control list
Procedure-oriented access control
Role-based access control

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-83

Access Control
Access Control Directory

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


3-84

Access Control
Access Control Matrix

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

3-85

Access Control
Access Control List

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


4-1

Ασφάλεια Δικτύων
και
Δικτυακές Επιθέσεις

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-2

Περιεχόμενα
Εισαγωγικά στα Δίκτυα
Foot-printing
 Αναγνώριση Στόχου
Port scanners
 Σάρωση
 Net Attacks
 Δικτυακές Επιθέσεις

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


4-3

Περιεχόμενα
Εισαγωγικά στα Δίκτυα
Foot-printing
 Αναγνώριση Στόχου
Port scanners
 Σάρωση
Net Attacks
 Δικτυακές Επιθέσεις

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-4

Εισαγωγικά στα Δίκτυα


IP Header

Η μορφή της επικεφαλίδας του πακέτου IPv4.

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


4-5

Εισαγωγικά στα Δίκτυα


IP Header
 Κατάτμηση πακέτων
 Σε κάθε τύπο δικτύου το μέγιστο της πληροφορίας που μπορεί να
ενθυλακωθεί σ’ ένα πλαίσιο μεταφοράς είναι προκαθορισμένο.
 ορίζεται ως Maximum Transmission Unit (MTU)
• Ethernet MTU : 1500 bytes
• FDDI MTU : 4500 bytes.
 Εάν το μήκος του πακέτου που θέλει να αποστείλει το IP είναι μεγαλύτερο
από τη MTU του δικτύου, τότε κατάτμηση και συναρμολόγηση του
πακέτου IP
• Στον αποστολέα το πακέτο τεμαχίζεται σε τόσα κομμάτια όσα υπαγορεύει το
MTU του δικτύου.
• Αυτά μεταφέρονται ως αυτοδύναμα διαμέσου του δικτύου
• Στον παραλήπτη συναρμολογούνται, επανασυνθέτοντας την αρχική πληροφορία

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-6

Εισαγωγικά στα Δίκτυα


IP Header
 Αυτοδύναμο πακέτο IP από τον
Α προς Β.
 Μήκους 1420 bytes
 1400 bytes δεδομένα και 20
bytes επικεφαλίδα
 Σύνδεσμος – ζεύξη
Ethernet:MTU:1500,
FDDI:MTU:4500, PtP:MTU:512
 Στο κάτω σχήμα διακρίνονται
τα αυτοδύναμα πακέτα που
διαμορφώνονται

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


4-7

Εισαγωγικά στα Δίκτυα


IP Header
 Πεδία κατάτμησης
 Αναγνώριση ταυτότητας (Id)
 Μοναδικός προσδιοριστής πακέτου που
ανήκει το τεμάχιο
 Δυαδικοί δείκτες (Flags).
 Reserved
• Bit 1: 0 = May Fragment, 1 = Don't
Fragment.
• Bit 2: 0 = Last Fragment, 1 = More
Fragments
 Μετατόπιση τεμαχίου (Offset)
 απόσταση των δεδομένων του τεμαχίου
από την αρχή των δεδομένων, όπως
αυτά υπήρχαν στο αρχικό πακέτο IP.

(α)

(β)
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-8

Εισαγωγικά στα Δίκτυα

ARP
 αντιστοίχηση της διεύθυνσης δικτύου του προορισμού με τη
φυσική του (Ethernet) διεύθυνση
 Ύπαρξη πίνακα
αντιστοίχησης
 Ειδικό πακέτο εκπομπής –
απόκρισης
 Χρόνος ζωής εγγραφής
~15min

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


4-9

Εισαγωγικά στα Δίκτυα


 Τα πρωτόκολλα RARP, BOOTP και DHCP
 κάθε κόμβος σ’ ένα δίκτυο προσδιορίζεται μοναδικά από τη
διεύθυνση δικτύου του (μεταβλητή του λειτουργικού)
• Η απόδοση τιμής στη διεύθυνση δικτύου
– Στατικά ή δυναμικά
 Το αντίστροφο πρόβλημα του Προσδιορισμού Διεύθυνσης
 Συσκευές που δε διαθέτουν σκληρό δίσκο για αποθήκευση
μεταβλητών
• δικτυακός εκτυπωτής
 Κατά την εκκίνησή τους γνωρίζουν μόνο τη φυσική τους
διεύθυνση
• στο υλικό
 Δηλώνοντας τη φυσική διεύθυνση σε ειδικό εξυπηρετητή
λαμβάνουν τη διεύθυνση δικτύου που τους έχει εκχωρηθεί
(δυναμικά)
 Την αποθηκεύουν στη μνήμη τους
• μέχρι το τερματισμό της λειτουργίας τους

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-10

Εισαγωγικά στα Δίκτυα


 RARP
 Ίδια ιδέα με ARP
 Ωστόσο, την απάντηση της αίτησης για διεύθυνση IP την παρέχει ειδικός
εξυπηρέτης που διατηρεί πίνακα αντιστοίχησης

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


4-11

Εισαγωγικά στα Δίκτυα


 ICMP
 Μεταφορά μηνυμάτων ελέγχου
• Έλεγχος αν ένας εξυπηρέτης είναι ενεργός
• Έλεγχος δυνατότητας πρόσβασης σε ένα εξυπηρέτη προορισμό,
• Αναζήτηση πληροφοριών για τη μάσκα υποδικτύου που εφαρμόζεται
• κοκ
 Αναφορά λαθών/σφαλμάτων
• Ένα πακέτο μπορεί να μη φθάσει στον προορισμό του για πολλούς λόγους:
– ενδιάμεσος δρομολογητής, σύνδεσμος διαδρομής ή παραλήπτης κόμβος τέθηκαν εκτός
λειτουργίας,
– οι πίνακες δρομολόγησης των ενδιάμεσων κόμβων είναι λανθασμένοι
– ένα τεμάχιο του πακέτου αλλοιώθηκε κατά τη μεταφορά
– ο απαριθμητής του “χρόνου ζωής πακέτου” μηδενίστηκε
– κοκ

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-12

Εισαγωγικά στα Δίκτυα


 ICMP
 Τύπος. προσδιορίζει τύπο μηνύματος
 Κωδικός. παρέχει επιπλέον πληροφορίες για τον τύπο του
μηνύματος
 Άθροισμα ελέγχου.
• μήνυμα ICMP αναφέρει την αδυναμία πρόσβασης ενός προορισμού
(τύπος = 3), επειδή η επικοινωνία με το δίκτυο προορισμού είναι
απαγορευμένη (κωδικός = 9)

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


4-13

Εισαγωγικά στα Δίκτυα

 TCP – Θύρες

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-14

Εισαγωγικά στα Δίκτυα


 TCP – Θύρες

 Οι πρώτες 1023 θεωρούνται γνωστές


• Ορίζονται από Internet Assigned Numbers Authority (IANA) Web
 Ports 20 και 21
• File Transfer Protocol (FTP)
 Port 25
• Simple Mail Transfer Protocol (SMTP)
• E-mail servers ακούει στην 25
 Port 53
• Domain Name Service (DNS)
 Port 80
• Hypertext Transfer Protocol (HTTP)
 Port 110
• Post Office Protocol 3 (POP3)

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


4-15

Εισαγωγικά στα Δίκτυα

 TCP Μήνυμα

 Πεδία για
• υλοποίηση μηχανισμών
εγγυημένης παράδοσης
• Έναρξης σύνδεσης
• Διαχείριση σύνδεσης
• Επιβεβαίωση λήψης
• εμβόλιμη - piggyback

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-16

Εισαγωγικά στα Δίκτυα

Κάθε flag του ενός bit


 0 (off) ή 1 (on)
Έξι flags
 SYN: synchronize flag
 ACK: acknowledge flag
 PSH: push flag
 URG: urgent flag
 RST: reset flag
 FIN: finish flag

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


4-17

Εισαγωγικά στα Δίκτυα

 TCP χειραψία τριών βημάτων

 Εγκαθίδρυση σύνδεσης
• Έναρξης σύνδεσης
• SYN
• Επιβεβαίωση λήψης
• ACK εμβόλιμο – piggyback
• Επιβεβαίωση επιβεβαίωσης

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-18

Εισαγωγικά στα Δίκτυα


 Domain Name Service (DNS)
 Θυμάται κανείς την IP διεύθυνση της ιστοσελίδας του AUEB;
 H υπηρεσία DNS αντιστοιχεί μία διεύθυνση IP σε μία συμβολική διεύθυνση
• Fully Qualified Domain Name (FQDN)
• Αλλά και το αντίστροφο
 Το Internet έχει χωριστεί σε διάφορες περιοχές (domains).
• αντιστοιχούν είτε σε χώρα (π.χ., .gr για την Ελλάδα, .dk για την Δανία), είτε
• σε τύπο οργανισμού (π.χ., .edu για εκπαιδευτικό οργανισμό, .com για εταιρεία).

 Σε κάθε ζώνη υπάρχουν είτε συστήματα


είτε “υποζώνες”.
 Αυτό συνεχίζεται και μορφοποιεί
δενδρική δομή ζωνών Διαδικτύου
 Στα φύλλα του δένδρου υπάρχουν όλα
τα συστήματα του Διαδικτύου
 Δύο τύποι servers:
 Authoritative και Caching

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


4-19

Εισαγωγικά στα Δίκτυα


DNS
Απαραίτητο για την ορθή λειτουργεία του
διαδικτύου
Αν το DNS μιας ζώνης αποτύχει συνδέσεις
προς κόμβους και hosts den γίνονται
Υψηλή διαθεσιμότητα
• Σε κάθε ζώνη
• Κάθε nameserver καλείται primary nameserver
• Εχει τουλάχιστον ένα secondary nameserver
• Ο δευτερεύον κρατά αντίγραφο του αρχείου
ονομάτων της ζώνης
– Περιοδικά επερωτά τον primary nameserver για αλλαγές

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-20

Εισαγωγικά στα Δίκτυα

DNS maps symbolic names to numeric IP addresses


(for example, www.cs.cornell.edu ↔ 128.84.154.137)

root & edu


www.cs.cornell.edu
DNS server

cornell.edu
Local DNS server
Client DNS recursive
resolver
cs.cornell.edu
DNS server

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


4-21

Περιεχόμενα
Εισαγωγικά στα Δίκτυα
Foot-printing
 Αναγνώριση Στόχου
Port scanners
 Σάρωση
Net Attacks
 Δικτυακές Επιθέσεις

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-22

Foot-printing
Συλλέγονται πολύτιμες πληροφορίες
 Η άγνωστη οντότητα (εταιρία / οργανισμός στόχος)
 Γίνεται όλο και πιο γνωστή
Οι συλλεγόμενες πληροφορίες σχετίζονται με τις
 τεχνολογίες και περιβάλλον λειτουργίας του στόχου
 λειτουργικά χαρακτηριστικά της ασφάλειας που
εφαρμόζει
 δικτυακή δομή, δ/νσεις και υπηρεσίες
Απαιτούνται εργαλεία, τεχνικές & γνώση

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


4-23

Foot-printing
 Πληροφορίες
 Αρχιτεκτονική συστήματων
 Διευθύνσεις ΙΡ συστημάτων προσβάσιμων
μέσω Internet
 Συλλογή πρόσθετων πληροφοριών (ονόματα
χρηστών και ομάδων, πληροφορίες SNMP)
 Domain names
 DNS hostnames

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-24

Foot-printing
 Πληροφορίες – τρόποι άντλησης
 Ιστότοπο (web site) της εταιρείας/οργανισμού
 Σε τεχνολογικά forums και μηχανές αναζήτησης

 Στα σκουπίδια !!!!


 Kοινωνική μηχανική
 Στα social media (όνομα διαχειριστή, εταιρεία, έκδοση λειτουργικού)
 Δυσαρεστημένοι εργαζόμενοι
 Sniffing σε ασύρματα κανάλια

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


4-25

Foot-printing
Tools
 Netcat (nc)
• Unix utility
• Official site: http://nc110.sourceforge.net/
• computer networking utility
– εγραφή σε ή ανάγνωση από network connections (TCP or UDP)
– Built-in port-scanning capabilities
– Π.χ. εντολή ελέγχου αν η UDP ports (-u) 80-90 είναι ανοικτές στον
192.168.0.1 :
• nc -vu 192.168.0.1 80-90

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-26

Περιεχόμενα
Εισαγωγικά στα Δίκτυα
Foot-printing
 Αναγνώριση Στόχου
Port scanners
 Σάρωση
Net Attacks
 Δικτυακές Επιθέσεις

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


4-27

Port scanners
 Πληροφορούμαστε για τις υπηρεσίες /εφαρμογές που είναι
ενεργοποιημένες στον host-target
 μέθοδος αποτελεσματική για μικρά και μεσαίου μεγέθους δίκτυα
κλάσης B ή C
 Στόχος: να προσδιοριστεί vulnerability
 Ώστε να επιτεθούμε με exploit
 Ανίχνευση δ/νσεων όλων των θυρών
 Όχι μόνο των γνωστών
 Αποτελέσματα ανίχνευσης
 Open ports
 Closed ports
 Filtered ports
 Πρωτόκολλα
 ICMP & TCP

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-28

Port scanners
 Με ICMP μπορούμε να εντοπίσουμε ενεργές IP κυρίως
 Κατά τη σάρωση στέλνονται διάφοροι τύποι ICMP πακέτων
 Απουσία απάντησης : το σύστημα στόχος δεν υπάρχει ή δε
βρίσκεται σε λειτουργία
Τools
 Traceroute
 Ping

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


4-29

Port scanners
 SYN scanning ή half-open
scanning
 Αίτηση – απόκριση – τερματισμός
 Ο host είναι έτοιμος αλλά δεν
ολοκληρώνει ο client την TCP
σύνοδο
 O client στέλνει TCP SYN στην
προς διερεύνηση θύρα
 Αν ο server αποκριθεί με
SYN/ACK τότε η θύρα ανοικτή

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-30

Port scanners
 TCP scanning ή connect
scanning
 Αίτηση – απόκριση – ολοκλήρωση
 O client στέλνει TCP SYN στην
προς διερεύνηση θύρα
 Αν ο server αποκριθεί με
SYN/ACK τότε η θύρα ανοικτή
 Αν ο server δεν αποκριθεί με
SYN/ACK τότε η θύρα κλειστή
 Ο Client ολοκληρώνει τη
εγκατάσταση συνόδου με ACK

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


4-31

Port scanners
TCP FIN scanning
 Όταν υπάρχει firewall
 Closed ports αποκρίνονται σε FIN packet με RST packet
 open ports αγνοούν το FIN packet
 Άρα μπορούμε να προσδιορίσουμε ποιες πόρτες είναι
ανοικτές και ποιες κλειστές
TCP Null scanning
 Ο επιτιθέμενος θέτει 0 (απενεργοποιεί) όλες τις
σημάνσεις του TCP fragment.
 το σύστημα-στόχος οφείλει να αποκριθεί με ένα πακέτο
RST για όλες τις κλειστές θύρες.

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-32

Port scanners
TCP Xmas Tree scanning
 Ο επιτιθέμενος θέτει 1 (ενεργοποιεί) όλα τα flags
 το σύστημα-στόχος οφείλει να αποκριθεί με ένα πακέτο
RST για όλες τις κλειστές θύρες.
TCP ΑCK scanning
 Όταν ένα out-of-sync TCP ACK segment σταλεί σε μία
κλειστή port, η αναμενόμενη απόκριση είναι ένα RST.
 Οι Stateful firewalls απορρίπτουν out-of-sync ACK
segments, άρα δεν αποκρίνονται.
 Επομένως συμπεράνουμε ότι η πόρτα είναι filtered από
firewall

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


4-33

Port scanners
TCP Window scanning
 Αναλύει port status και τύπο operating system.
 Χρησιμοποιεί ACK scanning αλλά εξετάζει και το TCP
Window Size που λαμβάνεται με τα RST packets
 Έτσι προβαίνει σε συμπεράσματα εφόσον όλα τα
λειτουργικά δεν επιστρέφουν την ίδια τιμή.
 Ορισμένα OS θα δώσουν
• θετικό μέγεθος TCP παραθύρου όταν ένα πακέτο RST στέλλεται
από μια ανοιχτή θύρα
• αρνητική τιμή όταν το RST στέλλεται από κλειστή

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-34

Port scanners
UDP port scanning
 Αν ένα UDP packet σταλεί σε μια κλειστή θύρα το
σύστημα αποκρίνεται με ICMP port unreachable μήνυμα.
• Άρα απουσία απόκρισης : port is open.
 Εναλλακτικά: Αποστολή application-specific UDP packets
ελπίζοντας σε απόκριση
• Π.χ., DNS query στην port 53 θα παράξει απόκριση αν ο DNS
server τρέχει στον host
RPC port scanning / Κυρίως σε linux/unix
 Νε χρήση port scanner (nmap). RPC datagram στέλλεται
σε λίστα θυρών UDP και η απόκριση καταγράφεται.
 Συγκεκριμένοι τύποι απαντήσεων μπορεί να είναι
ενδεικτικοί γνωστών υπηρεσιών RPC
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22
4-35

Port scanners
Port-Scanning Tools

Nmap
Genlist
Zenmap
Nessus

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-36

Port scanners
Port-Scanning Tools
Nmap
 open source tool
 network exploration και security auditing
 Εργαλείο για security audits
Λειτουργίες – τι εξακριβώνει
 hosts are available on the network,
 services (application name and version) those hosts are
offering
 operating systems (and versions) are running
 type of packet filters/firewalls are in use
 και άλλα

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


4-37

Port scanners
Port-Scanning Tools
Nmap – παράδειγμα

nmap -sS -P0 -p 445 <ip_to_scan>

FLAGS:
Stealth scan (-sS): does not complete the TCP connection.
This is fairly fast and unobtrusive.
-P0: tells nmap NOT to ping the IP (adds to stealth).
-p: specifies the port or a port range.

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-38

Port scanners
Port-Scanning Tools
 Zenmap
 Nmap με GUI
 Linux, Windows, Mac OS X
 Free & open source
 Απλοποιεί χρήση του Nmap
 Πρόσθετα χαρακτηριστικά:
• Συχνά χρησιμοποιημένες
σαρώσεις μπορούν να
αποθηκευτούν ως προφίλ ώστε
να είναι εύκολο να τρέξουν κατ’
επανάληψη.
• Αποτελέσματα σαρώσεων
μπορούν να αποθηκευτούν σε μια
βάση και να προβληθούν
αργότερα

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


4-39

Περιεχόμενα
Εισαγωγικά στα Δίκτυα
Foot-printing
 Αναγνώριση Στόχου
Port scanners
 Σάρωση
 Net Attacks
 Δικτυακές Επιθέσεις

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-40

Επιθέσεις σε επίπεδο Δικτύου


MAC Flooding
 Επίθεση τύπου Eavesdropping & DOS
 Ενημέρωση πολλών αλλαγών MAC-IP Ethernet
switch
συσχέτισης από Enemy A

• O Enemy λειτουργεί στην device Ε που


έχει συνδεθεί με Switch E

• Ο Enemy στέλνει πολλαπλά ARPs


• To CAM γεμίζει B
 Ανάδραση του switch;
• Καμία  αγνοούνται όλες οι νέες συσκευές
που θέλουν να συνδεθούν Device/IF MAC
A 01:0e:82:00:12:01
• Γυρνά σε λειτουργία bridging B 01:0e:82:00:12:02
E 01:0e:82:00:12:04
– broadcast to any interface E 01:0e:82:00:12:07
– άρα και το sniffing ευκολότερο (επόμενες E
….
01:0e:82:00:12:12
διαφάνειες)
Content Addressable Memory (CAM) table
ή Switch Table index
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22
4-41

Επιθέσεις σε επίπεδο Δικτύου


 ARP spoofing
 Ή ARP poisoning ή ARP Poison Routing (APR)
 Επίθεση σε Ethernet
• wired or wireless network
 Ο attacker υποκλέπτει (sniff) data frames στο LAN, και
• modify την κίνηση, είτε
• Σταματάει την κίνηση (denial of service).
 Τεχνική: αποστολή fake, ή "spoofed" ARP μηνυμάτων σε LAN
• Σχετίζουν την MAC address του attacker με μία IP address ενός
άλλου κόμβου (ή του default gateway)
• Κάθε πακέτο προς την IP address θα αποσταλεί λανθασμένα στον
attacker o οποίος
– Επιλέγει την προώθηση της κίνησης στο πραγματικό default gateway (passive
sniffing)
– Επιλέγει την τροποποίηση τους πριν την προώθηση forwarding it (man-in-the-
middle)
 Ο attacker μπορεί να υποβάλει DoS attack απέναντι σε
στοχοποιημένο host με το να αναθέσει nonexistent MAC
address στην IP address του θύματος

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-42

Επιθέσεις σε επίπεδο Δικτύου


 ARP spoofing σε περιβάλλον switching - BEFORE
IP 191.161.10.10
MAC 01:0e:82:00:12:01

Ethernet
A switch

ARP table θύρα MAC addr


IP MAC 1
191.161.10.20 01:0e:82:00:12:02 IP 191.161.10.30 1 MACA
191.161.10.30 01:0e:82:00:12:00 MAC 01:0e:82:00:12:00
2 MACE
E
2 3 MACB
IP 191.161.10.20 3
MAC 01:0e:82:00:12:02

ARP table
IP MAC
191.161.10.10 01:0e:82:00:12:01
191.161.10.30 01:0e:82:00:12:00

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


4-43

Επιθέσεις σε επίπεδο Δικτύου


 ARP spoofing σε περιβάλλον switching - ATTACK
IP 191.161.10.10
MAC 01:0e:82:00:12:01

Ethernet
A
switch
ARP table θύρα MAC addr
IP MAC 1
191.161.10.20 01:0e:82:00:12:02 IP 191.161.10.30 1 MACA
191.161.10.30 01:0e:82:00:12:00 MAC 01:0e:82:00:12:00
2 MACE
E
2 3 MACB
IP 191.161.10.20 3
MAC 01:0e:82:00:12:02

B Spoofed ARP packet


IP 191.161.10.20
corresponds to
Spoofed ARP packet
ARP table MAC 01:0e:82:00:12:00
IP 191.161.10.10
IP MAC corresponds to
191.161.10.10 01:0e:82:00:12:01 MAC 01:0e:82:00:12:00
191.161.10.30 01:0e:82:00:12:00

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-44

Επιθέσεις σε επίπεδο Δικτύου


 ARP spoofing σε περιβάλλον switching - AFTER
IP 191.161.10.10
MAC 01:0e:82:00:12:01

Ethernet
A
switch
ARP table θύρα MAC addr
IP MAC 1
191.161.10.20 01:0e:82:00:12:00 IP 191.161.10.30 1 MACA
191.161.10.30 01:0e:82:00:12:00 MAC 01:0e:82:00:12:00
2 MACE
E
2 3 MACB
IP 191.161.10.20 3
MAC 01:0e:82:00:12:02
Relay index
B IP MAC
191.161.10.10 01:0e:82:00:12:01
191.161.10.20 01:0e:82:00:12:02
ARP table
IP MAC
191.161.10.10 01:0e:82:00:12:00
191.161.10.30 01:0e:82:00:12:00

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


4-45

Επιθέσεις σε επίπεδο Δικτύου


 ARP spoofing σε περιβάλλον switching - EFFECT
IP 191.161.10.10 IP datagram
MAC 01:0e:82:00:12:01
Dest IP: 191.161.10.20 Dest MAC: 01:0e:82:00:12:00
Ethernet
A
switch
ARP table
IP MAC θύρ MAC addr
IP 191.161.10.30 1
191.161.10.20 01:0e:82:00:12:00 α IP add
191.161.10.30 01:0e:82:00:12:00 MAC 01:0e:82:00:12:00
1 MACA IPA
E 2 MACE IPE
2
IP 191.161.10.20 3 3 MACB IPB
MAC 01:0e:82:00:12:02

B
Relayed IP datagram
ARP table
Dest IP: 191.161.10.20 Dest MAC: 01:0e:82:00:12:02
IP MAC
191.161.10.10 01:0e:82:00:12:00
191.161.10.30 01:0e:82:00:12:00 Κανένα άκρο δεν αντιλαμβάνεται τον ενδιάμεσο

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-46

Επιθέσεις σε επίπεδο Δικτύου


ARP spoofing – Γιατί συμβαίνει
 Μη αυθεντικοποιημένες αιτήσεις αλλαγής συσχέτισης
MAC-IP
 Μη αυθεντικοποιημένες αποκρίσεις σε αιτήματα ARP
• Ίδια αίτια και για MAC flooding
 Αποτέλεσμα
 Είτε relay κυκλοφορίας από Α σε Β και αντίστροφα
 Είτε relay επιλεκτικής κυκλοφορίας από Α σε Β και
αντίστροφα
 Είτε απόρριψη κυκλοφορίας από Α σε Β και
αντίστροφα
• DoS

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


4-47

Επιθέσεις σε επίπεδο Δικτύου


ARP spoofing – λύσεις
 open source: ArpON "Arp handler inspectiON".
• ARP handler που ανιχνεύει και μπλοκάρει ARP poisoning και
spoofing attacks
– static ARP inspection (SARPI) with DHCP
– dynamic ARP inspection (DARPI) without DHCP.
– http://arpon.sourceforge.net/

 DHCP snooping
• Με το DHCP κρατάμε ένα record των MAC addresses που
είναι συνδεδεμένες σε κάθε θύρα
• Έτσι μπορούμε να δούμε πότε εισάγεται ένα spoofed ARP
request
• CISCO

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-48

Επιθέσεις σε επίπεδο Δικτύου


IP packet sniffer
 promiscuous NIC reads all packets passing by
 can read all unencrypted data (e.g. passwords)
• e.g.: C sniffs B’s packets
• Popular tools: Wireshark (former Ethereal)
 Solutions:
• Αποστολή IP datagram σε άγνωστη IP addresses και αναμονή για
αναγνώριση DNS requests σε αυτές τις IP addresses
• Χρήση switched environment / VLAN
• Κρυπτογράφηση στο IP level ή SSL/TLS

Cloud Server A C

Computer Networking: A Top Down Approach src:B dest:A payload


Featuring the Internet, 2nd ed. J. Kurose, K. Ross
Addison-Wesley, 2002
B
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22
4-49

Επιθέσεις σε επίπεδο Δικτύου


IP address spoofing
 can generate “raw” IP packets directly from application, putting
any value into IP source address field
 receiver can’t tell if source is spoofed
• e.g.: C pretends to be B
 Solution: ingress filtering
• routers should not forward outgoing packets with invalid source
addresses (e.g., datagram source address not in router’s network)

C
Cloud Server A

src:B dest:A payload


Computer Networking: A Top Down Approach
Featuring the Internet, 2nd ed. J. Kurose, K. Ross
Addison-Wesley, 2002
B
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-50

Επιθέσεις σε επίπεδο Δικτύου


IP address spoofing – γιατί είναι
αποτελεσματικό;
 Επειδή κανείς δεν το ελέγχει !
 Ακόμα και αν το ελέγχουμε, πως ξέρουμε ότι μια IP
δ/νση είναι fake?
• Έλεγχος κοντά στην πηγή (ΙΡ source)
– Η IP address ανήκει στο network range (Ingress filtering)
• Έλεγχος μέσα στο δίκτυο (core)
– H route είναι σωστή για την δεδομένη ΙΡ source address
(Route-based filtering)

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


4-51

Επιθέσεις σε επίπεδο Δικτύου


IP address spoofing – έλεγχος
 Ingress filtering – επιτυχία
1. Είμαι ο Α και θέλω να
drop datagram at source network
στείλω IP datagram στον Β
E 2. Ο Α έχει IP src address που
R1 δεν ανήκει στο subnet μου.

R2

C
R3
Sw2 B

R4

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-52

Επιθέσεις σε επίπεδο Δικτύου


IP address spoofing – έλεγχος
 Ingress filtering – χωρίς αποτέλεσμα
1. Είμαι ο C και θέλω να
στείλω IP datagram στον Β
E 2. Ο C έχει IP src address που
R1 ανήκει στο subnet μου.

R2

C
R3
Sw2 B

R4

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


4-53

Επιθέσεις σε επίπεδο Δικτύου


IP address spoofing – έλεγχος
• traceback – based filtering

1. Είμαι ο B και θέλω να


E μάθω αν το IP datagram
έρχεται από C

C
B

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-54

Επιθέσεις σε επίπεδο Δικτύου


IP address spoofing – έλεγχος στο core
Route-based filtering
• Φιλτράρισμα βασισμένο στο “αναμενόμενο ” path
που κάποια πακέτα από κάποιο source address
1. Είμαι ο Α και θέλω να πρέπει να έχουν
στείλω IP datagram στον Β • Αν το traffic έρχεται από άλλο path, drop it
E
R1
2. To IP datagram έρχεται από
Α είναι από το υποδίκτυό μου;
R2 Αν είναι από R1 drop it
2
C 1
R3
Sw2 B

R4

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


4-55

Επιθέσεις σε επίπεδο Δικτύου


IP address spoofing
Ingress filtering vs route-based filtering
Λιγότερα filtering points στο route-based
filtering
• Processing/buffering/delay Κέρδη
route-based filtering
• Εφαρμογή στο 18% των core AS routers μπορεί
να αντιμετωπίσει το 90% των spoofed packets
– Όχι όμως οποιαδήποτε 18%
– Πρέπει να ορίζουν vertex cover στην AS topology
– smallest vertex cover: NP-hard problem
– Προσεγγιστικά: επέλεξε το 18% των best-connected nodes

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-56

Επίθεση Overlapping Fragment


Fragment 1
login: roger Fragment 2
ot\n rm -rf /

 Το πακέτο ανασυντάσσεται ως:


 login roger ot\n rm –rf/
ή
 login root\n rm –rf/

Χρήση Pattern & Statefull matching: Συνεχόμενα


Fragments με επικαλυπτόμενα offsets απορρίπτονται =
Inconsistent IP fragments

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


4-57

Επίθεση TCP retransmits

Packet 1 logi
Packet 2 n: ro
Packet 3 ger\n
Retransmit Packet 3 ot\n

Χρήση Pattern & Statefull matching: TCP retransmited


packets εκτός σειράς ACK+1 απορρίπτονται = Inconsistent
retransmits

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-58

Επιθέσεις σε επίπεδο Δικτύου


DNS cache poisoning
 Εισαγωγή στοιχείων σε Domain Name Server που δεν
προέρχονται από αυθεντικοποιημένες πηγές.
 Αυτό συμβαίνει λόγω:
• Λανθασμένου S/W
• misconfiguration των name servers
• Ανοικτή αρχιτεκτονική του DNS.
 Μόλις ο DNS server λάβει μη αυθεντικές info και τις
αποθηκεύει (caches) για αύξηση απόδοσης θεωρείται
poisoned
• Παρέχει non-authentic data στους clients

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


4-59

Επιθέσεις σε επίπεδο Δικτύου


DNS cache poisoning
 DNS responses are cached
• Quick response for repeated translations
• NS records identify name servers responsible for a domain
 DNS negative queries are cached
• Don’t have to repeat past mistakes (misspellings, etc.)
 Cached data periodically times out
• Lifetime (TTL) of data controlled by owner of data, passed
with every record

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-60

Επιθέσεις σε επίπεδο Δικτύου


DNS cache poisoning

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


4-61

Επιθέσεις σε επίπεδο Δικτύου


DNS cache poisoning
.
 Χρήση cryptographically-secure τυχαίους αριθμούς
για επιλογή
• Nonces : Μειώνει πιθανότητα επιτυχούς DNS attack
• Αλλά όχι με μεγάλη επιτυχία
Αδυναμία από τη χρήση αυξόντων αριθμών
0. Trudy creates her www.trudy.com domain – want to register on Alice’s
ISP’s DNS cache
1. Trudy look up for pc.trudy.com – to force this registration

Some time later ….


2. Trudy look up for antoherpc.trudy.com – to get ISP’s next seq.numner, n
3. Reply for antoherpc.trudy.com – carries ISP’s next seq.numner = n
4. Quick look up for bob.com from Trudy
5. Request for bob.com from ISP with seq.numner = n+1
6. Forger answer from Trudy: bob.com is on 42.9.9.9 seq.numner = n+1
7. Real answer is delayed and rejected since bob.com is already an entry

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-62

Επιθέσεις σε επίπεδο Δικτύου


DNS cache poisoning – λύσεις
 DNSSEC: χρήση ψηφιακών υπογραφών
• Υπογεγραμμένα με ΤΤΡ digital certificate
• Authenticity των requests

Α record: address
KEY record : Bob's public key.
SIG record : top-level com server's sign over (A) and (KEY)
records to verify their authenticity
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22
4-63

Επιθέσεις σε επίπεδο Δικτύου


 SYN Flooding
 Αποστολή πολλαπλών αιτήσεων
συγχρονισμού (SYN)
 Απόκριση (ACK) και αποδοχή (SYN)
εξυπηρέτη
 Αδράνεια επιτιθέμενου
 Πολλαπλά TCP pending requests
• Half open connections
 Αν υπάρχει Limit ή δεσμέυονται resources:
DOS
 SYN attack detection-prevention:
 Rate limiting
 SYN cookies
 Intermediate stations

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-64

DDoS Special Section

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


4-65

DDoS Attack

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-66

DDoS Attack

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


4-67

DDoS Attack
 Τι είναι η επίθεση DDoS
 Προσπάθεια να καταναλώσουμε πεπερασμένους πόρους, να
εκμεταλλευτούμε αδυναμίες στον σχεδιασμό λογισμικού ή στην
υλοποίηση του δικτύου
• κατανεμημένη επίθεση
• συγχρονισμένη επίθεση
 Ποιος είναι ο στόχος;
 Ο στόχος είναι η διαθεσιμότητα και η χρησιμότητα των υπολογιστικών
πόρων και των πόρων του δικτύου
 Τι επηρεάζουν οι επιθέσεις DDoS;
 Tη διαθεσιμότητα
 Δεν υπάρχουν εφαρμογές / υπηρεσίες / δεδομένα στο Διαδίκτυο χωρίς
κέρδος ….

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-68

DDoS Attack

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


4-69

DDoS Attack

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-70

DDoS Attack

CHARGEN = Character Generator Protocol: amplification factor of 1024


(The request is made up of 1 byte of data but the reply of 1024 bytes.)

SSDP = Simple Service Discovery Protocol

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


4-71

DDoS Attack

 Amplification
 Attacker makes a relatively small request in terms of packets used that
generates a significantly larger response/reply from a server

 Reflection
 Attacker sends spoofed requests to a large number of Internet
connected devices, which reply to the requests Using IP address
spoofing, the address is set to the actual target of the attack, where all
replies are sent
 Many services can be exploited to act as reflectors

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-72

DDoS Attack
The most common Reflection/Amplification cases

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


4-73

DDoS Attack
ICMP Denial of Service attacks
 ICMP Reflection Attacks
• ICMP Echo Request: ο Α ελέγχει αν η διαδρομή (route) προς
συγκεκριμένο host (πχ, Β) είναι ενεργή και αν ο Β είναι
«ζωντανός»
• Αν Β «ζωντανός» απόκριση με ICMP Echo Reply

ICMP Echo request


Source: IP 191.161.10.10
Dest: IP 191.161.20.20

A
Β
IP 191.161.10.10 IP 191.161.20.20
ICMP Echo reply
Source: IP 191.161.20.20
Dest: IP 191.161.10.10

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-74

DDoS Attack
ICMP Denial of Service – reflection
IP src: Forged to B
ICMP Echo request
Source: IP 191.168.1.30 IP Dest: Broadcast
Dest: IP 191.161.0.255
IP 191.168.1.1
A
IP 191.168.1.2
IP 191.161.10.10
ICMP Echo reply IP 191.168.1.3
Source: IP 191.161.1.*
Dest: IP 191.168.1.30
IP 191.168.1.4

Be the
Victim ICMP Echo reply
Source: IP 191.161.1.N IP 191.168.1.N
Dest: IP 191.168.1.30
IP 191.168.1.30

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


4-75

DDoS Attack
Network Time Protocol - Amplification Attack
x206 amplification
“Give me the addresses of the
last 600 machines you talked to” 600 addresses
Spoofed SrcIP: DoS target (49,000 bytes)
(234 bytes)

DoS NTP
DoS
Source (Network Time Protocol) Target
server

December 2013 – February 2014:


400 Gbps DDoS attacks involving 4,529 NTP servers
7 million unsecured NTP servers on the Internet
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-76

DDoS Attack
No DNS = No Internet.
DNS Amplification Attack
x50 amplification
DNS query
EDNS response
Spoofed SrcIP: DoS target
(60 bytes) (3000 bytes)

DoS DNS DoS


Source Server
Target

2006: 0.58M open resolvers on Internet (Kaminsky-Shiffman)


2013: 21.7M open resolvers (openresolverproject.org)

March 2013: 300 Gbps DDoS attack on Spamhaus


I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22
4-77

DDoS Attack

White hat DDoS testing - Generating DDoS attacks

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

4-78

DDoS Attack

https://sourceforge.net/projects/ddos-ip-attack-stress-loic/
Denial-of-service attack application, γραμμένο σε C#.

High Orbit Ion Cannon (HOIC)


https://sourceforge.net/projects/high-orbit-ion-cannon/

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


Ασφάλεια Δικτύων

2010-2011

5-2

Περιεχόμενα

 Τεχνικές Προστασίας από δικτυακές


απειλές
 Αναχώματα Ασφαλείας
 Firewalls
 IPS/IDS

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


5-3

Firewalls

 Μια ενεργή δικτυακή συσκευή που είναι ικανή


στο να περιορίζει την πρόσβαση σε δικτυακές
υπηρεσίες και εφαρμογές και πόρους βασιζόμενη
σε μία πολιτική ασφάλειας ή σύνολο κανόνων
 Εφαρμόζουν φιλτράρισμα εισερχομένων και
εξερχόμενων αιτήσεων ή δομών δεδομένων
 Σε πολλαπλά επίπεδα του μοντέλου OSI
 Οι πληροφορίες για αποφάσεις φιλτραρίσματος είναι
ευρύτερες του ενός επιπέδου
 Συνήθως αφορούν το επίπεδο δικτύου (IP) και πάνω

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

5-4

Firewalls

 Πρέπει να τοποθετούνται στο σημείο σύζευξης


δικτύων με διαφορετικά επίπεδα εμπιστοσύνης
 Σύμφωνα με τα security policies
 Εκφυλισμένη πρακτική: host-based / personal firewall
 Απομονώνουν προσωπικό υπολογιστή από το υπόλοιπο δίκτυο
 Συνήθως στα σύνορα (όρια)
 ενός οργανισμού με το διαδίκτυο
 Μεταξύ οργανικών μονάδων σε οργανισμό (Λογιστήριο /
Γραμμή Παραγωγής)
 Μεταξύ απομακρυσμένων σημείων

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


5-5

Firewalls

 Είναι ένα network component που παρέχει


πρόσθετες λειτουργίες
 Παρέχει και λειτουργίες auditing
 alarms για ύποπτη - αφύσικη συμπεριφορά
(abnormal behavior)
 Είναι το ίδιο επιρρεπές σε επίθεση
 Compromised – penetrated
 Υπέρτατος στόχος: perimeter defence

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

5-6

Firewalls

 Τέσσερις τύποι firewalls ορίζονται


 Packet filters
 Statefull packet filters
 Application-level proxies
 Circuit-level proxies

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


5-7

Firewalls

 Packet Filters
 Ελέγχουν κάθε πακέτο ξεχωριστά
 Όχι ροές πακέτων

“Cryptography and Network Security” 3rd Edition by William Stallings

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

5-8

Firewalls

 Packet Filters
 Θεμέλιο σε κάθε firewall system
 Ελέγχουν κάθε IP packet (όχι περιεχόμενο) που
διέρχεται από την περίμετρο
 permit ή deny με βάση κανόνες
 Έτσι περιορίζουν access σε services (ports)
 default Πολιτικές
 Αυτό που δεν επιτρέπεται ρητά, απαγορεύεται
 Συντηρητική, πιο ασφαλής
 Αυτό που δεν απαγορεύεται ρητά, επιτρέπεται
 Επιθετική, πιο επικίνδυνη

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


5-9

Firewalls

 Packet Filters – πληροφορίες διαθέσιμες


 IP source
 IP destination
 Protocol type (e.g. TCP, UDP, ICMP, IGMP)
 TCP/UDP source port
 TCP/UDP destination port
 ICMP message type
 Φυσικό interface από το οποίο λαμβάνεις πακέτο
 Φυσικό interface στο οποίο στέλνεις πακέτο
 Υπάρχουν rules που εφαρμόζονται σε αυτά τα
πεδία των πακέτων

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

5-10

Firewalls
 Δράση/Ενέργεια ελέγχου
 Accept / Deny
 Συνήθως:
 first-match policy
 Εκτελείται η δράση που σχετίζεται με το 1ο rule match.
Άφιξη πακέτου με
Protocol=TCP,
srcIP=210.1.1.1, srcport=3080,
destIP=220.2.33.8, destiport=80.
---
first rule: no match
second rule: no match
third rule: nomatch
fourth rule. Mathc, packet is accepted

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


5-11

Firewalls

 Packet Filters Rules


 A. Inbound mail allowed,
αλλά προς τον gateway host
μόνο. Block packets από
external host SPIGOT
 B. default policy τυπικά
τοποθετείται ως τελευταίος
κανόνας στο table
 C. Κάθε εσωτερικός κόμβος
μπορεί να στέλνει mail προς
τα έξω
 D. Επέτρεψε TCP
handshaking σε SMTP
requests over TCP
"Computer Security: Principles and Practice"
1st Edition,
W. Stallings and L. Brown

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

5-12

Firewalls

 Ανάλυση των firewalls


 Έστω ο κανόνας
 Proto=TCP, SIP =190.150.140.38, SP=188, DIP=190.180.39.*
DP=80, action=accept
 Ο κανόνας εκφράζει ενέργεια για 256 διαφορετικά packet headers
 Έστω ο κανόνας
 Proto=TCP, SIP =190.150.140.38, SP=188, DIP=190.180.39.*
DP=*, action=accept
 Ο κανόνας εκφράζει ενέργεια για 256*216 διαφορετικά packet
headers = 65.536 x 256 = 16.777.216

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


5-13

Firewalls

 Ανάλυση των firewalls για μία πολιτική R


 Υπάρχουν τρία διακριτά (nonoverlapping) σύνολα από packet.
 A(R): packets that will be accepted by the policy R
 D(R): packets that will be dropped by the policy R
 U(R): packets that do not match any rule in the policy
 All possible packet headers: 7.7 x 10 25

 A firewall policy R είναι comprehensive if any packet from P will


match at least one rule.
 Με άλλα λόγια η ένωση των of A(R) και D(R) = P
 Ή η U(R) είναι empty set

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

5-14

Firewalls

 first-match policy – είναι πάντα σωστή επιλογή


 Rule shadowing
 Όταν ένας πρωθύστερος κανόνας ri ταιριάζει κάθε packet που
ταιριάζει άλλος κανόνας rj matches
 Έστω ότι οι κανόνες αριθμούνται ακολουθιακά, ξεκινώντας από τον
κανόνα r1 και ότι i <j .
 Rule Shadowing συμβαίνει όταν κάθε πλειάδα στον rj είναι γνήσιο
υποσύνολο του ri
 Παράδειγμα:
 Κανόνας 12: Proto=TCP, SIP=190.150.140.38, SP=188,

DIP=190.180.39.* DP=80, action=accept


 Κανόνας 15: Proto=TCP, SIP=190.150.140.38, SP=188,

DIP=190.180.39.180 DP=80, action=drop


Never
matched
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22
5-15

Firewalls

 Αύξηση performance: more popular rules appear earlier


 average number of rule
comparisons σε πολιτική R
 n αριθμός κανόνων πολιτικής R
 pi probability that rule i is the first match
 Policy integrity iff policy will accept and deny the same packets
before and after reorganization of rules
 Έστω firewall policy=R.

 Μετά από reordering κανόνων, firewall policy=S

 Αν A(R)=A(S) and D(R)=D(S), τότε R και S είναι equivalent


(integrity is maintained)
 Επομένως η S μπορεί να πάρει τη θέση της R στο firewall,
εφόσον βελτιώνει την απόδοση

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

5-16

Firewalls

 Packet Filters – αδυναμίες


 Δεν εντοπίζουν attacks στο application layer
 Ελάχιστο – καθόλου logging functionality
 Δεν υποστηρίζουν user authentication
 Επιρρεπή σε attacks του TCP/IP stack
 Syn flooding
 ICMP reflection / amplification
 Λάθος configuration μπορεί να οδηγήσει σε διαρροές
ασφάλειας
 Δεν αναγνωρίζει μερικές επιθέσεις
 IP address spoofing, tiny fragment attacks

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


5-17

Firewalls

 Stateful inspection Packet Filters


 Προσπαθεί να αντιμετωπίσει τις προηγούμενες
αδυναμίες
 attacks του TCP/IP stack
 Syn flooding, ICMP reflection / amplification
 IP address spoofing / tiny fragment attacks

"Computer Security: Principles and Practice"


1st Edition,
W. Stallings and L. Brown

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

5-18

Firewalls

 Stateful inspection Packet Filters


 Ιχνηλατεί μεμονωμένες συνδέσεις που διέρχονται από
το ανάχωμα και να διατηρεί πληροφορίες για την
κατάσταση της σύνδεσης ώστε να διασφαλίζει ότι
μόνο νόμιμα πακέτα μπορούν να ανήκουν σε αυτές
 Νόμιμα:
 Από /προς την ίδια πόρτα
 Από /προς το ίδιο IP
 Με τη σειρά τους (seq number)
 Με την ακολουθία τους (SYN/ASYN/ACK)
 Εξετάζει ροές - context στο οποίο είναι κάθε IP packet
 Διατηρεί πληροφορίες για client-server συνόδους
 Ελέγχει TCP connection states (επόμενη διαφάνεια)

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


5-19

Firewalls

 Stateful inspection Packet Filters - TCP


 Διατηρεί info για TCP connections
 Τυπικά έχουν χαμηλή και γνωστή (στατική) τιμή στο
port# για το server
 Και υψηλή, δυναμικά επιλεγμένη (assigned) τιμή στο port#
για το client
 stateful inspection packet: θέτει κανόνες για TCP
traffic χρησιμοποιώντας directory από TCP connections
 Επιτρέπει μόνοι incoming traffic σε υψηλής τιμής
πόρτες για packets που ταιριάζουν με entry από το
directory
 Επίσης ελέγχει και τα TCP seq
 timeouts for half-open connections

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

5-20

Firewalls

 Application Layer Firewall - Gateway

“Cryptography and Network Security” 3rd Edition by William Stallings

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


5-21

Firewalls

 Application Layer Firewall - Gateway


 Ενεργεί ως relay
 Χρήση gateway / proxy
 Πλήρης έλεγχος στο πρωτόκολλο
 Ο χρήστης αιτείται service από proxy
 Ο proxy επαληθεύει χρήστη
 Ρωτά το χρήστη για remote host που θα προσπελάσει και
service
 Έπειτα ρωτά χρήστη για authentication information
 Αν το request είναι έγκυρο
 To gateway συνδέεται με το application στο remote host
και relays τα TCP segments μεταξύ του server και του user

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

5-22

Firewalls

 Τύποι
 Screening Router
 Ένας δρομολογητής – packet filter
 Dual-Homed Bastion
 Ένας Proxy – application filtering
 Screening Router - Dual-Homed Bastion
 Ένας δρομολογητής – packet filter
 Ένας Proxy – application filtering
 Screened Subnet
 Δύο δρομολογητές – packet filters
 Πολλοί Proxies – application filters
 DMZ

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


5-23

Firewalls

 Screening Router
 Τυπικό σενάριο
 Ένας δρομολογητής που είναι packet filter
 Single-Homed Bastion
 Ο application level gateway
 Με πρόσθετα χαρακτηριστικά
 Μπορεί να υποστηρίζει 2 η περισσότερες διεπαφές δικτύου
(net connections)
 Εξασφαλίζει λογικό διαχωρισμό μεταξύ net connections
 Μπορεί να τρέχει circuit και application level gateways
 Μπορεί να παρέχει externally accessible services

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

5-24

Firewalls

 Screening Router - Dual-Homed Bastion


 Συνδυασμός Screening Router και Bastion
 No single-point of failure

“Cryptography and Network Security” 3rd Edition by William Stallings

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


5-25

Firewalls
 Screened Subnet
 2 routers (external/choke και internal router)
 screened host και DMZ services
 two-way protection για το DMZ
 Προστασία υπόλοιπου δικτύου από attacks προς DMZ
 Προστασία DMZ από attacks από internal network

“Cryptography and Network Security” 3rd Edition by William Stallings

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

5-26

Firewalls
 Screened Subnet example
 Web (HTTP), email (SMTP), and
DNS are placed in the DMZ
 First firewall allow external traffic to
inbound TCP port 80 on the Web
server, TCP port 25 on the email
server, and TCP and UDP port 53 on
the DNS server.
 The external traffic to the rest of the
ports will be denied and logged
 The second router (Linksys) will
have well-known ports closed to
external traffic
 DNS needs to be on DMZ with public
IP
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22
5-27

Firewalls
 Ατέλειες
 Συνήθως σε ένα οργανισμό υπάρχουν Η/Υ με
μεμονωμένες συνδέσεις (π.χ., wireless/dial-up) με το
διαδίκτυο
 Κερκόπορτα
 Πολλές φορές θυσιάζεται η προσβασιμότητα /
διαθεσιμότητα υπηρεσιών
 Στην εξερχόμενη κίνηση δεν δίνεται μεγάλη προσοχή
 Covert Channels
 Δεν προστατεύει από κάθε virus που έχει μολύνει
προγράμματα ή αρχεία
 Λόγω του μεγάλου εύρους O/S και & file types
 Απόδοση
 Μειώνεται σημαντικά σε αρκετές εφαρμογές κυρίως ισόχρονες

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

5-28

IDS vs IPS

 Τι είναι “Intrusion”
 Όποιο σύνολο ενεργειών που στοχεύει να
παραβιάσει την ακεραιότητα (integrity), το
απόρρητο (confidentiality), και τη
διαθεσιμότητα (availability) ενός πόρου
 Μπορεί να ανιχνευθεί:
 1. Πριν αναπτυχθεί
 2. Ενόσω αναπτύσσεται
 3. Αφού έχει αναπτυχτεί
 Στις περιπτώσεις 2&3 δύναται να έχει επίπτωση

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


5-29

IDS vs IPS
 Τι είναι IDS
 Ένα συστατικό – αντίμετρο – ασφάλειας που
 ελέγχει τη δραστηριότητα σε δικτυακό επίπεδο ή σε
επίπεδο εφαρμογής ή σε όλο στο πληρ. σύστημα
 προσδιορίζει ακολουθίες (patterns) συμπεριφοράς ή
κίνησης που καταδεικνύουν πιθανές παραβιάσεις της
πολιτικής και των κανόνων ασφάλειας
 ενημερώνει για τα ευρήματα του
 συνοδεύεται από
 άντληση (capturing) δεδομένων
 ανάλυση (audit data) δεδομένων
 τεκμηρίωση σχετικά με τα πειστήρια της εισβολής
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

5-30

IDS vs IPS
 Τι είναι IPS
 Εστιάζεται σε ανίχνευση και αποτροπή (blocking)
μοχθηρής δραστηριότητας (malicious activity) σε
πραγματικό χρόνο
 Διαφορές με IDS
 Από Off-line (IDS) σε In-line (IPS)
 IDS:
 λαμβάνει copy της κίνησης ή της πληροφορίας και το αναλύει,
αλλά δεν απορρίπτει πακέτα ή τερματίζει ενέργειες (passive)
 IPS:
 παρεμβάλετε και επενεργεί στην πραγματική ροή κίνησης ή
πληροφορίας και απορρίπτει πακέτα ή τερματίζει ενέργειες
(active)
 Αποτρέπει ακόμα και το 1ο malicious packet να περάσει

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


5-31

IDS
 Απαιτήσεις από το συστατικό IDS
 Να είναι συνεχώς σε λειτουργία
 Να είναι ανθεκτικό σε λάθη (fault tolerant)
 Να αντιστέκεται σε επιθέσεις εναντίον του
 Να αυτό-προστατεύεται
 Να έχει ελάχιστη επιβάρυνση για το σύστημα
 Να παρέχει καμία ή έστω ήπια (ανεκτή) υποβάθμιση της υπηρεσίας
 Να ρυθμίζεται σύμφωνα με τη πολιτική ασφάλειας του
συστήματος που προστατεύει
 Να προσαρμόζεται στις αλλαγές του συστήματος
 Πχ patches
 Να επιτρέπει δυναμική αναδιάρθρωση και ανανέωση
 Σε κανόνες

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

5-32

IDS
 IDS
 Host based
 Επιβλέπουν ένα κόμβο/host και ελέγχουν τα
events που συμβαίνουν σε αυτόν ή στις
υπηρεσίες που παρέχει προς χρήστες και
διαδίκτυο
 Network based
 Επιβλέπουν ένα segment, υποδίκτυο, LAN κοκ
και αναλύουν τη κίνηση σε επίπεδο δικτύου,
μεταφοράς ή εφαρμογής

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


5-33

IDS
 Τρία λογικά συστατικά
 Αισθητήρες – sensors
 Συλλέγουν και αποστέλλουν πληροφορία
 Input: Log files, network packets, system-call traces
 Προωθούν τη πληροφορία σε analyzers
 Αναλυτές – analyzers
 δέχονται πληροφορία από πολλούς sensors
 Αναλύουν τη πληροφορία
 Υπεύθυνοι στο να αποφαίνονται αν μια εισβολή είναι σε
εξέλιξη ή συνέβη
 Η έξοδός τους συνοδεύεται από
 τεκμήρια που αποδεικνύουν την εισβολή
 ένδειξη αντιμετώπισης
 Διεπαφή με χρήστη (interface)

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

5-34

IDS
 Συμπεριφορά εισβολέα
 Κατά κανόνα διαφορετική από του τυπικού
χρήστη
 Ωστόσο όχι πάντα
διακριτή
 false positives:
authorized users
κρίνονται ως εισβολείς
 false negatives:
εισβολείς
χαρακτηρίζονται ως
authorized users Computer Security: Principles and Practice, First
Edition by William Stallings and Lawrie Brown

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


5-35

IDS
 Συμπεριφορά IDS
 Ιδεατό σύστημα: 100% detection rate με 0%
false alarm
 false positives:
authorized users
κρίνονται ως εισβολείς
 false negatives:
εισβολείς
χαρακτηρίζονται ως
authorized users
οπότε η επίθεση δεν
ανιχνεύεται

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

5-36

IDS
 Συμπεριφορά IDS
 False negatives: attack is not detected
 Κύριο πρόβλημα στα signature-based IDS
 False positives: legitimate behavior is
classified as attack
 Κύριο πρόβλημα στα statistical anomaly detection
 Και οι δύο κατηγορίες IDS έχουν πρόβλημα
 ποιό από τα δύο κυρίαρχο;

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


5-37

IDS – Attack Features


Point Anomaly: Όταν ένα στιγμιότυπο
δεδομένων αποκλίνει από το κανονικό
μοτίβο του συνόλου δεδομένων, μπορεί
να θεωρηθεί ως σημείο ανωμαλίας. Για
παράδειγμα, αν η κανονική ροή “Network
IO” προς server είναι 5GB/hour, και γίνει
150GB/hour.

Contextual ανωμαλία: Όταν ένα


στιγμιότυπο δεδομένων συμπεριφέρεται
ανωμάλως σε ιδιόμορφο πλαίσιο,
ονομάζεται συμφραζόμενη ή υπό όρους
Συλλογική Ανωμαλία: Όταν μια συλλογή ανωμαλία. Παράδειγμα, οι τιμές
παρόμοιων δεδομένων παρουσιάζει ανωμαλίες θερμοκρασίας τον Ιούνιο είναι κάτω από
σε σχέση με ολόκληρο το σύνολο δεδομένων. 17οC
Κάθε ένα από τα μεμονωμένα σημεία
εμφανίζεται ως κανονικό ενώ αν παρατηρείται
ως μέρος της ομάδας παρουσιάζει ασυνήθιστα
χαρακτηριστικά
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

5-38

IDS – Attack Features


Friday, March 15, 2019 Food Restaurant ATHENS FOOD 95,40 €
Friday, March 15, 2019 Gas Station 1 ATHENS MISC 40,00 €
Friday, March 15, 2019 Café ATHENS FOOD 7,50 €
Friday, March 15, 2019 Café ATHENS FOOD 467,00 € point anomally
Saturday, March 16, 2019 Gas Station 1 ATHENS MISC 40,00 €
Saturday, March 16, 2019 Gas Station 1 ATHENS MISC 85,00 €
collective anonaly
Saturday, March 16, 2019 Gas Station 1 ATHENS MISC 70,00 €
Saturday, March 16, 2019 Gas Station 1 ATHENS MISC 65,00 €
Sunday, March 17, 2019 Café ATHENS FOOD 5,30 €
Sunday, March 17, 2019 Super Market ATHENS MISC 76,40 €
Sunday, March 17, 2019 Cinema ATHENS MISC 18,00 €
Monday, March 18, 2019 Hotel Monaco MISC 1.444,70 € Contextual Anomaly
Monday, March 18, 2019 Café ATHENS FOOD 6,40 €

Ανίχνευση απάτης
• Point anomaly
• Collective anomaly
• Contextual anomaly
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22
5-39

IDS – host based


 Στρώμα - εξειδικευμένο λογισμικό για την ασφάλεια
ευάλωτων ή ευαίσθητων συστημάτων
 Παρακολουθεί τις δραστηριότητες στο σύστημα για
εντοπισμό ύποπτων συμπεριφορών.
 Ένα IDS πρέπει να είναι σε θέση να ειδοποιήσει για την
επίθεση πριν γίνει οποιαδήποτε ζημιά
 Άρα πρωταρχικός σκοπός :
 Ανίχνευση εισβολών

 Καταγραφή ύποπτων συμβάντων

 Αποστολή alerts

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

5-40

IDS – host based


 Εγκαθίστανται σε
 Σημαντικούς εξυπηρέτες υπηρεσιών & παραγωγής που
περιέχουν mission-critical ή ευαίσθητη πληροφορία
 Web servers
 FTP and DNS servers
 E-commerce database servers, etc.
 Βασίζονται σε δύο γενικές προσεγγίσεις για την
ανίχνευση εισβολέων
 Ανίχνευση ανωμαλίας (anomaly detection)
 Ανίχνευση αποτυπώματος (signature detection)
 Μπορεί να χρησιμοποιηθεί και συνδυασμός τους

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


5-41

IDS – host based


 Διαφορές στις δύο γενικές προσεγγίσεις για
ανίχνευση εισβολέων
 Ανίχνευση ανωμαλίας (anomaly detection)
 Προσδιορισμός ανώμαλης, ασυνήθιστης συμπεριφοράς
 Διαφοροποίηση από νόμιμη (τυπική) συμπεριφορά
 Οι IDS analyzers παράγουν profiles που αναπαριστούν την
τυπική συμπεριφορά ανά hosts (ή και network)
 Ανίχνευση αποτυπώματος (signature detection)
 Η ανάλυση εστιάζει σε events ή σύνολο από events που
ταιριάζουν με εκ προοιμίου γνωστά, καταγεγραμμένα patterns
(αποτύπωματα) επίθεσης
 Ονομάζεται και misuse detection
 Signature-based IDSs: περιορίζονται μόνο σε known patterns

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

5-42

IDS Taxonomy

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


5-43

IDS – Net Attack Types


 Probe Attack
 κάθε προσπάθεια συγκέντρωσης πληροφοριών σχετικά με στόχο
(δίκτυο, host) με σκοπό την καταστρατήγηση των ελέγχων
ασφαλείας.
 πληροφορίες σχετικά με τις τύπους και τον αριθμό των μηχανών
που συνδέονται με το δίκτυο, τον ιστότοπο, είδη λογισμικού που
έχουν εγκατασταθεί, ή οι εφαρμογές που χρησιμοποιούνται
 Το πρώτο βήμα παραβίασης αν και δεν προκαλεί ζημίες
 Nmap, Satan, Ipsweep, Port Sweep
 (D)DoS Attack
 Διακοπή υπηρεσίας με πλημμυρρίδα από παράνομες αιτήσεις.
 προκαλώντας τους πόρους να είναι πολύ απασχολημένοι για να
χειριστούν τα νόμιμα αιτήματα.
 δεν απαιτεί προηγούμενη πρόσβαση στον στόχο
 Amplification attacks, Ping of Death, Neptune, Smurf, Land
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

5-44

IDS – Net Attack Types (2)


 Remote to Local User - R2L Attack
 Μη εξουσιοδοτημένη πρόσβαση από απομακρυσμένο μηχάνημα
 Απόκτηση τοπικής πρόσβαση ως χρήστης
 Αναφέρεται και ως Remote to User (R2U)
 Guess/sniff password
 User to Root - U2R Attack
 ο επιτιθέμενος επιδιώκει να αποκτήσει παράνομη πρόσβαση σε
έναν λογαριασμό διαχείρισης (admin account).
 Χρησιμοποιώντας μια προσέγγιση κοινωνικής μηχανικής ή κωδικό
πρόσβασης απλού χρήστη, ο εισβολέας μπορεί να έχει πρόσβαση
σε ένα κανονικό user account και στη συνέχεια εκμεταλλεύεται
τρωτό σημείο για να κερδίσει το προνόμιο ενός superuser
 Επίσης απευθείας εκμεταλλευόμενος κάποια συστημική ευπάθεια
(buffer overflow, rootkits, injections)

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


5-45

IDS – network based


 παρακολούθηση κυκλοφορίας σε επιλεγμένα
σημεία σε ένα δίκτυο
 εξετάζει την κίνηση πακέτο με πακέτο σε
πραγματικό χρόνο
 ή κοντά σε πραγματικό χρόνο
 Ανάλυση σε network, transport ή application
level
 NIDS ελέγχει packet traffic που προωθείται σε ένα
target (δυνητικά vulnerable computer system).
 Ένα host-based IDS ελέγχει δραστηριότητα χρήστη
και software σε ένα host

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

5-46

IDS – network based


 τυπική NIDS εγκατάσταση περιλαμβάνει
 μια σειρά από αισθητήρες για την παρακολούθηση της
κυκλοφορίας πακέτων
 Έξω από το firewall
 Μέσα από το firewall
 Μεταξύ business units
 Μεταξύ corporate network και partner networks
 Σε όλα τα switched network segments
 έναν ή περισσότερους servers για λειτουργίες
διαχείρισης
 κονσόλες διαχείρισης για την ανθρώπινη διασύνδεση
 Η ανάλυση της κίνησης για την ανίχνευση
παρείσφρησης μπορεί να γίνει στον αισθητήρα, ή
στο διακομιστή, ή στο συνδυασμό των δύο
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22
5-47

IDS – network based


 Αισθητήρες μπορούν να αναπτυχθούν με έναν
από τους δύο τρόπους:
 ενσωματωμένος (in-line) και παθητικός
 ενσωματωμένος (in-line) sensor
 τοποθετείται σε ένα τμήμα του δικτύου
 η κίνηση διέρχεται από τον αισθητήρα
 ενδεχομένως συνδυάζοντας τον NIDS αισθητήρα με
συσκευή στο δίκτυο (π.χ. firewall, LAN switch)
 παθητικός αισθητήρας
 παρακολουθεί ένα αντίγραφο της κίνησης δικτύου
 Η πραγματική κίνηση δεν περνά μέσα από τη
συσκευή
 πιο αποτελεσματική από in-line διότι δεν προσθέτει
ένα επιπλέον βήμα χειρισμού
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

5-48

IDS – network based

 NIDS Sensor Deployment

Computer Security: Principles and Practice, First


Edition by William Stallings and Lawrie Brown

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


5-49

IDS – network based


 Όπως και οι Host-based βασίζονται σε δύο
γενικές προσεγγίσεις για την ανίχνευση
εισβολέων
 Ανίχνευση ανωμαλίας (anomaly detection)
 Ανίχνευση αποτυπώματος (Signature detection)
 Τυπικές κατηγορίες events που ανιχνεύονται
 Connection signatures
 Σε επίπεδο συνόδου, πόρτας (υπηρεσίας)
 String Signatures
 Ακολουθία από Bytes σε ένα ή πολλαπλά malicious packet
 DoS signatures
 Τυπικές επιθέσεις από διεθνή αρχεία και DBs

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

5-50

IDS – network based


 Παραδείγματα Ανίχνευσης Αποτυπώματος (Signature
detection)
 επιθέσεις επιπέδου Εφαρμογής: αναλύει τα πρωτόκολλα
εφαρμογής και αναζητεί πρότυπα επίθεσης που έχουν ως
στόχευση αυτά τα πρωτοκόλλα
 επιθέσεις επιπέδου Μεταφοράς: Αναλύουμε TCP / UDP / άλλα
πρωτόκολλα μεταφοράς για ασυνήθιστα πακέτα
κατακερματισμού, port scans, TCP-specific attacks πχ
retransmissions
 επιθέσεις επιπέδου Δίκτυου: Αναλύουμε IPv4, ICMP για
πλαστογραφημένες IP διευθύνσεις, παράνομες IP header τιμές,
κτλ
 Απροσδόκητες αιτήσεις ανά πρωτόκολλο: δραστηριότητα, ώστε
να διαπιστωθεί εάν πακέτα/αιτήσεις συνάδουν με το πρωτόκολλο
 Παραβιάσεις Πολιτικής ασφάλειας: όπως η χρήση ακατάλληλων
τοποθεσιών Web, απαγορευμένων για χρήση πρωτοκόλλων κλπ.

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


5-51

IDS – network based


 Παραδείγμα rule-set Ανίχνευσης Αποτυπώματος :

– if (wrong_fragment ! 1 AND protocol_type = icmp) then “pod


attack”
– else if (protocol = icmp_echo_request AND host_count ! 3 AND
srv_count ! 3) then “smurf attack.”
– ...
– else normal.

pod attack = ping of death attack. IP packet size = 65,535 bytes. Attackers
send many IP fragments of the same IP packet id to the victim.
Reassemply of these packets causes IP packet size > 65,535 = buffer
overflow
Smurf Attack: DDoS amplification & reflection attack. Μεγάλος αριθμός
ICMP packets με spoofed source IP γίνονται broadcast σε computer
network με χρήση IP Broadcast address.
I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

5-52

IDS – network based


 Παραδείγματα Ανίχνευσης Ανωμαλίας (anomaly
detection)
 επιθέσεις Άρνηση εξυπηρέτησης (DoS) : αν έχουν αυξηθεί
σημαντικά τα πακέτα κυκλοφορίας ή υπάρχει σημαντική αύξηση
προσπαθειών σύνδεσης που ξεπεράσουν το στόχο του
συστήματος
 Scanning: όταν ένας εισβολέας ανιχνεύει στόχο δικτύου ή
σύστημα, στέλνοντας διάφορα είδη πακέτων ώστε να
αναγνωρίσει πολλά από τα χαρακτηριστικά του συστήματος και
τις ευπάθειες του
 Worms: μπορεί ανιχνευθεί λόγω χρήσης μεγάλων ποσοτήτων
εύρους ζώνης, είτε γιατί μπορεί να προκαλέσουν επικοινωνία με
άλλους κεντρικούς υπολογιστές / hosts που συνήθως δεν
φαίνονται στη πολιτική

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


5-53

IPS
 Υπάρχουν δύο τρόποι θεώρησης για το τι είναι
IPS:
 Α. είναι ένα inline network-based IDS (NIDS) που έχει τη
δυνατότητα να μπλοκάρει την κίνηση με το να απορρίπτει
πακέτα
 αλλά και να ανιχνεύει ύποπτη κίνηση
 B. είναι μια λειτουργική προσθήκη σε ένα firewall που προσθέτει
IDS αλγόριθμους στο ρεπερτόριο.
 Άρα : IPS blocks traffic όπως το firewall αλλά
χρησιμοποιεί αλγορίθμους που έχουν προταθεί για IDSs

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

5-54

Host-based IPS
 Ένα host-based IPS (HIPS) χρησιμοποιεί τις δύο κλασικές τεχνικές
 Signature detection
 Εστιάζεται σε content των application payloads στα πακέτα, αναζητώντας
patterns που έχουν καθοριστεί ως malicious.
 Anomaly detection
 Καταγράφει και αναλύει patterns με συμπεριφορές
 Π.χ.: Modification of system resources, Privilege-escalation exploits, Buffer-
overflows
 Οι δυνατότητες ενός HIPS είναι συνδεδεμένες με συγκεκριμένη
πλατφόρμα (OS).
 HIPS σε sandbox
 Sandboxes χρησιμοποιούνται για κινητό κώδικα - mobile code (Java
applets και scripting languages).
 Το HIPS βάζει σε καραντίνα τέτοιο κώδικα σε αποσωνόμενη από το
σύστημα περιοχή, εκτελεί τον κώδικα και ελέγχει τη συμπεριφορά του

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


5-55

network-based IPS
 Ένα NIPS είναι ένα inline NIDS με τη αρμοδιότητα να
απορρίπτει πακέτα και να απορρίπτει αιτήσεις συνδέσεων
π.χ., TCP connections.
 Ένα NIPS χρησιμοποιεί και αυτό signature detection και
anomaly detection τεχνικές
 Πρόσθετη τεχνική: Flow data protection.
 Το application payload σε μία ακολουθία πακέτων επανα-
συναρμολογείται.
 Το ΝIPS εφαρμόζει φίλτρα στο πλήρες content της ροής κάθε
φορά που έρχεται ένα πακέτο της ροής.
 Αν η ροή χαρακτηριστεί malicious, το τελευταία και όλα τα
επόμενα πακέτα της ροής απορρίπτονται.

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

5-56

network-based IPS
 Γενικές μέθοδοι που χρησιμοποιεί το NIPS για να βρει malicious
packets:
 Pattern matching: Σαρώνει τα εισερχόμενα πακέτα για συγκεκριμένες
αλληλουχίες byte (υπογραφή) που είναι αποθηκευμένες σε μια βάση
δεδομένων με γνωστές επιθέσεις
 Stateful matching: Σαρώνει υπογραφές για την επίθεση σε ένα ρεύμα
κυκλοφορίας και όχι μεμονωμένα πακέτα.
 Protocol anomaly: Αναζητεί απόκλιση από τα πρότυπα που ορίζονται
στο RFCs.
 Traffic anomaly: Επιβλέπει για μη τυπικές (unusual) traffic activities,
όπως flood of UDP packets ή για μία νέα υπηρεσία που ενεργοποιείται
στο δίκτυο.
 Statistical anomaly: Αναπτύσσει κανόνες κανονικής κυκλοφορίας και
απόδοσης δικτύου, και παράγει ειδοποιήσεις (alerts) για τις αποκλίσεις
από αυτές.

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


5-57

NI(D/P)S και Volume of Traffic


 Challenges:
 Πρόβλημα = Volume of traffic
 Συνδέσεις πλέον > 1000Mps με outside world
 Το NIDS πρέπει να ελέγξει όλη την κίνηση
 Να ανασυντάξει το communications context
 Να κρατήσει connectionσs’ state
 Επιθέσεις στο ίδιο το monitoring tool
 Εσκεμμένες επιθέσεις στο NIDS μπορούν να θέσουν σε
κίνδυνο την ανίχνευση
 Υπερφόρτωση NIDS
 Κατάρρευση
 Διενέργεια επίθεσης
 H απόδοση γίνεται ένα όπλο στον «εχθρό»

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

5-58


SIEM and SOC
Ας φανταστούμε μια αλυσίδα καταστημάτων SiC με έδρα στη ΝΥ και 1.000
καταστήματα στις ΗΠΑ
 Τα καταστήματα πρέπει να διατηρήσουν επικοινωνία με κεντρικoύς servers για
συντονισμό αποθήκης, παραγγελιών, πωλήσεις, τιμοκαταλόγους κοκ
 Κάθε κατάστημα χρειάζεται σύνδεση στο Διαδίκτυο και VPN με τα HQ (που
πιθανώς να είναι στο cloud).
 Οι συνδέσεις στα καταστήματα είναι ευάλωτες σε επιθέσεις. Το χειρότερο:
εισβολέας που διεισδύει στο δίκτυο καταστημάτων θα έχει πρόσβαση σε
Servers
 Κάθε κατάστημα πιθανός φορέας επίθεσης στο εταιρικό δίκτυο
 Τα SiC χρειάζονται 1.000 τείχη προστασίας και IDS που προστατεύουν τις 1.000
συνδέσεις στο Διαδίκτυο!!!
 Αλλά ποιος θα παρακολουθεί αυτά τα τείχη προστασίας και IDS για να
βεβαιωθεί ότι λειτουργούν σωστά και να διερευνούν πιθανά συμβάντα
ασφαλείας στα καταστήματα λιανικής;
 Είναι εφικτό αυτό το σενάριο; Σίγουρα δεν είναι οικονομικό

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


5-59

SIEM and SOC


Τοπολογία και Αρχιτεκτονική

Other Networks &


Firewall Servers
Our Networks Untrusted
Services
Internet
Router
Intranet
Our
cloud Our Public
Accessible Servers Extranet
Trusted Users

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

5-60


SIEM and SOC
Η SiC θα δημιουργήσει (η ενοικιάσει) ένα Κέντρο Επιχειρήσεων
Ασφαλείας (SOC).
 SOC: ομάδα προσωπικού ασφαλείας αφιερωμένη στην παρακολούθηση
για συμβάντα ασφαλείας, τη διερεύνηση και αποκατάσταση τους.
 Για να κάνει αποτελεσματικό SOC, η ομάδα SOC θα έχει πρόσβαση για
να παρακολουθεί όλο το δίκτυο και τα προϊόντα ασφαλείας σε όλη την
επιχείρηση, συμπεριλαμβανομένων των καταστημάτων
 Το προσωπικό ασφαλείας συνδέεται χειροκίνητα σε κάθε συσκευή
ελέγχοντας την κατάσταση και αναζητώντας ειδοποιήσεις (alarms)
 Αυτή η επιλογή δεν κλιμακώνεται και καθιστά δύσκολο τον εντοπισμό
ακόμη και απλών μοτίβων επίθεσης, όπως επιθέσεις σε καταστήματα
που προέρχονται από ίδια διεύθυνση πηγής.
 Αντ 'αυτού, η SiC χρειάζεται μια αυτοματοποιημένη βοήθεια
 Εδώ υπεισέρχονται τα εργαλεία ασφάλειας και διαχείρισης συμβάντων ή
SIEM (security information and event management)

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22


5-61

SIEM and SOC


SIEMs: συστήματα
λογισμικού που συλλέγουν
δεδομένα σχετικά με την
ασφάλεια από ένα σύνολο
προϊόντων υλικού και
λογισμικού για τη
δημιουργία ενός
ενοποιημένου πλαισίου
ελέγχου ασφαλείας

I. Μαριάς, Ασφάλεια Δικτύων, 7ο εξάμηνο, Ακ Έτος 2021-22

Ασφάλεια Δικτύων
6-2

Περιεχόμενα

 Ασφάλεια σε επίπεδο δικτύου


 IPSec
 AH/ESP
 Transport mode / Tunnel Mode
 Aσφάλεια σε επίπεδο μεταφοράς
 SSL/TLS

6-3

Ασφάλεια στο διαδίκτυο


 Το ΤCP/IP δεν σχεδιάστηκε αρχικά με στόχο την
παροχή υπηρεσιών διασφάλισης
 Απορρήτου των επικοινωνιών
 Αυθεντικοποίηση επικοινωνούντων
 Μη-αποποίηση επικοινωνίας
 Ακεραιότητα μηνυμάτων

 Σήμερα υπάρχει αυξημένη ανάγκη διασφάλισης


 Κάτω από διαφορετικές πολιτικές
 Που ορίζονται από χρήστες, παρόχους υπηρεσιών, φορείς
μετάδοσης, κατόχους περιεχομένου, aggregators,
κατασκευαστές, διαχειριστές λειτουργίας, κυβερνήσεις
 Που ορίζουν διαφορετικά επίπεδα και ανάγκες ασφάλειας
6-4

Ασφάλεια στο διαδίκτυο


 Ωστόσο: Ασφάλεια στο διαδίκτυο είναι μια συνεχής,
πολυδιάστατη, διαδικασία
 ένα σύνολο κανόνων, υλικού, λογισμικού, και ανθρώπων
 Δεν είναι μόνο ένα προϊόν
 Ούτε μια ανακάλυψη (patent) ή ένα RFC
 Η εφαρμογή της εξαρτάται από τις απαιτήσεις που
ορίζουν (άμεσα ή έμμεσα)
 τα επίπεδα του μοντέλου OSI που θα εφαρμοστεί
 τα σημεία του δικτύου που θα εφαρμοστεί
 Υπολογιστές, διακομιστές, δρομολογητές, ειδικές διατάξεις (firewalls)
 ποιος θα της εφαρμόσει
 Χρήστης, ISP, τρίτος έμπιστος

6-5

Ασφάλεια στο διαδίκτυο


 Απειλές έναντι εμπιστευτικότητας
 Παθητικές επιθέσεις
 Ωτακοή κατά τη μετάδοση
 Υποκλοπή δεδομένων και πληροφοριών από εξυπηρέτες,
διακομιστές, υπολογιστές χρηστών
 Διαπίστωση θέσης χρηστών
 Αναγνώριση άκρων της επικοινωνίας
 Ανάγνωση διάρθρωσης δικτύου
 Επιπτώσεις
 Απώλεια ιδιωτικότητας
 Βήμα για ενεργητικές (πιο μοχθηρές) επιθέσεις
6-6

Ασφάλεια στο διαδίκτυο


 Απειλές έναντι αυθεντικότητας
 Πλαστογράφηση δεδομένων – πληροφοριών κατά την μετάδοση
ή αποθήκευση
 Πλαστογράφηση γνήσιων οντοτήτων
 Επιπτώσεις
 Αβεβαιότητα γνησίου πληροφοριών
 Πίστη ότι η λανθασμένη πληροφορία είναι έγκυρη
 Απώλεια εγκυρότητας
 Υποκλοπή ταυτοτήτων
 Απώλεια φήμης για το γνήσιο χρήστη – υπηρεσία
 πιθανή μελλοντική απάρνηση υπηρεσίας

6-7

Ασφάλεια στο διαδίκτυο


 Απειλές έναντι ακεραιότητας
 Τροποποίηση δεδομένων
 Τροποποίηση μηνυμάτων κατά τη μετάδοσή τους
 Μεταβολή δεδομένων στη μνήμη δικτυακών συσκευών
 Π.χ. Πινάκων δρομολόγησης
 Επιπτώσεις
 Ενόχληση
 Διαφοροποίηση ερμηνείας δεδομένων
 Απώλεια ακρίβειας / ορθότητας πληροφοριών
6-8

Ασφάλεια στο διαδίκτυο


 Απειλές έναντι διαθεσιμότητας
 Πλημμυρίδα δικτύου, εμποδίζει κίνηση «νόμιμων» πακέτων;
 Υπερφόρτωση εξυπηρέτη με αποστολή περισσότερων αιτημάτων
από αυτά που μπορεί να διαχειριστεί
 Εμπόδιο στην πρόσβαση ενός ατόμου σε μια υπηρεσία
 Επιπτώσεις
 Χαμηλή απόδοση δικτύου
 Μη διαθεσιμότητα web site
 Αδυναμία πρόσβασης στο δίκτυο
 Απώλεια φήμης / εσόδων

6-9

IPsec Περιεχόμενα

 Ασφάλεια σε επίπεδο δικτύου – IPsec


framework
 Αυθεντικοποίηση
 Κρυπτογράφηση
 Μέθοδοι Λειτουργίας (modes)
 Από άκρο-σε-άκρο δηλ host-to-host (transport mode) ή
 Από δίκτυο-σε-δίκτυο ήτοι router-σε-router (tunnel mode)

 Σύνοδοι ασφάλειας
 Διαχείριση κλειδιών
6-10

IPSec – Στόχοι
 Data Origin Authentication
 επαληθεύει ότι κάθε πακέτο προέρχεται από τον αποστολέα που
ισχυρίζεται ότι το έστειλε.
 Data integrity
 επαληθεύει ότι τα περιεχόμενα κάθε πακέτου δεν έχουν αλλάξει κατά τη
μεταφορά τους, είτε κακόβουλα είτε τυχαία
Data confidentiality
 το μήνυμα κρυπτογραφείτε κατά την αποστολή του ώστε να μην μπορεί
κάποιος ενδιάμεσος να το διαβάσει
 Replay protection
 Εξασφαλίζει ότι κάποιος τρίτος δεν μπορεί υποκλέπτοντας ένα πακέτο και
να το ξαναστείλει μετά από κάποιο χρονικό διάστημα
 Rejection of replayed IP packets
Ek[HMAC(k,M,SeqNr)]|| Ek [M||SeqNr]
(δύο IP άκρα επικοινωνίας που μοιράζονται μυστικό k)
 Διαχείριση κρυπτογραφικών κλειδιών και Security Associations

6-11

IPsec Security Associations


 Το IPSec παρέχει ποικίλες επιλογές για τη χρήση
αλγορίθμων κρυπτογράφησης και αυθεντικοποίησης
 Δύο οντότητες που θέλουν να επικοινωνήσουν πρέπει να
συμφωνήσουν εκ των προτέρων στο είδος της ασφάλειας
 Security Association (SA): συμφωνία μεταξύ δύο
άκρων για μεθόδους και αλγορίθμους που επιθυμούν
να χρησιμοποιήσουν κατά τη σύνοδο
 αλγόριθμοι κρυπτογράφησης
 αλγόριθμοι αυθεντικοποίησης
 κλειδιά, διάρκεια ισχύος κλειδιών κτλ .
 Τελικό λόγο στη διαπραγμάτευση : ο destination host
 SADB (Security Associations Database)
 Κάθε IPSec end-point διατηρεί μία βάση δεδομένων που
αποθηκεύονται τα ενεργά SAs
6-12

IPsec Security Associations


Host 1.1.1.1 SADΒ Host 2.2.2.2 SADΒ
INBOUND-SA#1 INBOUND-SA#2
ESP – AES (enc) ESP – 3DES
ESP – SHA2 (auth) SA#2 ESP – SHA 1
… …
OUTBOUND-SA#2 OUTBOUND-SA#1
ESP – 3DES (enc) SA#1 ESP – AES
ESP – SHA1 (auth) Host 1.1.1.1 ESP – SHA2
Host 2.2.2.2
… …

 Όταν λαμβάνεται ένα IP packet, μπορεί να αυθεντικοποιείται και να


αποκρυπτογραφείται μόνον εάν ο παραλήπτης μπορεί να το
συνδέσει με το περιεχόμενο ενός κατάλληλου SA
 Πολλαπλές SA μπορούν να δημιουργηθούν για την επικοινωνία
μεταξύ δύο μερών (π.χ. για διαφορετικές εφαρμογές).

6-13

IPSec – Μέθοδοι λειτουργίας


 Transport Mode (Μεταφοράς)
 η ασφάλεια εφαρμόζεται μεταξύ hosts (end-to-end)
 μόνο το IP packet payload αυθεντικοποιείται ή κρυπτογραφείται
 ο αρχικός IP packet header μένει αμετάβλητος και δεν
προστατεύεται
6-14

IPSec – Μέθοδοι λειτουργίας


 Transport Mode (Μεταφοράς)
Application Data Δεδομένα από τα ανώτερα επίπεδα

Transport TCP Data Πληροφορίες transport layer για


Header end-to-end επικοινωνία

IP TCP Data Ενσωμάτωση πληροφοριών


Header Header δικτύου (IP layer)

IP TCP Data Το IPsec απομονώνει


Header Header την IP επικεφαλίδα από τις
πληροφορίες των ανωτέρων επιπέδων
Network
IP TCP Το IPSec προστατεύει τις πληροφορίες
Data
Header Header των ανωτέρων επιπέδων

IP ESP/ TCP ESP Το IPSec εφαρμόζει


Data
Header AH Header TRL ESP ή AH πρωτόκολλο

IP ESP/ TCP Data ESP Το πακέτο


Header AH Header TRL επανασυναρμολογείται

6-15

IPSec – Μέθοδοι λειτουργίας


 Tunnel Mode (Διόδου)
 Όλο IP packet γίνεται payload σε ένα νέο IP packet
 Ένας νέος IP header προστίθεται (κατά ESP ή AH)
 To νέο IP packet οδεύεται (tunneled) από την μια ΙΡ gateway
στην άλλη.
 Οι endhosts δεν είναι ανάγκη να υλοποιούν IPsec capabilities.
6-16

IPSec – Μέθοδοι λειτουργίας


 Tunnel Mode (Διόδου)
Application Data Δεδομένα από τα ανώτερα επίπεδα

Transport TCP Data Πληροφορίες transport layer για


Header end-to-end επικοινωνία

IP TCP Data
Header Header Ενσωμάτωση πληροφοριών δικτύου –
ΙP Layer processing

IP TCP Data Το IPSec προστατεύει το datagram


Header Header
Network
ESP/AH IP TCP Data ESP Το IPSec εφαρμόζει
Header Header TRL ESP ή AH πρωτόκολλο

IP ESP/AH IP TCP ESP To IPSec δημιουργεί


Data
Header Header Header TRL νέα IP επικεφαλίδα

IP ESP/AH IP TCP Data ESP Το πακέτο


Header Header Header TRL επανασυναρμολογείται

6-17

IPSec – Μέθοδοι λειτουργίας και πρωτόκολλα

Transport Mode SA Tunnel Mode SA

Authenticates IP Authenticates entire inner


AH payload and selected IP packet plus selected
portions of IP header portions of outer IP header

Encrypts IP payload Encrypts inner IP packet


ESP
but not the IP header including the IP header

Encrypts IP payload
Encrypts inner IP packet.
ESP with and Authenticates IP
Authenticates inner IP
authentication payload but no IP
packet.
header
6-18

IPsec AH - Authentication Header

 Υποστηρίζει
 Data integrity του IP packet.
 Τροποποίηση IP packet κατά την μεταφορά:
ανιχνεύσιμο
 Authentication του IP packet.
 End-system verify αποστολέα
 Αποτρέπει address spoofing attacks.

 Βασίζεται σε Message Authentication Code (MAC)


 Τυπικά μέσω ΗΜΑC και SHA-1 ή νεότερου για σύνοψη
 Κοινό συμμετρικό κλειδί
 Επίσης μέριμνα απέναντι σε replay attacks

6-19

IPsec AH - Authentication Header


 Next header (8):
 O τύπος του header που έπεται του AH
 H τιμή του επιλέγεται από το σύνολο των
IP Protocol Numbers όπως ορίζονται από
IANA
 Π.χ., TCP
 Payload length (8):
 Μήκος του AH σε 32-bit words
 Reserved (16)
 για μελλοντική χρήση
 SPI (32):
 Προσδιορίζει μια SA.
 Sequence number (SeqNr, 32):
 Αυξάνων μετρητής (anti replay attack)
 Authentication data (variable):
 Περιέχει integrity check value (ICV) ή MAC
για αυτό το πακέτο.
6-20

IPsec AH - Transport mode

 Transport mode
 Η αυθεντικοποίηση παρέχεται απευθείας μεταξύ δύο end
systems
 π.χ., client and server workstations
 η αρχική header του IP packet είναι η εξωτερική επικεφαλίδα
του νέου IP packet, ακολουθούμενη από την AH header και
στη συνέχεια ακολουθεί το payload του αρχικού IP packet.
 Το αρχικό IP packet αυθεντικοποιείται ως προς τον
αποστολέα και προστατεύεται ως προς την ακεραιότητά του

Authenticated

6-21

IPsec AH - Tunnel mode

 Tunnel mode
 Όλο το IP packet αυθεντικοποιείται.
 Ο AH header τοποθετείται μεταξύ original IP header και
new, outer, IP header
 Η outer IP address περιέχει την IP addresses του security
gateway (router, firewall)
 H Inner IP address περιέχει την διεύθυνση του end system.

Authenticated
6-22

IPsec AH – Anti-Replay Attacks

 To IPsec AH χρησιμοποιεί sequence number


για αποτροπή replay attacks
 Τίθεται 0 όταν ξεκινά μια νέα SA
 Ωστόσο reordering των IP packets είναι
πιθανό να συμβεί στο επίπεδο IP
 Packet switching / routing
 Packets με larger sequence number μπορούν να
παραληφθούν στον παραλήπτη πριν από packets
με smaller sequence numbers
 Όταν out-of-order packets με μικρότερο
sequence number ληφθούν αργότερα,
απορρίπτονται (discarded)

6-23

IPsec AH – Anti-Replay Attacks

 Anti-Replay Window Protocol:


 Προστατεύει IP packets απέναντι σε replay attacks
και επικουρεί στο ζήτημα του reordering
 O αποστολέας εισάγει ένα sequence number
(SeqNr) σε κάθε IP packet
 Αρχικοποίηση με την εγκαθίδρυση SA
 Μονοτονικά αύξων
 Ο παραλήπτης χρησιμοποιεί ένα κυλιόμενο
παράθυρο (sliding window) για να ιχνηλατεί τα
λαμβανόμενα SeqNr από την SA
 Δανεισμός ιδέας από TCP …
6-24

IPsec AH – Anti-Replay Attacks

Το παράθυρο μετακυλύεται προς τα δεξιά κάθε


φορά που λαμβάνεται ένα authenticated πακέτο
W

N
Έχουν παραληφθεί και
N+1 authenticated
N-W+1
Μαρκάρεται αν Δεν έχουν ακόμα
παραλήφθηκε valid παραληφθεί
πακέτο
 W. Window Size Έχουν παραληφθεί,
authenticated και ελεγχθεί
 N. Right edge of Window
ως προς την σειρά
 The highest SeqNr of valid packet received so far
 S. To SeqNr του επόμενου πακέτου που θα ληφθεί.Υπάρχουν τρεις περιπτώσεις
 S μικρότερο από όποιο SeqNr μέσα στο W (S < N-W+1)
 S μέσα στο W (N-W+1 ≤ S ≤ N)
 S μεγαλύτερο από όποιο SeqNr μέσα στο W (S > N)

6-25

IPsec AH – Anti-Replay Attacks

S < N-W+1  Replay attack, discard packet

S
N-W+1 ≤ S ≤ N . Έλεγξε S. Αν S exist στο W  Replay attack, discard packet
Διαφορετικά  accept packet

S S
discard accept

S > N .  Accept packet. Slide the window so that S becomes its new right edge

N’

New Window νέα right edge: N’ = S


6-26

IPsec ESP – Encapsulating Security Payload

 Υποστηρίζει
 confidentiality services.
 confidentiality του IP packet
 περιορισμένης έκτασης authentication
service
 Authenticates το payload αλλά όχι το IP packet
header

6-27

IPsec ESP – Header / Trailer


 SPI (32):
 Προσδιορίζει μια SA.
 Sequence number (32):
 Αυξάνων μετρητής (replay attack)
 Payload data (Variable):
 packet data (transport mode) ή
 IP packet (tunnel mode).
 Padding (0-255):
 Προσθήκη χαρακτήρων για να
προκύψουν αποδεκτά πολλαπλάσια
μήκη πακέτου
 Pad length (8)
 Αριθμός padded χαρακτήρων.
 Next header (8):
 O τύπος του header που έπεται του ESP
 Authentication data (variable):
 Περιέχει integrity check value (ICV) για
αυτό το πακέτο
6-28

IPsec ESP – Algorithms


 Encryption
 Ποια πεδία «καλύπτονται»:
 Payload data, Padding, Padding length, και Next Header
 Αλγόριθμοι (DOI document)
 DES with CBC, mandatory
 Three-key 3DES, RC5, IDEA, CAST, Blowfish
 Authentication
 Ποια πεδία «καλύπτονται»:
 SPI, SeqNr, Payload data, Padding, Padding length, και
Next Header
 Αλγόριθμοι
 Όπως AH: Το ESP υποστηρίζει HMAC με default length
των 96 bits (HMAC-MD5-96 και HMAC-SHA-1-96)

6-29

IPsec ESP – Transport mode

 Transport mode
 Χρησιμοποιείται για encryption και authentication
(optional) των δεδομένων (κυρίως payload) IP packet
 Η κρυπτογράφηση υποστηρίζεται μεταξύ δύο end
systems
 π.χ., client και server workstations
 H ΙΡ επικεφαλίδα του IP datagram διατηρείται (routing)
 Δεν προστίθεται νέα
 Η IP επικεφαλίδα του IP datagram δεν κρυπτογραφείται
 Πληροφορίες για διευθύνσεις τελικό αποστολέα - παραλήπτη της
επικεφαλίδας είναι ορατές για κάποιον passive attacker (traffic
analysis)
 Η IP επικεφαλίδα του IP datagram δεν αυθεντικοποιείται
6-30

IPsec ESP – Transport mode

 Transport mode
 ESP header: εισάγεται μετά το IP header.
 ESP trailer (Padding, Padding length, Next Header):
εισάγεται στο τέλος του IP packet
 Αν χρησιμοποιείτε authentication, τα authentication
data τοποθετούνται μετά τον ESP trailer

6-31

IPsec ESP – Tunnel mode


 Tunnel mode
 Όλο το αρχικό IP packet is encrypted.
 Όλο το αρχικό IP packet γίνεται payload ενός νέου IP packet
(ονομάζεται inner packet).
 Νέος IP header προστίθεται.
 Ο νέος IP header χρησιμοποιείται πλέον για routing.
 Το νέο IP packet διοδεύεται (tunneled) από μια IP
gateway (router/firewall) σε άλλη
 Όλο το αρχικό IP packet (και o ESP Trailer) είναι
encrypted. H αρχική IP header δεν μπορεί να διαβαστεί
από passive attacker.
 βασική χρήση ESP σε tunnel mode: απόκρυψη των
εσωτερικών διευθύνσεων δικτύου μεταξύ δύο IP gateways
 Οι Hosts δεν είναι υποχρεωμένοι να υλοποιούν IPsec
ESP security capabilities
6-32

IPsec ESP – Tunnel mode


 Tunnel mode
 ESP header: εισάγεται μετά το νέο IP header.
 ESP trailer (Padding, Padding length, Next
Header): εισάγεται στο τέλος του αρχικού (inner
πλεόν) packet.
 Αν χρησιμοποιείτε authentication, τα
authentication data τοποθετούνται μετά τον
ESP trailer
Hint:
Η Transport παρέχει
εμπιστευτικότητα στο payload
του αρχικού datagram,
Η Tunnel παρέχει
εμπιστευτικότητα και για την
επικεφαλίδα και για το payload.

6-33

IPsec ESP – Tunnel mode


VPN via ESP/ tunnel mode
Corporate branch LAN Corporate branch LAN

Internet

Headquarters LAN
Corporate branch LAN
Servers

Encrypted Tunnels
conveying IP traffic
6-34

Secure Socket Layer – SSL


Transport Layer Security - TLS

6-35

SSL/TLS

 Αναπτύχθηκε από την Netscape (1995)


 Παρέχει ασφαλή επικοινωνία μεταξύ browsers και
servers
 Από άκρο σε άκρο
 Χρησιμοποιεί το TCP ως reliable underlying
transport protocol
 Είναι υλοποιημένο στο socket level
 Ανεξάρτητο από τις εφαρμογές στο ανώτερο επίπεδο
 Παρέχει ασφάλεια σε διαφορετικές εφαρμογές
 SMTP, TELNET, FTP, HTTP, SIP
 Open-source implementation www.openssl.org
 Αλλά και βιβλιοθήκες (cryptlib, GnuTLS)
6-36

SSL/TLS

Αποτελείται από επιμέρους πρωτόκολλα:


 Handshake Protocol
 Αυθεντικοποίηση, διαπραγματεύεται,
αρχικοποιεί και συγχρονίζει τις παραμέτρους
ασφαλείας στα δύο άκρα της σύνδεσης
 Record Protocol
 Εμπιστευτικότητα και ακεραιότητα μηνυμάτων
 Cipher Change Protocol
 Παράμετροι κρυπτογραφίας
 Alert Protocol
 Μηνύματα ελέγχου

6-37

SSL/TLS protocol stack


Το SSL αναπτύσσεται σε δύο layers
 SSL Record πρωτόκολλο
 παρέχει υπηρεσίες εμπιστευτικότητας
και ακεραιότητας δεδομένων,
προστασία από replay attacks πάνω από
μια προσανατολισμένη στη σύνδεση,
αξιόπιστη υπηρεσία μεταφοράς (TCP)
 Οι υπηρεσίες αυτές παρέχονται σε όλα
τα πρωτόκολλα του ανώτερου
επιπέδου
 SSL Handshake
 SSL Change Cipher
 SSL Alert

Network security essentials (International edition), William Stallings, Prentice-Hall, 2002


6-38

SSL/TLS σύνοδοι και συνδέσεις

 SSL/TLS Σύνοδος (Session)


 Μπορούμε να φανταστούμε μια SSL/TLSsession ως μια
security association.
 Το SSL/TLSsession ορίζεται από
 Session ID

 X.509 public-key certificate of peer (could be null for


client, mandatory for server KUS)
 Cipher spec:

 Encryption algorithm, HMAC message digest


algorithm, etc.
 Master key (MK): secret shared between the
client and server

6-39

SSL/TLS Record protocol


 Παρέχει δύο υπηρεσίες :
 Confidentiality:
 Shared secret key χρησιμοποιείται για συμμετρική κρυπτογραφία
του SSL/TLS payload
 Message Integrity & end-user verification:
 Shared secret key χρησιμοποιείται για παραγωγή MAC
 Λαμβάνει application message και εκτελεί:
 Fragmentation
 Compression
 Add a MAC (a shared secret key is used)
 Encryption (symmetric encryption)
 Appends an SSL/TLS record header
 Send the message to TCP
6-40

SSL/TLS Record protocol

DATAF1

 HMAC (a shared secret key is used)


 Based SHA2 or later hash algorithms
 Encryption (symmetric encryption)
 Block: IDEA, 3DES, AES…
 Stream: RC4-40 and RC4-128
 Για block encryption: padding προστίθεται
μετά το MAC

EMK [HMAC(C(DATAF1),MK) || C(DATAF1)] || HEADER


Network security essentials (International edition), William Stallings, Prentice-Hall, 2002

6-41

SSL/TLS Record Protocol – format


 Content Type (8): Το higher layers
protocol που θα χρησιμοποιήσει το
enclosed fragment.
 ChangeCipherSpec
 Alert
 Handsake
 Application data
 Major Version (8): Δηλώνει το major
version του SSL/TLS που
χρησιμοποιείται
 Minor Version (8): Δηλώνει το minor
version του SSL/TLS που
χρησιμοποιείται
 Compressed length (16): το μήκος
του compressed fragment σε bytes
(max size 214 bytes).
Network security essentials (International edition), William Stallings, Prentice-Hall, 2002
6-42

SSL/TLS Handshake protocol

 To πιο σύνθετο τμήμα του SSL


 Επιτρέπει σε Server και client να
 Αυθεντικοποιηθούν μεταξύ τους
 Server to Client mandatory
 Client to Server optional
 Διαπραγματευτούν encryption, hash algorithms και
cryptographic keys
 Χρήση πριν από όποια μετάδοση application data
 Εγκαθιδρύει σύνοδο

6-43

SSL/TLS Handshake protocol – Φάσεις


Φάση 1. Διαπραγμάτευση δυνατοτήτων. Εγκαθιδρύει σύνοδο,
διαπραγματεύεται ικανότητες μεταξύ των ομότιμων, οριοθετεί παραμέτρους και
αλγορίθμους κρυπτογράφησης (cipher stack), μεθόδους compression (για το SSL/TLS
record protocol), και συμφωνούνται αρχικά random numbers

Φάση 2. Αυθεντικοποίηση Server. O Server μπορεί να δώσει το πιστοποιητικό


του στον Client ή να ζητήσει το πιστοποιητικό του Client. Σηματοδοτεί τη λήξη της
πρώτης φάσης της χειραψίας .

Φάση 3. Αυθεντικοποίηση Client. O Client παρέχει το πιστοποιητικό του ( αν


έχει ζητηθεί), στέλνει την ανταλλαγή κλειδιών, και μπορεί να επαληθεύσει το
πιστοποιητικό του Server

Φάση 4. Τερματισμός Διαπραγμάτευσης. O Server και ο Client τροποποιούν το


(cipher stack). Σηματοδοτεί τη λήξη της χειραψίας.

Network security essentials (International edition), William Stallings, Prentice-Hall, 2002


6-44

SSL/TLS Handshake protocol – Φάση 1


Client Hello message
 Version: Η μεγαλύτερη έκδοση του πρωτοκόλλου που o Client
μπορεί να υποστηρίξει.
 Random: Ένας 32-bit τυχαίος αριθμός.
 Secure random number generator
 Λειτουργούν ως nonces για να αποτρέψουν replay attacks κατά τη διαπραγμάτευση κλειδιών
 Session ID: Αναγνωρίζει μοναδικά την SSL/TLS σύνοδο.
 Value 0 : client wants to establish a new connection on a new session,
 Value :Non zero:client wants to update parameters of an existing connection or create a
new connection on this session.
 Cipher Suites : Μια λίστα με τις κρυπτογραφικές μεθόδους που ο
client προτιμά
 key exchange ,encryption, hashing
 Compression Methods: μεθόδους συμπίεσης που ο client μπορεί να
υποστηρίξει.

6-45

SSL/TLS Handshake protocol – Φάση 1

Cipher Suite παράμετρος:


 Υπόλοιπα τμήματα της παραμέτρου
 Cipher algorithm
 MAC algorithm: SHA-1/2
 Cipher Type: Block or Stream
 Hash Size: 20 [SHA-1] bytes or 256 bits SHA2
 κοκ
6-46

SSL/TLS Handshake protocol – Φάση 1


Παράδειγμα.
Ο Client στέλνει στον Server plaintext message για να
προτείνει παραμέτρους συνόδου
 Version:
 TLS1.3 if you can, else TLS 1.2
 Key Exchange:
 RSA if you can, else Diffie-Hellman
 Secret Key Cipher Method:
 TripleDES if you can, else AES
 Message Digest:
 SHA2 if you can, else SHA1
 Random Number:
 777,666,555

6-47

SSL/TLS Handshake protocol – Φάση 1


Παράδειγμα.
Ο Server απαντά στον Client με plaintext message για να
δηλώσει τις παραμέτρους συνόδου με βάση τις προτάσεις
του Client και τις δυνατότητές του
 Version:
 TLS 1.2
 Key Exchange:
 Diffie-Hellman
 Secret Key Cipher Method:
 ΑES
 Message Digest:
 SHA2
 Random Number:
 444,333,222
6-48

SSL/TLS Handshake protocol – Φάση 1


Server Hello message
 Version: Η μικρότερη έκδοση του πρωτοκόλλου που o Client
έχει προτείνει που είναι η μεγαλύτερη για τον Server
 Random: Ένας 32-bit τυχαίος αριθμός.
 Ανεξάρτητος από αυτόν που είχε διαλέξει ο Client

 Session ID:
 αν η πρόταση του Client ήταν non zero τότε η τιμή χρησιμοποιείται από τον Server,
 Διαφορετικά ο Server παράγει νέα session ID.

 Cipher Suites : Μια λίστα με τις κρυπτογραφικές μεθόδους που


ο Client έχει προτείνει και ο Server συμφωνεί
 Compression Methods: Η μέθοδος συμπίεσης που έχει
προτείνει Client και ο Server συμφωνεί

6-49

SSL/TLS Handshake protocol – Φάση 1

Cipher Suite παράμετρος:


 1ο τμήμα της παραμέτρου: Shared key exchange method
 Shared Key: χρήση σε conventional encryption και MAC
 RSA παράγει σταθερό (fixed on session) shared key
 Το συμμετρικό κλειδί κρυπτογραφείτε με το public key του Server.
 To public-key certificate είναι απαραίτητο
 Fixed Diffie–Hellman παράγει σταθερό (fixed on session) shared key
 DH key exchange. Το Server Certificate (από CA) περιέχει το DH pubic key του
Server και τις μεταβλητές : πρώτος αριθμός p και γεννήτορα g) YS=gXsmodp
 O Client παρέχει το DH pubic key του είτε σε certificate (αν απαιτείται Client
Authentication) ή στο key exchange message
 Ephemeral Diffie–Hellman παράγει εφήμερα, one-time shared keys
 Dynamic DH public keys
 Η πιο ασφαλής μέθοδος
 λόγω one-time shared keys
6-50

SSL/TLS auxiliary protocols


 Alert protocol.
 Διαχείριση SSL/TLS συνόδου,
 error messages (fatal, warnings)
 Fatal errors τερματίζουν τη σύνδεση
 Παραδείγματα
 Decompression failure, certificate_revoked, certificate_unknown, …
 Change cipher spec protocol.
 Το απλούστερο της οικογένειας
 Αποτελείται από ένα απλό message που ορίζεται από ένα byte
Χρησιμοποιείται για να ενημερώσει ολοκλήρωση αλλαγής cipher
suite.
 Από pending state σε current state
 Και τα δύο πρωτόκολλα χρησιμοποιούν το Record Protocol

6-51

SSL/TLS application ports

 https 443
 smtps 465
 ldaps 636
 pop3s 995
 ftps 990
 imaps 991
6-52

Pure TLS

 Ορίζεται στο
 RFC 2246 (1.0),
 RFC 4346 (1.1),
 RFC 5246 (1.2)
 RFC 8446 (1.3) 2018
 Πολλές ομοιότητες με SSLv3.
 Διαφορές:
 message authentication code: χρήση μόνο ΗΜΑC
 Προσθήκη νέων alerts
 O υπολογισμός master secret στο TLS είναι διαφορετικός
 Αποτροπή downgrade κατά το negotiation
 TLS1.1: Χρήση αλγόριθμου CBC
 TLS1.2: Χρήση αλγόριθμου SHA-256

6-53

TLS 1.3

 Στην τυπική έκδοση: το Εphemeral Diffie–Hellman είναι το


default key exchange mechanism
 Υποστηρίζει forward secrecy
 Forward secrecy:
 χαρακτηριστικό πρωτοκόλλων συμφωνίας κλειδιού
 παρέχει διαβεβαιώσεις ότι τα κλειδιά περιόδου σύνδεσης δεν θα
παραβιαστούν ακόμη και αν το ιδιωτικό κλειδί του server
παραβιαστεί
 προστατεύει προηγούμενα sessions από μελλοντικά compromises
μυστικών κλειδιών ή κωδικών πρόσβασης.
 Δημιουργώντας ένα μοναδικό κλειδί συνεδρίας για κάθε σύνοδο

Forward secrecy is designed to prevent the compromise of a long-term


secret key from affecting the confidentiality of past conversations.
6-54

SSL/TLS Συμπεράσματα

 Το SSL/TLS μπορεί να χρησιμοποιηθεί για την


εγκαθίδρυση ασφαλών, αξιόπιστων από άκρο σε άκρο
συνδέσεων μεταξύ clients και servers.
 Αυθεντικοποιεί τον εξυπηρέτη και προαιρετικά τον
εξυπηρετούμενο.
 Υποστηρίζει ανταλλαγή κλειδιών και παρέχει αυθεντικοποίηση
μηνυμάτων.
 Παρέχει υπηρεσίες εμπιστευτικότητας και ακεραιότητας
δεδομένων για TCP/IP εφαρμογές.
 Δεν παρέχει υπηρεσίες
 μη αποποίησης.
 προστασίας από επιθέσεις ανάλυσης κυκλοφορίας (traffic analysis
attacks).

6-55

CVE-2014-0160
the SSL Heartbleed bug

SSL Renegotiation Attack


6-56

CVE-2014-0160
the SSL Heartbleed bug

● Ευπαθείς εκδόσεις του OpenSSL δεν


επιβεβαιώνουν SSL μηνύματα για το μέγεθος της
μνήμης
● Bug στο OpenSSL version 1.0.1
● Non affected versions: .99 και 1.0.0
● Affected versions: 1.0.1 έως 1.0.1f
● Patched στην 1.0.1g
● έχει προσθέσει ελέγχους ορίων για να αποτρέψει
υπερχείλιση της προσωρινής περιοχής μνήμης

6-57

Τι είναι bleeding?

● Το bug επιτρέπει σε attackers να αντλούν 64K


chunks μνήμης
● γειτονικής στην SSL heartbeat ενός vulnerable host
● Είναι random chunks δεδομένων σε αυτόν τον χώρο
μνήμης
● Η επίθεση μπορεί να επαναληφτεί πολλές φορές
● Αντλεί περισσότερα random chunks of data
● 64k δε μοιάζει μα αρκετή μνήμη αλλά είναι!
6-58

Memory disclosure:
τι αντλεί ο επιτιθέμενος
● Shared master crypto keys
● Private keys server
● Usernames and Passwords
● Session identifiers
● Private data – data payloads

Netcraft: σχεδόν 30.000 από τα άνω των 500.000 πιστοποιητικών


X.509 που ήταν ευάλωτα στο κενό ασφαλείας Heartbleed
επανεκδόθηκαν ως τις 11 Απριλίου 2014

6-59

Λεπτομέρειες
 SSL V3 RECORD protocol – messages
 SSL V3 RECORD MESSAGE LENGTH

(limited to 4 bytes)
 Η επέκταση RFC 6520 (Heartbeat)

ελέγχει τις συνόδους SSL/TLS


 O υπολογιστής στη μία άκρη της
σύνδεσης στέλνει «Αίτημα Heartbeat»
(περιέχει το φορτίο=μία συμβολοσειρά και
το μήκος της).
 Ο άλλος υπολογιστής, πρέπει να
αποστείλει πίσω στον αποστολέα το ίδιο
ακριβώς μήνυμα.
 Όταν η μηχανή του θύματος απαντά
υπάρχει επιπλέον χώρος 64k της μνήμης του
διακομιστή που επιστρέφετε στον εισβολέα.
6-60

Common sites affected


Dropbox Norton
Facebook Skype
Google Wikipedia
Netflix Yahoo
How may sites are vulnerable
List (After vulnerability was reported publically)

http://mashable.com/2014/04/09/heartbleed-bug-websites-affected/

Search for site


https://lastpass.com/heartbleed/

How do I manage?
http://www.pcmag.com/article2/0,2817,2407168,00.asp
https://lastpass.com/misc_download2.php

6-61

SSL Renegotiation Attack

 διαδικασία επαναδιαπραγμάτευσης SSL που


επιτρέπει σε έναν εισβολέα να εισφέρει απλό
κείμενο σε αιτήματα του θύματος (client)
 ο εισβολέας δεν μπορεί να αποκρυπτογραφήσει
την επικοινωνία πελάτη-εξυπηρετητή. Απλά
εισφέρει (injects) μηνύματα
 Χρειάζεται MITM attacks (πχ ARP poisoning)
6-62

SSL Renegotiation Attack


 Επαναδιαπραγμάτευση SSL χρήσιμη όταν η σύνοδος SSL έχει
ήδη καθιερωθεί και πρέπει να λάβει χώρα έλεγχος ταυτότητας
πελάτη.
 Πχ σε e-shop που χρησιμοποιεί SSL (HTTPS).
 Αρχικά, στο site o πελάτης προσθέτει αντικείμενα στο καλάθι
 Όταν αποφασίσει αγορά με κάρτα ή paypal θα ζητηθεί να
συνδεθεί στο site
 Πρέπει η σύνοδος SSL να προσαρμοστεί ώστε να επιτρέπει
αυθεντικοποίηση. Όποιες και αν είναι οι πληροφορίες που
συγκεντρώθηκαν πριν (π.χ., στοιχεία στο καλάθι) πρέπει να
διατηρηθούν και μετά την είσοδο χρήστη.
 Η νέα σύνδεση SSL που πρέπει να καθοριστεί θα χρησιμοποιεί
την ήδη υπάρχουσα σύνοδο.

6-63

SSL Renegotiation Attack

 Χρησιμοποιώντας την επίθεση επανα-


διαπραγμάτευσης, ένας εισβολέας μπορεί να εισφέρει
εντολές σε μια συνεδρία HTTPs
 να εισάγει custom responses
 να εκτελέσει επιθέσεις άρνηση υπηρεσίας
 Ας υποθέσουμε ότι ένας πελάτης θέλει να συνδεθεί με
ένα online banking site.
 O πελάτης κινεί τη διαδικασία ρουτίνας χειραψίας TLS
6-64

SSL Renegotiation Attack


• Τα αίτημα πελάτη μπλοκάρεται
από τον MITM
• Ο MITM ξεκινά μια νέα σύνοδο
και ολοκληρώνει μια πλήρη
χειραψία TLS.
• Ο MITM στέλνει μια αίτηση GET
(ζητώντας κατάθεση στον
λογαριασμό του) στην
εφαρμογή τράπεζας.
• O Server ζητά
επαναδιαπραγμάτευση (Βήμα
4) για να γίνει login ο
αιτούμενος (εδώ ο attacker).
• Η χειραψία TLS που ξεκίνησε
στο βήμα 1 (και μπλοκαρίστηκε
από τον MITM), θα πρέπει
τώρα να προωθηθεί στο Server

6-65

SSL Renegotiation Attack


• Μια νέα χειραψία TLS πάνω από
την προηγουμένως established &
encrypted TLS session
• O πελάτης έχει αυθεντικοποιηθεί
στο βήμα 6 και έχει valid cookie
• Λόγω της επαναδια-
πραγμάτευσης, ο Server υποθέτει
ότι το αίτημα στο βήμα 4 έχει σταλεί
από πελάτη.
• το αίτημα που πηγαίνει στο Server
έχει ως εξής (θα ερμηνευθεί ως
νόμιμο και θα εκτελεστεί).
GET
/bank/sendmoney.asp?acct=attacker&
amount=100000
Ignore the rest: GET /bank
Cookie: validcookie
Μαριάς Ιωάννης
Επίκουρος Καθηγητής

marias@aueb.gr

Διάλεξη 10-1

Κβαντική κρυπτογραφία

 One-time pad
Πινακίδα μιας χρήσης
Ένα τυχαία παραγόμενο ρεύμα κλειδιών δεν
ξαναχρησιμοποιείται
Αν το κλειδί έχει ίδιο μήκος με μήνυμα
και χρησιμοποιείται μόνο μια φορά στο
κρυπτοσύστημα = 100% ασφαλές
Το πως θα συμφωνήσουν/αποκτήσουν
οι ενδιαφερόμενοι αυτό το μυστικό n-
bit κλειδί καθιστά μη πρακτική τη
χρήση του one-time-pad

Η κβαντική κρυπτογραφία προσπαθεί να


δώσει πρακτική λύση
Κβαντική κρυπτογραφία

Quantum Cryptography
 μια αποδοτική μέθοδος για συμφωνία και
ανταλλαγή κλειδιών
 Δίνει τη δυνατότητα δύο μέρη να κατασκευάσουν
ένα τυχαία παραγόμενο κοινό μυστικό κλειδί
 Γνωστό μόνο σε αυτά
 Άρα όχι τυχαίο για τα δύο άκρα

 Το οποίο μπορεί στη συνέχεια να χρησιμοποιηθεί


για κρυπτογράφηση και αποκρυπτογράφηση
μηνυμάτων μεταξύ τους
 Απαιτεί οπτικές ίνες μεταξύ των δύο μερών

Κβαντική κρυπτογραφία

 BB84 protocol: Charles H. Bennett and


Gilles Brassard (1984)
πόλωση των φωτονίων: φορείς της
πληροφορίας στο κβαντικό σύστημα
κρυπτογραφίας
Κβαντική κρυπτογραφία

 Πόλωση Φωτός
Φως: Η/Μ κύμα
Ας ασχοληθούμε μόνο με το Ηλεκτρικό πεδίο
(κόκκινο κύμα)
το κόκκινο βέλος εκτελεί ταλάντωση πάνω σε μια
γραμμή (κινείται πάνω σε νοητό άξονα, δεν
στρίβει αριστερά ή δεξιά)
 λέμε ότι είναι γραμμικά πολωμένο.
Επομένως, πόλωση: ταλάντωση κύματος σε μια
προτιμητέα διεύθυνση (πάνω σε μια γραμμή).
 Η γραμμή πάνω στην οποία ταλαντώνεται το κύμα
(ανεβοκατεβαίνει το βέλος) ονομάζεται άξονας
πόλωσης του κύματος.

Κβαντική κρυπτογραφία

 Πόλωση Φωτός
 Μία ακτίνα φωτός αποτελείται από άπειρα κύματα, τα
οποία είναι γραμμικώς πολωμένα, αλλά οι άξονες
πόλωσής τους σχηματίζουν τυχαίες γωνίες μεταξύ τους
 Έστω μαζεμένα πολλά ηλεκτρόνια που ταλαντώνονται.
 Τα ηλεκτρόνια αυτά ταλαντώνονται με την ίδια συχνότητα
(το ίδιο "γρήγορα") αλλά δεν ταλαντώνονται κατά μήκος
του ίδιου άξονα: άλλο μπορεί να κινείται αριστερά-δεξιά,
άλλο διαγωνίως κοκ,
 με τυχαίες γωνίες μεταξύ τους
Κβαντική κρυπτογραφία

 Τεχνητή Πόλωση Φωτός


 Υπάρχει τρόπος να μετατρέψουμε μη πολωμένο
φως (πχ του ήλιου) σε πολωμένο;
 Από συνιστάμενο κύμα που ταλαντώνεται σε τυχαίες
διευθύνσεις να προκύψει κύμα που να ταλαντώνεται σε
μοναδική προτιμητέα διεύθυνση
τεχνητός τρόπος: "πολωτές" (φίλτρα polaroid)
 όταν πέσει πάνω τους φως αφήνουν να περάσουν
μόνο κύματα που ταλαντώνονται παράλληλα με τον
οπτικό άξονά τους (του φύλλου)

Κβαντική κρυπτογραφία

 Αρχές BB84
 ένα σύνολο ορθογώνιων φίλτρων καλείται βάση
 Π.χ. οριζόντια/κάθετη (horizontal/vertical ή 0ο-90ο)
Το πρωτόκολλο χρησιμοποιεί δύο βάσεις
 0ο-90ο degree basis (+)
• Αναφέρεται ως Horizontal/Vertical ή H/V
 45ο-135ο degree basis (Χ)
• Αναφέρεται ως Diagonal ή D/Α
Alice: χρησιμοποιεί τα φίλτρα της (polarizers) για
να στείλει τυχαία φωτόνια στον Bob σε μία από
τις ακόλουθες 4 πολώσεις: 0,45,90,135 degree
Κβαντική κρυπτογραφία

 Αρχές BB84
Alice: χρησιμοποιεί τα φίλτρα της (polarizers) για
να στείλει τυχαία photons στον Bob σε μία από
τις ακόλουθες 4 πολώσεις:
μοίρες polarization bit
 0o ─ 1
 45o / 0
 90o | 0
 135o \ 1
 Bob χρησιμοποιεί φίλτρα του για να μετρήσει
κάθε πόλωση των φωτονίων που λαμβάνει
 Ή την (+) basis ή την (Χ) basis

Κβαντική κρυπτογραφία

 BB84 Βήμα 1 για μυστικό μήκους n bit


H Alice παράγει μια σειρά από 2*n φωτόνια
Κάθε ένα από αυτά περνάει τυχαία σε κάποιο
από τα τέσσερα φίλτρα (που αποτελούν δύο
βάσεις)
Το πολωμένο φωτόνιο στέλνεται στον Bob μέσω
ενός κβαντικού καναλιού επικοινωνίας
 Μέσο μετάδοσης τέτοιο ώστε να απομονώνει τις
κβαντικές καταστάσεις από αλληλεπιδράσεις με το
περιβάλλον
Αν φωτόνιο είναι πολωμένο ή\ στέλνει to
bit 1
Διαφορετικά στέλνει το bit 0
Κβαντική κρυπτογραφία

 BB84 Βήμα 2
Ο Bob λαμβάνει τα φωτόνια που έστειλε η Alice,
αλλά δεν ξέρει τι πόλωση έχει κάθε ένα από αυτά
 δεν γνωρίζει ποια από τις δύο βάσεις χρησιμοποίησε η
Alice για να πολώσει τα φωτόνια
Τυχαία επιλέγει μια από τις δύο βάσεις για κάθε
ένα από τα φωτόνια που λαμβάνει και κάνει τις
μετρήσεις του
Αν ο Bob χρησιμοποιήσει ίδια βάση με Alice θα
μετρήσει σωστά πόλωση και τιμή ενός bit
 Αν μετρήσει με διαφορετική βάση θα πάρει μια τυχαία
τιμή της πόλωσης και συνεπώς τυχαία τιμή για το bit
που έστειλε η Alice

Κβαντική κρυπτογραφία

 BB84 Βήμα 3
Ο Bob ανακοινώνει δημόσια ποιες βάσεις
χρησιμοποίησε για να μετρήσει κάθε ένα από τα
φωτόνια που έλαβε
 Αλλά δεν ανακοινώνει αποτέλεσμα των μετρήσεων του

 BB84 Βήμα 4
Η Alice ανακοινώνει δημόσια στον Bob σε ποιες
μετρήσεις χρησιμοποίησε τις σωστές βάσεις.
Κβαντική κρυπτογραφία

 BB84 Βήμα 5
Η Alice και ο Bob ‘κρατάνε’ τα bits όπου και οι
δύο χρησιμοποίησαν την ίδια βάση.
Σε αυτή τη φάση από τα 2*n bits που έστειλε η
Alice τα n τα μέτρησε σωστά ο Bob
 Ο Bob και η Alice μοιράζονται n bits μυστικής
πληροφορίας
• Κλειδιού
• Μυστικής τιμής
• κοκ

Κβαντική κρυπτογραφία

 BB84 Example
Κβαντική κρυπτογραφία

 Προσπάθεια Υποκλοπής BB84


Η Eve δεν γνωρίζει ποιες βάσεις χρησιμοποίησε η
Alice, όπως και ο Bob.
Διαλέγει τυχαία μια βάση με 50% πιθανότητες να
είναι η σωστή
Η Eve υποκλέπτει με επιτυχία 1 από τα 2 bits
Όμως όταν η Eve επιλέγει λάθος βάση αλλάζει
την πόλωση του φωτονίου.
Η Alice και ο Bob μπορούν να χρησιμοποιήσουν
το σφάλμα αυτό για να εντοπίσουν αν η
επικοινωνία τους παρακολουθείται.

Κβαντική κρυπτογραφία

 Προσπάθεια Υποκλοπής BB84


 Ανίχνευση ενδιάμεσου
Από τα bits που μοιράζονται, η Alice και ο Bob,
συμφωνούν να ανακοινώσουν τις τιμές
ορισμένων.
Αν δεν υπάρχει απόλυτη συμφωνία τότε ξέρουν
ότι η Eve προσπάθησε να υποκλέψει την
επικοινωνία τους και δρουν ανάλογα.
Συνήθως θεωρούν το κανάλι μη ασφαλές και
απορρίπτουν όλα τα bits που μοιράζονταν
Κβαντική κρυπτογραφία

 Προσπάθεια Υποκλοπής BB84


 Η Eve διαλέγει
τυχαία βάσεις
 Ή την (+) basis ή
την (Χ) basis
 Σε κάποιες θέσεις
bit θα έχει διαλέξει
ίδιες βάσεις με Αlice
και σε κάποιες
διαφορετικές

Κβαντική κρυπτογραφία

 Προσπάθεια Υποκλοπής BB84


 Στις θέσεις bit 2, 3
και 5 η Eve έχει
διαλέξει
διαφορετικές βάσεις
από Alice
 Για αυτές τις θέσεις
η τιμή που βρίσκει η
Eve είναι random
 Αλλά δεν είναι αυτό
το ζητούμενο
Κβαντική κρυπτογραφία

 Προσπάθεια Υποκλοπής BB84


 Το ζητούμενο είναι
τι θα καταλάβει ο
Βob και η Αlice στις
θέσεις 2 και 5 όπου
είχαν διαλέξει την
ίδια βάση
 Τα bits σε αυτήν τη
θέση θα
απορριφθούν

Ασφάλεια Δικτύων
Επιθέσεις από το εσωτερικό
 Επιθέσεις από χρήστες του συστήματος
 Η πιστοποίηση ταυτότητας κρατάει τους τρίτους εκτός
 Πολλές επιθέσεις όμως ξεκινάνε από μέσα
 Από χρήστες που γνωρίζουν το σύστημα
 Λογικές βόμβες (logic bombs)
 Κώδικας που κρύβεται από έναν προγραμματιστή της εταιρείας
 Όσο ο προγραμματιστής δουλεύει στην εταιρεία δεν γίνεται τίποτα
 Όταν φύγει όμως η βόμβα «εκρήγνυται»
 Μπορεί να αλλοιώνει αρχεία ή προγράμματα
 Έτσι ο προγραμματιστής εκβιάζει την εταιρεία
 Καταπακτές (trap doors)
 Κώδικας που παρακάμπτει ελέγχους ασφάλειας
 Επιτρέπει σε έναν προγραμματιστή να συνδέεται με ειδικό τρόπο
 Μπορεί να έχει πρόσβαση σε όλες τις εγκαταστάσεις

Επιθέσεις από το εσωτερικό

 Επιθέσεις από χρήστες του συστήματος


 Καταπακτές (trap doors)
 Παράδειγμα: το όνομα zzzzz μπαίνει χωρίς έλεγχο στο σύστημα
 Αντιμετωπίζεται με επιθεωρήσεις κώδικα (code reviews)
 Ο κώδικας ενός προγραμματιστή ελέγχεται από άλλους
 Ο προγραμματιστής πρέπει να εξηγεί πώς δουλεύει ο κώδικάς του
Επιθέσεις από το εσωτερικό

 Επιθέσεις από χρήστες του συστήματος


 Παραπλανητική σύνδεση (login spoofing/pishing)
 Χρησιμοποιείται σε δημόσιους υπολογιστές (π.χ. εργαστήρια)
 Πρόγραμμα που παριστάνει τη διαδικασία σύνδεσης
 Ο χρήστης δίνει όνομα και κωδικό ανυποψίαστος
 Το πρόγραμμα αποθηκεύει τα στοιχεία
 Εμφανίζει μήνυμα λάθος κωδικού και τερματίζει
 Ο χρήστης συνδέεται κανονικά στη συνέχεια
 Στα Windows αποφεύγεται με υποχρεωτική χρήση CTRL-ALT-DEL
 Ο κωδικός αυτός δεν μπορεί να ληφθεί από προγράμματα χρήστη

Αξιοποίηση σφαλμάτων κώδικα


 Σφάλματα που οδηγούν σε παραβιάσεις ασφάλειας
 Είτε στο λειτουργικό σύστημα
 Είτε σε εφαρμογές
 Υπάρχουν πολύ κοινά σφάλματα
 Αξιοποίηση των σφαλμάτων κώδικα
 Έγχυση (injection) δεδομένων και εντολών
 Εκτέλεση προβληματικού προγράμματος με κατάλληλη είσοδο
 Δημιουργία κελύφους με προνόμια διαχειριστή
 Προσκόμιση προγράμματος ζόμπι που περιμένει εντολές
 Ενεργοποίηση του προγράμματος ζόμπι
 χρήση ιού που κινείται από .exe σε .exe
 χρήση worm που κινείται από pc σε pc
Αξιοποίηση σφαλμάτων κώδικα
 Υπερχείλιση μνήμης
 Τα περισσότερα λειτουργικά συστήματα είναι γραμμένα σε C
 Η C δεν ελέγχει τα όρια των πινάκων κατά την πρόσβαση
 Πώς λειτουργεί η επίθεση μέσω υπερχείλισης;
 Έστω ότι μία συνάρτηση ζητάει μία παράμετρο από το
χρήστη
 Παράδειγμα: ένα όνομα ιστοσελίδας
 http://www.somesite.com/subpage/userinput.asp?parm1=(808)555-1212
 Το πρόγραμμα asp ορίζει έναν πίνακα 24 byte για την είσοδο
 Τα τηλέφωνα είναι αδύνατον να είναι μεγαλύτερα
 Ο εισβολέας όμως στέλνει 240 byte
 parm1=(808)555-1212ΙWILLSUTDOWNTHESERVERΙWILLSUTDOWNTHESERVER
ΙWILLSUTDOWNTHESERVER ΙWILLSUTDOWNTHESERVER ΙWILLSUTDOWNTHESERVER

 Αν δεν γίνει έλεγχος, τότε αυτά γράφονται εκτός ορίων


 Αντικαθιστούν τη διεύθυνση επιστροφής της συνάρτησης
 Περιλαμβάνουν και κώδικα πάνω στον οποίο επιστρέφουμε

Αξιοποίηση σφαλμάτων κώδικα


 Οργάνωση Μνήμης
Σωρός
αποθήκευση για δυναμικά δημιουργημένα δεδομένα
Στοίβα
αποθήκευση για κλήσεις συναρτήσεων και δεδομένα
επιστροφής

Ο εκτελέσιμος κώδικας χρήστη είναι στο κάτω άκρο


μνήμης. Οι εντολές προγραμμάτων μετακινούνται από
το κάτω μέρος (χαμηλές διευθύνσεις) της μνήμης προς
τα πάνω. Πάνω από αυτό είναι σταθερές και στοιχεία
δεδομένων των οποίων το μέγεθος είναι γνωστό κατά
το χρόνο μεταγλώττισης. Στη σωρό τα στοιχεία
δεδομένων των οποίων το μέγεθος μπορεί να αλλάξει
κατά την εκτέλεση.
Οργάνωση Μνήμης με
User και System Areas
Αξιοποίηση σφαλμάτων κώδικα
 Οργάνωση Μνήμης
Στόχος: privilege escalation
Εάν ένας buffer ξεχειλίζει προς τον χώρο συστήματος. O
εισβολέας εισάγει δεδομένα υπερχείλισης
Η δεκαεξαδική γραμματοσειρά 0x41 αναπαριστά
• ASCII γράμμα A, ή
• Αριθμό 65, ή
• Κώδικα εντολής “move the contents of register 1 to the
stack pointer”
Εάν βάλετε τη συμβολοσειρά δεδομένων "A" στη διαδρομή
εκτέλεσης εντολών, θα εκτελεστεί σαν να ήταν η εντολή.

Παράδειγμα: 0x1C είναι ο operation code της εντολής


Jump. Η μορφή της Jump είναι 1C Ptr, (σημαίνει εκτέλεση
την εντολή που βρίσκεται Ptr bytes ahead της τρέχουσας
εντολής, άρα το string 0x1C0A μεταφράζεται σε «jump
forward 10 bytes». Όμως, το ίδιο το 1C0A bit pattern
Οργάνωση Μνήμης με αναπαριστά τον αριθμό 7178 (σε 2 bytes), οπότε αν βάλω
User και System Areas Α=7178 στο execution path θα εκτελεστεί η jump= 0x1C0A.

Αξιοποίηση σφαλμάτων κώδικα


 Οργάνωση Μνήμης
Οι διαδικασίες προγράμματος (procedures) χρησιμοποιούν:
τοπικά δεδομένα, δεδομένα που χρησιμοποιούνται
αυστηρά εντός μίας procedure, καθώς και κοινά ή
καθολικά δεδομένα (global), τα οποία κοινοποιούνται
μεταξύ δύο ή περισσότερων procedures.
Τα τοπικά δεδομένα αποθηκεύονται δίπλα στον κώδικα
μιας procedure. Έτσι μια υπερχείλιση δεδομένων είτε μένει
εντός ενός του χώρου δεδομένων είτε διαχέεται σε μια
γειτονική περιοχή κώδικα.
Σε ένα πρόγραμμά σας τα δεδομένα από υπερχείλιση
καταλήγουν σε
• ένα άλλο κομμάτι των δεδομένων σας
• μια δική σας εντολή
• δεδομένα ή εντολή που ανήκουν σε πρόγραμμα σας
• δεδομένα ή εντολή που ανήκουν σε άλλο πρόγραμμα
Αξιοποίηση σφαλμάτων κώδικα
Παράδειγμα
for (i=0; i<=9; i++)
 Υπερχείλιση μνήμης sample[i] = ‘A’;
sample[10] = ‘B’

επηρεάζει αποτέλεσμα προγράμματος, δεν


επηρεάζει κανένα άλλο πρόγραμμα

το «B» υπερχειλίζει περιοχή προγράμματος


χρήστη. Εάν επικαλύπτει ήδη εκτελεσμένη
εντολή (η οποία δεν θα εκτελεστεί ξανά), τότε
κανένα αποτέλεσμα. Εάν επικαλύπτει εντολή
που δεν έχει ακόμη εκτελεστεί, το μηχάνημα
θα εκτελέσει εντολή με κωδικό λειτουργίας
0x42. Εάν δεν υπάρχει τέτοια εντολή το
σύστημα θα δώσει παράνομη εξαίρεση.

Οι ενδιαφέρουσες περιπτώσεις (από άποψη


ασφάλειας) εμφανίζονται όταν το σύστημα
κατέχει το χώρο αμέσως μετά το array που
ξεχειλίζει. Η διαρροή σε δεδομένα συστήματος
ή περιοχές κώδικα συστήματος παράγει
αποτελέσματα παρόμοια με αυτά του χώρου
του χρήστη: υπολογισμός με ελαττωματική
τιμή ή προσπάθεια εκτέλεσης μιας εντολής.

Αξιοποίηση σφαλμάτων κώδικα


 Υπερχείλιση μνήμης
Πρόγραμμα: Ανάλυση ευπαθειών
probs.c
probs.c:8:(Urgent) gets
#include <stdio.h> The input buffer can almost always be overflowed.
#include <string.h> Use fgets(buf,size,stdin) instead.
----------------
int main(void) { probs.c:9:(Very Risky) strcpy
char s1[100], s2[80]; This function is high risk for buffer overflows
Use strncpy instead.
puts("Enter a string: "); ----------------
gets(s1);
strcpy(s2, s1);
printf(s2);
return 0;
}

Τα περισσότερα προβλήματα ασφάλειας έχουν εντοπισθεί σε κώδικα C


Αξιοποίηση σφαλμάτων κώδικα
 Υπερχείλιση μνήμης
Boolean testPassword(void) { Αποτέλεσμα ευπαθειών
int password_correct = 0,
attempts = 0; Ο επιτιθέμενος εισάγει:
char buf[16]; AISTAKOMMATIAESYKAITOPASSWORD
Αλλοίωση τιμών μεταβλητών
while ((attempts < 3) && Η συνάρτηση επιστρέφει 1!
(password_correct == 0)) { Ο επιτιθέμενος έχει αυθεντικοποιηθεί
printf("Enter password: ");
gets(buf);
if (strcmp(buf, "secret") == 0) Προϋποθέσεις εμφάνισης επίθεσης:
password_correct = 1; Λήψη δεδομένων από μη αξιόπιστη πηγή
else • Πληκτρολόγιο,
attempts++; • δίκτυο,
} • αρχείο,
if (password_correct) return 1; • διαδιεργασιακή επικοινωνία
else return 0;
}

Αξιοποίηση σφαλμάτων κώδικα


 Υπερχείλιση μνήμης
Όταν η procedure A καλεί την procedure B, η A
pushes στον stack την return address (τρέχουσα τιμή
του program counter), τη διεύθυνση στην οποία θα
πρέπει να συνεχιστεί η εκτέλεση κατά την έξοδο της
Β, καθώς και τις τιμές παραμέτρων κλήσης.
stack pointer δείχνει στο σημείο λίγο πριν από την
οποία αυτή η διαδικασία Α ώθησε τις τιμές στη
στοίβα για την Β (δείχνει στην δ/νση μνήμης πριν
Stack Frame
όλα αυτά συμβούν).

Stack Frame
Αξιοποίηση σφαλμάτων κώδικα
 Υπερχείλιση μνήμης
Έστω procedure A καλεί την
B και η Β την C.

Σημαντικό που πρέπει να


παρατηρήσετε: ο μετρητής
προγράμματος. Εάν ο
εισβολέας αντικαταστήσει
τον μετρητή προγράμματος,
κάτι τέτοιο θα κατευθύνει
την εκτέλεση του
προγράμματος μετά την
επιστροφή της διαδικασίας
και αυτή η ανακατεύθυνση
Stack after Nested Procedure Calls είναι συχνά το βήμα για
εκμετάλλευση της
υπερχείλισης buffer

Αξιοποίηση σφαλμάτων κώδικα


 Υπερχείλιση μνήμης (stack smashing)(1)

 H στοίβα και ο σωρός αναπτύσσονται ο ένας προς τον άλλο


 Σε κάποιο σημείο συγκρούονται
 Το λειτουργικό παρακολουθεί μεγέθη τους και αποτρέπει σύγκρουση
 Εκτός αν το λειτουργικό δεν μπορεί να το γνωρίζει αυτό
 π.χ. αν γράψετε 15.000 bytes σε έναν δυναμικό χώρο σωρού για τον οποίο
ζητήσατε μόνο 15 byte,
 π.χ. αν γράψετε ή 8 bytes σε μια παράμετρο 4-byte
 Ο εισβολέας θέλει να αντικαταστήσει τη μνήμη στοίβας (stack
smashing) με σκόπιμο τρόπο
 Τα αυθαίρετα δεδομένα σε λάθος μέρος προκαλούν παράξενη
συμπεριφορά, αλλά συγκεκριμένα δεδομένα σε μια προβλέψιμη
τοποθεσία προκαλούν προγραμματισμένο αντίκτυπο.
Αξιοποίηση σφαλμάτων κώδικα
 Υπερχείλιση προσωρινής μνήμης (stack smashing)(2)
Τρόποι επίθεσης υπερχείλισης:
• Overwrite τον ProgCtr που είναι αποθηκευμένος στη στοίβα έτσι ώστε
όταν εξέρχεται η ρουτίνα, ο έλεγχος να μεταφέρεται σε διεύθυνση που
υποδεικνύεται από την τροποποιημένη διεύθυνση του ProgCtr .
• Overwrite μέρος του κώδικα σε χαμηλή μνήμη, αντικαθιστώντας του εισβολέα εντολές για
προηγούμενες δηλώσεις προγράμματος

• Overwrite τον
ProgCtr και των
δεδομένων στη
στοίβα έτσι ώστε ο
ProgCtr να δείχνει
τώρα στη στοίβα
(Compromised
Stack)
Compromised
Stack

Αξιοποίηση σφαλμάτων κώδικα


 Υπερχείλιση μνήμης
int status = 0; int tbl[5000]; Όταν εκτελείται η εντολή return μιας
συνάρτησης:
void f(int a, char *b, int c[1000]) {
– Καθαρίζεται η στοίβα από τυχόν τοπικές
int i, j;
double sum; μεταβλητές
…………………….. – Εξάγεται η διεύθυνση επιστροφής από τη
return; στοίβα και ο έλεγχος του προγράμματος
} μεταφέρεται εκεί
int main(int argc, char *argv[]) { Τι συμβαίνει αν η διεύθυνση επιστροφής
int x = 7, έχει υπερκαλυφθεί με δεδομένα;
y = 2; – Καλή περίπτωση: το πρόγραμμα
int t[2000];
καταρρέει
…………….
f(x + y, "str", &t[999]); – Κακή περίπτωση: πρόβλημα στην
} ασφάλεια
Αξιοποίηση σφαλμάτων κώδικα
 Υπερχείλιση μνήμης
Όταν εκτελείται η εντολή return μιας
7000 int status = 0; int tbl[5000]; συνάρτησης:
– Καθαρίζεται η στοίβα από τυχόν
1000 void f(int a, char *b, int c[1000]) { τοπικές μεταβλητές
int i, j;
double sum; – Εξάγεται η διεύθυνση επιστροφής
…………………….. από τη στοίβα και ο έλεγχος του
return ; [smashed jump to 600] προγράμματος μεταφέρεται εκεί
} Τι συμβαίνει αν η διεύθυνση
`
1100 int main(int argc, char *argv[]) { επιστροφής έχει υπερκαλυφθεί με
Stack int x = 7, δεδομένα;
… y = 2; – Καλή περίπτωση: το πρόγραμμα
int t[2000]; καταρρέει
…………….
1180 f(x + y, "str", &t[999]); – Κακή περίπτωση: πρόβλημα στην
1184 y++; }  return ασφάλεια
0600 exec(char *path, char *argv0, …); πχ exec("sh", "/bin/sh", NULL);

Αξιοποίηση σφαλμάτων κώδικα


 Υπερχείλιση προσωρινής μνήμης
 Δυστυχώς αρκετές συναρτήσεις της C (όπως gets(), strcpy()) δεν
ελέγχουν το μήκος της εισόδου!
 Η καλή περίπτωση: Οι τιμές των δεδομένων που θα υπερχειλίσουν είναι
τυχαίες και η διεύθυνση που θα σχηματιστεί αντιστοιχεί:
 Σε άκυρες διευθύνσεις μνήμης
 Σε έγκυρες διευθύνσεις που περιέχουν τυχαία bytes
 Η κακή περίπτωση: Οι τιμές των δεδομένων που θα υπερχειλίσουν είναι
τυχαίες αλλά η διεύθυνση που θα σχηματιστεί αντιστοιχεί:
Σε κώδικα που παρείχε ο εισβολέας ως τμήμα των δεδομένων
Code

Σε επιλεγμένες συναρτήσεις βιβλιοθήκης του συστήματος με κατάλληλες


injection

παραμέτρους Π.χ. exec("sh", "/bin/sh", NULL);


 Ο εισβολέας κώδικας ουσιαστικά εκτελείται με ξένα προνόμια
 Μπορεί να έχει προνόμια διαχειριστή (κάνει ό,τι θέλει)
 Μπορεί να κατεβάσει κώδικα από το Διαδίκτυο
 Μπορεί να κάνει κάποιο πρόγραμμα αν εκτελείται αυτόματα
Αξιοποίηση σφαλμάτων κώδικα
 Υπερχείλιση προσωρινής μνήμης
 Εντοπισμός των προβλημάτων υπερχείλισης
 Δίνουμε μεγάλη είσοδο στο πρόγραμμα
 Αν καταρρεύσει εξετάζουμε την εικόνα της μνήμης του
 Αν έχουμε τον κώδικα πηγής βρίσκουμε πού είναι το πρόβλημα
 safety extensions στη C
Συνάρτηση Αντικαταστάτης
gets(myStr); fgets(myStr, 80, stdin);
scanf("%s", mystr); scanf("%80s", mystr);
sprintf(myStr, "%d%s%f", …); snprintf(myStr, 80, "%d%s%f", …);
sprintf(myStr, "%5d%.65s%8.2f", …);
strcpy(prayItFits, bigOne); strncpy(prayItFits, bigOne, 80);
strcat(smallStr, possiblyBig); strncat(smallStr, possiblyBig, 80 – strlen(smallStr));
while ((c = getchar()) != '\n') while ((idx < 80) && ((c = getchar()) != '\n'))
str[idx++] = c; str[idx++] = c;

Αξιοποίηση σφαλμάτων κώδικα


 Άμυνα σε Υπερχείλιση προσωρινής μνήμης
 Τρεις προσεγγίσεις άμυνας
 OS-based
 Stack Randomization
 randomizes την stack base addresses
 Image Randomization
 Πχ O/S boots σε μία από 256 configurations
 Μετατρέπει το O/S λιγότερο predictable σε attackers

 Compile-time
 Ενισχύει νέα προγράμματα που θα διατεθούν
 Canary Memory
 Run-time
 Εντοπίζει attacks σε existing programs
 Αποθήκευση return address (ra) σε θέσης μήνης και σύγκριση με την
ra του stack πριν την επιστροφή
Αξιοποίηση σφαλμάτων κώδικα
 Υπερχείλιση μνήμης
Canary Values Protection

T2=Ra2
T1=Ra1
Canary value=1
Ra2=

Canary value=7
Ra1=

Stack after Nested Procedure Calls

Κακόβουλο λογισμικό
 Κακόβουλο λογισμικό (malware)
 Δούρειοι ίπποι, σκουλήκια, ιοί, ransomwares, rootkits
 Κάποτε φτιαχνόταν από κακόβουλους ερασιτέχνες
 Τώρα φτιάχνεται από κακόβουλους επαγγελματίες
 Μπορεί να εγκαθιστά κερκόπορτα (back door) στο σύστημα
 Επιτρέπει τον έλεγχο της μηχανής από τρίτους
 Μια τέτοια μηχανή λέγεται ζόμπι ή bot
 Ένα μεγάλο σύνολο bot λέγεται botnet
 Τα δίκτυα αυτά ενοικιάζονται για μαζικές εργασίες
 Παράδειγμα: spaming, DDoS, BTC minning, password cracking
 Παρέχει πολύ ισχύ και κρύβει τον πραγματικό επιτιθέμενο
 Μπορεί να εγκαθιστά καταγραφέα πληκτρολογήσεων (keylogger)
 Οι κωδικοί και οι αριθμοί πιστωτικών καρτών στέλνονται αλλού
 Οι χρήστες καταλαβαίνουν ότι κάτι έχει συμβεί πολύ αργότερα
Κακόβουλο λογισμικό
 Κακόβουλο λογισμικό (malware)
 Μπορεί να κάνει υποκλοπή ταυτότητας (identity theft)
 Συλλογή δεδομένων για τον χρήστη μέσω keylogger / spyware και
αναζήτησης
 Ο εισβολέας μπορεί μετά να παραστήσει τον χρήστη
 Και πολλές άλλες παραλλαγές…
 Βιομηχανική κατασκοπεία ή σαμποτάζ
 Καταστροφή δεδομένων
 Κλείδωμα και λύτρα
 Διαγραφή μνήμης flash για αποτροπή εκκίνησης
 Γιατί υπάρχει τόσο πολύ κακόβουλο λογισμικό;
 Υπάρχουν λίγα λειτουργικά συστήματα
 Άρα υπάρχουν πολλοί παρόμοιοι στόχοι
 Πολλά συστήματα θυσιάζουν την ασφάλεια χάρη της ευχρηστίας
 Επιτρέπουν σύνδεση χωρίς ή με προφανείς κωδικούς

Κακόβουλο λογισμικό
 Δούρειοι ίπποι (trojan horses)
 Κακόβουλο λογισμικό κρυμμένο σε χρήσιμο πρόγραμμα
 Σε αντίθεση με ιούς&σκουλήκια: τα trojans δεν επιχειρούν να εισχωρήσουν σε
άλλα αρχεία ή να διαδοθούν σε άλλο pc/host
 παραπλανά χρήστες / μηχανές
 Οι χρήστες εγκαθιστούν το πρόγραμμα με τη ενέργειά τους
 Παράδειγμα: παιχνίδι, πρόγραμμα αναπαραγωγής μέσων
 Εναλλακτικά, ο χρήστης εκτελεί το πρόγραμμα κατά λάθος
 Πχ άνοιγμα attachment σε email
 clicking fake ad σε social media / web-site
 Στα περισσότερα συστήματα υπάρχει μία μεταβλητή PATH
 Δείχνει τη σειρά των καταλόγων με εκτελέσιμα προγράμματα
 Ο εισβολέας βάζει το πρόγραμμα σε εκτελέσιμο κατάλογο
 Λάθος ονόματα εντολών
 Παράδειγμα: ο χρήστης γράφει “la” αντί για “ls”
 Το “la” κάνει τη δουλειά του και μετά τυπώνει μήνυμα λάθους
Κακόβουλο λογισμικό
 Δούρειοι ίπποι (trojan horses)
 Παράδειγμα Αρχικών Trojan :
 subject Admin έχει read and write access στο file object pass.pwd
 subject Cracker μπορεί να γράψει πρόγραμμα που δημιουργεί νέο
object Trojan.exe
περιεχόμενο: cat pass.pwd >> myFile.txt
 χορηγεί στο subject Admin exe access στο Trojan.exe
 χορηγεί στο subject Cracker read access στο myFile.txt
 Το subject Cracker μεταμφιέζει το πρόγραμμα ως «νόμιμο» (π.χ.,
από Trojan.exe σε ls) και το
Αποθηκεύει στο δίσκο ή
Το στέλνει στο subject Admin
Όταν το subject Admin εκτελεί το πρόγραμμα, το πρόγραμμα έχει τα
ίδια permissions με το subject Admin και αποκαλύπτει τα περιεχόμενα
του pass.pwd στο subject Cracker στο αρχείο myFile.txt

Κακόβουλο λογισμικό
 διαδεδομένος Gh0stRAT – 2009
 Shedun (Android) 2015
 ΜEMZ trojan για Microsoft Windows 10 virtual machine
 Σήμερα δημιουργεί έναν backdoor με ελεγκτή (C&C) ο οποίος
αποκτά μη εξουσιοδοτημένη πρόσβαση στον υπολογιστή.
 Πρόσβαση σε προσωπικά στοιχεία χρηστών, όπως τραπεζικές
πληροφορίες, κωδικούς πρόσβασης, credit κάρτες …
 Διαγραφή αρχείων ενός χρήστη
 Οι επιθέσεις Ransomware εκτελούνται συχνά μέσω trojan.
 Διαφορά μεταξύ ενός trojan και ενός bot : τρόπος που διαχέονται
 Τυχαίος τρόπος σε bot: στο bot μπορεί να επιλέγεται να σαρωθεί ένα
τυχαίο σύνολο διευθύνσεων IP κάθε μέρα
 Σε trojan προορίζεται για μια πιο στοχοθετημένη- μια συγκεκριμένη
μηχανή ή ένα συγκεκριμένο σύνολο σε ένα δίκτυο.
 Κοινές απάτες με δούρειους ίππους
 Espionage/Leakage και Damage
Κακόβουλο λογισμικό
 Ιοί (viruses)
 Πρόγραμμα που αναπαράγεται μόνο του, τοπικά σε ένα υπολογιστή
 Συνήθως προσκολλάται σε άλλα εκτελέσιμα προγράμματα
 Όταν εκτελείται το μολυσμένο πρόγραμμα, μολύνει και άλλα
 Λειτουργία των ιών
 Αρχικά ο δημιουργός μολύνει ένα πρόγραμμα και το διαδίδει
 Όποτε εκτελείται το πρόγραμμα πρώτα μολύνει και άλλα
 Μετά εκτελεί τον κύριο κώδικά του (πχ σε συγκεκριμένη μέρα)
 Ιοί εκτελέσιμου προγράμματος
 Μολύνει εκτελέσιμα προγράμματα
 Ιοί αντικατάστασης (overwriting viruses)
 Αντικαθιστά πλήρως το μολυσμένο πρόγραμμα
 Αρχικά γράφει τον εαυτό του στο δίσκο
 Στη συνέχεια βρίσκει εκτελέσιμα προγράμματα
 Αντικαθιστά τον κώδικά τους με τον δικό του

Κακόβουλο λογισμικό
 Ιοί εκτελέσιμου προγράμματος
 Ιοί αντικατάστασης (overwriting virus)
 Συνήθως όμως δεν μολύνουμε αμέσως τα πάντα
 Θέλουμε ο ιός να εξαπλωθεί χωρίς να γίνει αντιληπτός
 Μολύνουμε ορισμένα μόνο εκτελέσιμα (πιθανοτικά)
 Αποφεύγουμε τα ήδη μολυσμένα αρχεία (σπατάλη χρόνου)
 Δεν αλλάζουμε το μέγεθος και την ώρα τροποποίησης των αρχείων
 Παρασιτικοί ιοί (parasitic viruses)
 Ο ιός αντικατάστασης γίνεται γρήγορα αντιληπτός
 Ο χρήστης παρατηρεί ότι το μολυσμένο πρόγραμμα δεν λειτουργεί
 Ο παρασιτικός ιός προσαρτάται στο εκτελέσιμο πρόγραμμα
 Το πρόγραμμα λειτουργεί κανονικά παρά τον ιό
 Ο κώδικας μπορεί να μπει σε αρχή, μέση ή τέλος του προγράμματος
 Αν μπει στην αρχή ίσως να χρειαζόμαστε μετάθεση κώδικα
Κακόβουλο λογισμικό

 Ιοί εκτελέσιμου προγράμματος


 Παρασιτικοί ιοί (parasitic viruses)
 Συνήθως ο κώδικας τοποθετείται στο τέλος
 Αρκεί να είναι ο ιός μόνο μεταθέσιμος
 Είτε στην αρχή είτε στο τέλος, ο ιός αλλάζει το μέγεθος του αρχείου
 Πολλά συστήματα ευθυγραμμίζουν τα τμήματα (π.χ. ανά 512 byte)
 Ο ιός μπορεί να κρύβεται στα κενά στο τέλος των τμημάτων
 Οι ιοί αυτοί λέγονται ιοί οπών (cavity viruses)

Κακόβουλο λογισμικό
 Πώς εξαπλώνονται οι ιοί;
 Συχνά ξεκινάμε από ένα μολυσμένο δωρεάν πρόγραμμα
 Το πρόγραμμα διανέμεται μέσω ιστοσελίδων
 Όταν εκτελεστεί μολύνει άλλα προγράμματα
 Μπορεί έτσι να μολυνθούν τομείς εκκίνησης μηχανών
 Μπορεί να εκτελεστεί κατά λάθος και από τον διαχειριστή
 Εναλλακτικά το πρόγραμμα στέλνεται μέσω e-mail
 Συνήθως με ψεύτικη διεύθυνση αποστολέα
 Και με θέμα το οποίο να τραβάει την προσοχή
Κακόβουλο λογισμικό
 Φάσεις ιών Δομή
 Φάση ύπνωσης – Ο ιός ενός ιού
είναι αδρανής
 Φάση διάδοσης - Ο ιός
τοποθετεί ένα ακριβές
αντίγραφό του σε άλλα
προγράμματα
 Φάση πυροδότησης –
Ο ιός ενεργοποιείται για
να εκτελέσει τη λειτουργία
για την οποία προοριζόταν
 Φάση εκτέλεσης –
Εκτελείται η λειτουργία

Κακόβουλο λογισμικό
 Σκουλήκια (worms)
 Διαφορά μεταξύ ιού και σκουληκιού: Το worm δεν χρειάζεται να
επισυνάπτεται σε άλλο (host) πρόγραμμα. Είναι αυτόνομο.
 H ζημιά που προκαλείται από ιό είναι κυρίως τοπική (σε μια μηχανή). Το
warm αυτό-εξαπλώνεται
 Το σκουλήκι του Internet (1998)
 Βασίζεται σε κενά ασφάλειας στο BSD UNIX
 Αρχικά δοκίμαζε να εκτελεστεί με rsh (remote shell)
 Μετά δοκίμαζε ένα σφάλμα υπερχείλισης στο finger
 Τέλος δοκίμαζε ένα σφάλμα του sendmail
 Το σκουλήκι εκτελούσε τον βασικό του κώδικα
 Ο κώδικας αυτός κατέβαζε τον κυρίως κώδικα μέσω Internet
 Μετά δοκίμαζε να σπάσει όσους κωδικούς μπορούσε
 Με κάθε σπασμένο κωδικό δοκίμαζε να μπει με rsh αλλού
 Αν έβρισκε αντίγραφό του σε μια μηχανή δεν έκανε νέο
 Μία φορά στις οκτώ όμως, έκανε και νέο αντίγραφο
 Τελικά το δίκτυο γέμισε σκουλήκια και κατέρρευσε
 Η CERT δημιουργήθηκε για να μην ξανασυμβεί το ίδιο
Κακόβουλο λογισμικό
 Σκουλήκια (worms)
 Morris worm (1998).
 1ος που έλαβε μεγάλη προβολή
 Γράφτηκε από Robert Morris (PhD Cornell)
 Υιός ενός chief scientist της NSA’s Security Center
 Released με χρήση account φίλου του (MIT)
 Γρήγορα εξαπλώθηκε (χρήση BSD fingerd και sendmail bugs)
 Διάφορες καταστάσεις ενεργοποίησης
 Εντατικό ψάξιμο σε αρχεία λειτουργικού για άλλους hosts προς
εξάπλωση
 read file /.rhosts searching for other machines to break later
 reads file /etc/passwd. publicly readable file. Contains a list of all the users
authorized to use a machine, along with their encrypted passwords.
 Cracks passwords
 www.snowplow.org/tom/worm/worm.html
 The Melissa Worm (1999):
 Microsoft Word / Outlook

Κακόβουλο λογισμικό
 Σκουλήκια (worms). Morris worm (1998).
Κακόβουλο λογισμικό
 Σκουλήκια (worms). Morris worm (1998).
 Δύο Μέρη
 Main program
 Διάδοση worm.
 Αναζήτηση άλλων υπολογιστών που θα μπορούσαν να γίνουν infected
 Εύρεση τρόπων για διείσδυση αυτών των υπολογιστών
 Vector program (99 lines of C)
 Compiled & run σε infected υπολογιστές
 Forks child για συνέχιση του infection
 Ο Parent προσπαθεί να βρεί new hosts
 Ενδιαφέρουσες πρωτοτυπίες
 Self-hiding
 Worm Program is shown as 'sh' when ps

 Worm Files didn’t show up in ls

 Find targets using several mechanisms:


 'netstat -r -n‘, /etc/hosts, …

Κακόβουλο λογισμικό
 Σκουλήκια (worms)
 Morris worm (1998).
 Vector program (99 lines of C)
 Finger output
Vector 1. Debugfinger
feature
arthur.cs.purdue.edu% of sendmail
ninghui
Login Sendmail
 name: Listens on portIn25
ninghui (SMTP
real port) Li
life: Ninghui
Directory: /homes/ninghui Shell: /bin/csh
 Ορισμένα συστήματα της τότε εποχής ήταν compiled με το DEBUG

option
Since Sep on
28 14:36:12 on pts/15 from csdhcp-120-173 (9 seconds idle)
Newmail received
Debug Tue Sep
feature δίνει28δυνατότητα
14:36:04 2015;
αποστολής shell script και execute on
unreadthe
since Tue Sep 28
targeted host 14:36:05 2015

 Vector 2. Exploiting fingerd


 Fingerd Listen on port 79
 It uses the “bad” function gets
 Fingerd expects an input string
 Worm writes long string to internal 512-byte buffer
 Overrides return address to jump to shell code
Κακόβουλο λογισμικό
 Σκουλήκια (worms)
 Morris worm (1998).
 Vector program (99 lines of C)
 Vector 3. Password cracking
 /etc/host.equiv – system wide trusted hosts file
 /.rhosts and ~/.rhosts – users’ trusted hosts file
 Ο worm εισέρχεται μέσω του fingerd και λειτουργεί ως δαίμονας για να
σπάσει λογαριασμούς από το /.rhosts και ~/.rhosts
 Trusted machines χρησιμοποιούν ίδια user accounts
 Για μη trusted διαβάζει το /etc/passwd και χρησιμοποιεί κοινές
συμβολοσειρές κωδικών και τοπικό λεξικό για να κάνει επίθεση λεξικού
 Vector 4. Re-damage with probability
 Ένας host μπορεί επανειλημμένα να γίνει compromised
 Ρωτά τον host αν είναι compromised
 Ακόμα και αν είναι θα ξαναγίνει compromise με probability 1/8

Κακόβουλο λογισμικό
 Σκουλήκια (worms)
 MyDoom worm (2004)

 26 January 2004:
 On 1 February 2004, about 1 million computers infected with Mydoom
begin a massive DDoS attack

 Nimda worm (2001)


 A logic bug in IE’s
 E-mails itself as an attachment (every 10 days)
 Copies itself to shared disk drives on networked PCs
 Exploits various IIS directory traversal vulnerabilities Example of a
directory traversal attack
 Appends JavaScript code to Web pages
Τρόποι άμυνας
 Τεχνικές εναντίων των ιών
 Συνήθως μιλάμε για αντιβιοτικά (antivirus) προγράμματα
 Αντιμετωπίζουν ιούς, σκουλήκια και λογισμικό κατασκοπίας
 Για κάθε τεχνική των αντιβιοτικών, υπάρχει και αντίμετρο
 Αγώνας δρόμου ανάμεσα σε κακόβουλο λογισμικό και αντιβιοτικά
 Σαρωτές ιών (virus scanners)
 Οι κατασκευαστές τους μελετούν συνεχώς νέους ιούς
 Μελετούν τον κώδικα και τη συμπεριφορά του ιού
 Καταγράφουν σε μία βάση τα χαρακτηριστικά του ιού
 Οι σαρωτές αντιπαραβάλλουν τα προγράμματα με τη βάση
 Πρέπει να ενημερώνονται τακτικά (μέσω δικτύου πια)
 Πρέπει να κάνουν πολύ γρήγορη αναζήτηση
 Πρέπει να αναγνωρίζουν μικροπαραλλαγές του ιού
 Συμβιβασμός ακρίβειας και εύρους ελέγχων

Τρόποι άμυνας

 Σαρωτές ιών (virus scanners)


 Ορισμένοι σαρωτές ελέγχουν τα μήκη των αρχείων
 Αντίμετρα από τους ιούς
 Συμπίεση του προγράμματος για να μην αλλάξει μέγεθος
 Κρυπτογράφηση του κώδικα για να μην μοιάζει με τη βάση
 Ο σαρωτής μπορεί να ψάξει για τον κώδικα αποκρυπτογράφησης!
Τρόποι άμυνας

 Σαρωτές ιών (virus scanners)


 Πολυμορφικός ιός: αλλάζει λίγο σε κάθε αντιγραφή
 Χρησιμοποιεί μια μηχανή μετάλλαξης (mutation engine)
 Προσθήκη κενών εντολών (NOP) (b)
 Προσθήκη εντολών που δεν έχουν αποτέλεσμα (c)
 Προσθήκη περιττών εντολών (d)
 Αντιμετάθεση εντολών (e)

Τρόποι άμυνας
 Αποφυγή ιών
 Οι χρήστες πρέπει να προσέχουν τι κάνουν
 Προτιμάμε τα ασφαλή λειτουργικά συστήματα
 Πρέπει να διακρίνουν κατάσταση χρήστη και πυρήνα
 Ο πυρήνας πρέπει να είναι όσο γίνεται μικρός
 Εγκαθιστούμε μόνο λογισμικό από αξιόπιστες πηγές
 Χρησιμοποιούμε και ενημερώνουμε το αντιβιοτικό μας
 Δεν ανοίγουμε συνημμένα αρχεία με ενεργό περιεχόμενο
 Απενεργοποιούμε μακροεντολές
 Παίρνουμε συχνά αντίγραφα ασφαλείας
 Κρατάμε περισσότερα από ένα
 Αλλιώς μπορεί να είναι μολυσμένο και το αντίγραφο
 Δεν εκτελούμε λογισμικό από άγνωστες πηγές
 Κλασική μέθοδος διανομής ιών
Τρόποι άμυνας

 Υπογραφή κώδικα (code signing)


 Πώς ξέρουμε ότι το λογισμικό που κατεβάσαμε είναι το σωστό;
 Χρήση ψηφιακών υπογραφών από τον κατασκευαστή
 Ουσιαστικά υπογράφεται η σύνοψη του κώδικα με το ιδιωτικό κλειδί
 Ο χρήστης επιβεβαιώνει την υπογραφή με το δημόσιο κλειδί
 Τα δημόσια κλειδιά πιστοποιούνται από μια αρχή πιστοποίησης

Παραπλανητικός Κώδικας
Megasoft = MS (Λειτουργικό μας)
Third Trusted Party entity = TTP υπογράφει ψηφιακά τα νόμιμα προγράμματα P=p.exe
Δημιουργός του P=p.exe

Signage of program P: S=EKRttp(H(P))||P


Validation before execution: DKUttp(EKRttp(H(P))=H(P)= h1
H(P)=h2
if h1 == h2 τότε εγκατάσταση ή εκτέλεση του P

Στόχος επιτιθέμενου: να βρει Infected code P’ !=P : Η(P')=H(P)


Collision on hash H(P)

S=EKRttp(H(P))||P’
DKUttp(EKRttp(H(P))=H(P)=h1
H(P’) = h2
if h1 == h2 τότε εγκατάσταση ή εκτέλεση του P’
Τρόποι άμυνας
 Ανίχνευση εισβολής με βάση μοντέλο
 Υλοποιείται από συστήματα IDS
 Έχουμε ήδη αναφέρει τα IDS
 Παράδειγμα: στατική ανίχνευση εισβολής με βάση μοντέλο
 Κάθε πρόγραμμα μοντελοποιείται με έναν γράφο κλήσεων
 Ο γράφος παράγεται από τον μεταγλωττιστή
 Ο γράφος καθορίζει ορισμένες ακολουθίες κλήσεων
 Ο δεσμοφύλακας ελέγχει αν ακολουθείται κάποια από αυτές
 Αν έχουμε υπερχείλιση ή ιό, η ακολουθία αλλάζει
 Ο δεσμοφύλακας εντοπίζει το πρόβλημα
 Δοχείο μελιού (honeypot)
 Σύστημα ελάχιστα προστατευμένο με «ενδιαφέρον» περιεχόμενο
 Τοποθετείται επίτηδες στο δίκτυο για να δεχτεί επιθέσεις
 Το σύστημα IDS μελετάει έτσι τους επιτιθέμενους

Τρόποι άμυνας

 Ανίχνευση εισβολής με βάση μοντέλο


 Παράδειγμα: πρόγραμμα και γράφος κλήσεων
Τρόποι άμυνας
 Αμμοπαγίδα (sandbox)
 Περιορισμός σε συγκεκριμένες περιοχές
διευθύνσεων
 Εκτέλεση κώδικα μόνο μέσα στην αμμοπαγίδα
κώδικα
 Προσπέλαση δεδομένων μόνο μέσα στην
αμμοπαγίδα δεδομένων
 Online sandboxes
 http://camas.comodo.com/
 http://www.sunbeltsecurity.com/sandbox/
 http://www.threatexpert.com/filescan.aspx
 http://www.joebox.ch/
 http://anubis.iseclab.org/index.php

Τρόποι άμυνας
 Αμμοπαγίδα (sandbox)
 Ο κώδικας ελέγχεται εν μέρει στατικά
 Οι απόλυτες διευθύνσεις πρέπει να είναι μέσα στις αμμοπαγίδες
 Ορισμένα σημεία όμως πρέπει να ελέγχονται δυναμικά
 Εντολές με σχετικές διευθύνσεις (με βάση τον PC)
 Προσθήκη κώδικα ελέγχου πριν από κάθε αναφορά
 Χρειάζονται δύο καταχωρητές δεσμευμένοι από το σύστημα
 Αντιγραφή διεύθυνσης σε καταχωρητή ελέγχου 1
 Απομόνωση του προθέματος με ολίσθηση
 Σύγκριση με πρόθεμα στον καταχωρητή ελέγχου 2
 Αν δεν ταιριάζει, παγίδευση της αναφοράς
 Οι κλήσεις συστήματος ελέγχονται από τον ελεγκτή αναφορών
 Εισαγωγή κώδικα μαζί με τον κώδικα ελέγχου διευθύνσεων
 Χρήση αρχείου διευθέτησης για το τι επιτρέπεται να εκτελεστεί
Τρόποι άμυνας

Εντολές με σχετικές διευθύνσεις (με βάση τον PC)


Προσθήκη κώδικα ελέγχου πριν από κάθε αναφορά:
Χρειάζονται δύο καταχωρητές δεσμευμένοι από το σύστημα
Αντιγραφή διεύθυνσης σε καταχωρητή ελέγχου 1
Απομόνωση του προθέματος με ολίσθηση
Σύγκριση με πρόθεμα στον καταχωρητή ελέγχου 2
Αν δεν ταιριάζει, παγίδευση της αναφοράς

 Αμμοπαγίδα (sandbox)
 Κάθε περιοχή έχει διευθύνσεις με ένα κοινό πρόθεμα
 Παράδειγμα: διαίρεση 256 ΜΒ σε 8 περιοχές των 32 MB

Αμμοπαγίδα (sandbox)
 Sandboxie
 Κατεβάσαμε ένα εκτελέσιμο αρχείο από το δίκτυο. Δεν το
εμπιστευόμαστε.
 Το dnadbox Εκτελεί οτιδήποτε επιλέξουμε στο «απομονωμένο”
περιβάλλον
 Δεν μπορεί να κάνει μόνιμες αλλαγές στο σύστημα
 Συνδυάζεται με Buster Sandbox Analyzer
 Ελέγχει το περιβάλλον που δημιουργεί το sandboxie για αλλαγές που
προκύπτουν μετά την εκτέλεση οποιουδήποτε προγράμματος.
Κακόβουλο λογισμικό
 Ransomware (λυτρολογισμικό)
 Πρόγραμμα που κρατάει ένα σύστημα υπολογιστή, ή τα δεδομένα
που περιέχει, ως όμηρο εναντίον του χρήστη του ζητώντας λύτρα.
 Απενεργοποιεί μια βασική υπηρεσία συστήματος ή Κλειδώνει την οθόνη κατά
την εκκίνηση του συστήματος (Locker ransomware)
 Κρυπτογραφεί ορισμένα από τα προσωπικά αρχεία του χρήστη (Crypto
ransomware)
 υποκλέπτει δεδομένα, τα οποία, όμως απειλεί ότι θα κοινοποιήσει ή κοινοποιεί
σταδιακά (Leakware/Doxware)
 Web Server Encrypting Ransomware Κρυπτογραφεί δεδομένα στο site.
 Αναφέρονται ως cryptoviruses, cryptotrojans or cryptoworms

 Ο χρήστης θύμα
 πρέπει να εισάγει έναν κωδικό που θα λάβει μόνο μετά την πληρωμή του
εισβολέα
 Ή να αγοράσει ένα εργαλείο αποκρυπτογράφησης ή αφαίρεσης

Κακόβουλο λογισμικό
 Ransomware (λυτρολογισμικό)

CRYPTO type Ransomware


Ισχυρή κρυπτογράφηση. Μόλις το ransomware
διεισδύσει στη συσκευή του θύματος, το κακόβουλο
λογισμικό σιωπηλά προσδιορίζει και κρυπτογραφεί
πολύτιμα files

Locker type Ransomware


Computer locker. Μόλις το ransomware διεισδύσει στη
συσκευή του θύματος, το κακόβουλο λογισμικό ΔΕΝ
κρυπτογραφεί πολύτιμα files αλλά αρνείται πρόσβαση
σε αυτά, κλειδώνοντας το user interface
Κακόβουλο λογισμικό
 Ransomware (λυτρολογισμικό)

 Οι επιθέσεις ransomware εκτελούνται συνήθως μέσω ένός


Trojan μεταμφιεσμένο ως νόμιμο αρχείο που ο χρήστης
παραπλανάται να κατεβάσει ή να ανοίξει όταν φτάσει ως
συνημμένο email.
 Ή εξαιτίας αδύναμων/κλεμμένων credentials
 97% των phishing emails σχετίζονται με ransomware
 1989: πρώτο ransomware γνωστό ως AIDS trojan
 181,5 εκ επιθέσεις ransomware τους πρώτους έξι μήνες του
2018. (αύξηση 230% σε σχέση με το 2017)
 70% των επιχειρήσεων που μολύνονται πληρώνουν λύτρα
 45% των επιχειρήσεων που μολύνονται ανακτούν data και έλεγχο
 Από 200$ η τιμή ξεκλειδώματος έως … ?

Κακόβουλο λογισμικό
 Ransomware (λυτρολογισμικό)

TrendMicro analysis
Κακόβουλο λογισμικό
 Ransomware (λυτρολογισμικό)
 Εργαλεία Ransomware:
 Reveton, CryptoLocker, TorrentLocker, CryptoWall, WannaCry, Petya, Bad
Rabbit, SamSam, DarkSide, Alcatraz Locker, Ransom.Crysis, Stampado,
Legion
 Cryptolocker
 propagated using the Gameover ZeuS.
 Encrypts certain types of files stored on local drives usin RSA public-key cryptography The
private key stored only on the malware's control servers.
 Offers to decrypt the data if a payment is made by a stated deadline.
 Ransomware-as-a-service (RaaS): Russia-based group Revil
 In May 2015 Macfee found the Tox site on the ‘dark web’.
 Used Tor / Registration was free, and payments to BitCoin address to receive payment.
 Executable created for distribution.
 20% cut from any extorted profits.

 Ransomware removal tools


 Crypt888, Spybot Search & Destroy (Windows, Freeware), ComboFix
(Windows, Freeware), SUPERAntiSpyware (Windows, not free), Malwarebytes'
Anti-Malware (Windows, not free)
https://www.enisa.europa.eu/topics/incident-response/glossary/ransomware
https://www.cisa.gov/stopransomware/resources

Κακόβουλο λογισμικό
 Rootkits
 Πρόγραμμα που επιτρέπει τη συνεχή προνομιακή πρόσβαση σε έναν
υπολογιστή, ενώ αποκρύπτει ενεργά την παρουσία του από τους
διαχειριστές, ανατρέποντας την τυπική λειτουργικότητα του
λειτουργικού συστήματος ή άλλες εφαρμογές.
 hiding processes, files, opened network connections, etc
 User-level rootkits
 Αντικατάσταση utilities όπως ps, ls, ifconfig
 Ανιχνεύσιμο πχ από το tripwire
 Rootkit υπερεπόπτη (root)
 Εκτελεί το κανονικό λειτουργικό σύστημα ως root
Κακόβουλο λογισμικό
 Rootkits
 Rootkit πυρήνα (kernel)
 Κρύβεται σε οδηγό συσκευής ή μέρος του πυρήνα
 Αντικαθιστά key kernel functions
 Συνηθισμένη μορφή. Εξαιτίας Loadable Kernel Modules (LKMs)
 LKMs – Linux – δίνει σε loadable drivers ευελιξία. Αλλά επιτρέπει σε maliciously
written kernel module να ανατρέψει ολόκληρο τον πυρήνα του λειτουργικού
συστήματος
 Σύγχρονη Άμυνα: υπογραφή προγράμματος οδήγησης πυρήνα (στα
Windows 64-bit)
 κοινή στρατηγική ανίχνευσης: σύγκριση της προβολής που προκύπτει με
την απαρίθμηση των δομών δεδομένων του πυρήνα με αυτήν που
λαμβάνεται από τη διεπαφή API
 Bootkit (variant of kernel-level rootkit)
 Αντικατάσταση boot loader (master boot record)
 Χρήση για επίθεση σε full disk encryption key
 Ο κακόβουλος boot loader μπορεί να υποκλέψει κλειδιά κρυπτογράφησης ή να
απενεργοποιήσει την απαίτηση για kernel-driver signing

Κακόβουλο λογισμικό
 Rootkits
Έστω mal_code.exe stored in c:/winnt/apps.

Unmodified Directory Listing

Χρήση Win APIs και Function Calls για Εύρεση Αρχείων


Κακόβουλο λογισμικό
 Rootkits
 οι λειτουργίες API των Windows FindFirstFile () και FindNextFile ()
επιστρέφουν το όνομα του πρώτου ή του επόμενου αρχείου που
ταιριάζει στα καθορισμένα κριτήρια
 Τα κριτήρια ενδέχεται να είναι μηδενικά, υπονοώντας επιλογή όλων των αρχείων.
 Αυτές οι λειτουργίες καλούν τις λειτουργίες συστήματος “native
mode", όπως το NTQueryDirectoryObject.
 Στο τέλος αυτής της αλυσίδας υπάρχει μια απλή κλήση λειτουργίας:
 Φόρτωση αριθμού σε καταχωρητή εντολών (IR) που αντιστοιχεί στη συγκεκριμένη
λειτουργία και εκτέλεση εντολής στον πυρήνα του λειτουργικού.
 Το λειτουργικό επιστρέφει κατόπιν και παρουσιάζει αυτές τις πληροφορίες
 Τι μπορεί να συμβεί για να παραμείνει αόρατο το rootkit ;
 Παρακολουθεί τις κλήσεις και εάν το αποτέλεσμα από το FindNextFile()
δείχνει mal_code.exe, το rootkit παραλείπει το αρχείο και εκτελεί ξανά
την FindNextFile() για να βρει επόμενο αρχείο μετά το mal_code.exe.

Κακόβουλο λογισμικό
 Rootkits
Έστω mal_code.exe stored in c:/winnt/apps.

Μodified Directory Listing

Rootkit παρεμβάλλεται και τροποποιεί βασικές Operating System Functions


Κακόβουλο λογισμικό
 Rootkits
 Sony BMG copy protection rootkit
 Sony BMG included Extended Copy Protection σε music CDs
 Extended Copy Protection Rootkit (XCP rootik)
 Μαζί με autorun φόρτωση player, το rootkit εγκαθίστανται σε
Windows
 Το rootkit κατέγραφε και απέρριπτε προσπάθειες listing αρχείων στο
music CD. Επέτρεπε μόνο listing αρχείων από τον authorized player
 Τυχαία αποκάλυψη rootkit (Mark Russinovich) που έγραψε το rootkit
detection tool RootkitRevealer:

Χρήση βοηθητικού προγράμματος για απογραφή (listing)


αρχείων με κώδικα που άμεσα καλεί τη λειτουργία
NTQueryDirectoryObject (αντί τα high level APIs).

Αθροίζοντας μεγέθη αρχείων στο πρόγραμμά του,


συνέκρινε το μέγεθος τους με αυτό που ανέφερε ο
διαχειριστής αρχείων και είδε ασυμφωνία.

Κακόβουλο λογισμικό
 TDSS Rootkits
 Όνομα οικογένειας από rootkits, TDL-1 έως TDL-4
 https://securelist.com/tdss/36314/
 TDL-1 (Rootkit.Win32.Clbd.a.): Στόχος: Απόκρυψή του
 Εγκατέστησε κώδικα φιλτραρίσμαρος στη στοίβα των device drivers
που σχετίζονται με την πρόσβαση σε συσκευές δίσκου. Τα φίλτρα
αποθέτουν αναφορές σε αρχεία με ονόματα που ξεκινούν με TDL
 Έκρυψε τιμές μητρώου (Registry) τροποποιώντας τη συνάρτηση
NTEnumerateKey, που χρησιμοποιείται για listing των keys στο μητρώο
 Αντικατέστησε τα πρώτα bytes της NTEnumerateKey με εντολή
άλματος μεταφοράς προς τη συνάρτηση rootkit, η οποία παραλείπει τα
rootkit registry keys πριν επιστρέψει έλεγχο σε κανονική λειτουργία
 TDL-2: Στόχος: Κρυπτογράφησή του
 ο ίδιος ο κώδικας επισκιάστηκε από κρυπτογράφηση και επένδυση
padding
Κακόβουλο λογισμικό
 TDSS Rootkits
 Όνομα οικογένειας από rootkits, TDL-1 έως TDL-4
 TDL-3: Στόχος: Δικό του σύστημα αρχείων
 Ανεξάρτητο από λειτουργίες των Windows για τη διαχείριση αρχείων.
 Το rootkit συνδέθηκε με το atapi.sys, το πρόγραμμα οδήγησης για
μονάδες σκληρού δίσκου IDE
 Δημιουργήθηκε C&C Cetner με το οποίο το rootkit επικοινωνεί για να
λαμβάνει αναθέσεις εργασίας και να επιστρέφει αποτελέσματα
 Oι ελεγχόμενοι Η/Υ ενοικιάζονται για spam, κλοπή δεδομένων κοκ
 TDL-4: Στόχος: Παρακάμπτει νέες τεχνικές ασφαλείας της Microsoft
 Το λογισμικό Windows 64 bit της Microsoft εφάρμοσε κρυπτογραφία:
κάθε πρόγραμμα οδήγησης έχει ψηφιακή υπογραφή. Επιτρέπει
επαλήθευση πηγής και ακεραιότητα κώδικα κάθε φορά που ο κώδικας
είναι να φορτωθεί (πχ εκκίνηση του συστήματος)
 TDL-4 αλλάζει τιμή διαμόρφωσης συστήματος LoadIntegrityCheckPolicy
έτσι ώστε το μη υπογεγραμμένο rootkit να φορτώνεται χωρίς έλεγχο

Κακόβουλο λογισμικό
 Rootkits
 Εντοπισμός rootkit : πολύ δύσκολα στον εντοπισμό
 Είναι εντελώς αόρατα στο εκτελούμενο λειτουργικό σύστημα
 Η συμπεριφορά τους όμως αποκλίνει από αυτή της μηχανής
 Οι προνομιούχες εντολές είναι πιο αργές λόγω προσομοίωσης
 Τα rootkit πυρήνα εντοπίζονται με εκκίνηση από
USB/CD/DVD
 Σάρωση αρχείων για περίεργες αλλαγές. Συγκρίνονται τα αθροίσματα
ελέγχου τους. Θα πρέπει να έχουν αποθηκευτεί τα σωστά αθροίσματα
με την εγκατάσταση
 Άλλο detection strategy: Σύγκριση στοιχείων από kernel data
structures με εκείνα που προκύπτουν από API interface [sony case]
 Memory dumps. Ωθείς σε εξαναγκασμένη απόρριψη της εικονικής
μνήμης και συλλαμβάνεις ένα ενεργό rootkit. Then  Digital Forencics
 Rootkits - Κατασταλτικά Μέτρα
 Cryptographically Signed Kernel Modules (Microsoft)
Κακόβουλο λογισμικό
 Εντοπισμός rootkit
 rkhunter (Rootkit Hunter)
 GMER for windows OS
 Trend Micro RootkitBuster
 Norton Power Eraser
 chkrootkit (Check Rootkit)
 avast! ANTIROOTKIT
 Bitdefender Removal Tool / Rootkit Remover
 Kaspersky TDSSKiller
 Malwarebytes Anti-Rootkit
 KSTAT (Kernel Security Therapy Anti-Trolls).
 http://www.s0ftpj.org/tools/kstat.tgz
 Large collection of rootkits
 http://packetstorm.securify.com/UNIX/penetration/rootkits/
 Knark
 Adore
 TDSS family of rootkits

Ασφάλεια Δικτύων
Φροντιστήριο2022-23
NMAP & SNORT
“Network Mapper” (nmap)
• Definition
• A powerful utility for network exploration or security
auditing. Is used to discover computers and services on a
computer network, thus creating a "map" of the network.
• History
• First release: September 1, 1997 in Phrack Magazine -
“The Art of Portscanning”
• written by Gordon Lyon
• Current Version: 7.70

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς

NMAP is…
• Flexible
• Supports advanced techniques for mapping out networks
filled with
• IP filters,
• firewalls,
• Routers etc.
• Includes
• Several port scanning mechanisms (both TCP & UDP),
• OS Detection,
• version Detection
• ping sweeps etc

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς


NMAP is…
• Free (under GNU license)
• Open source
• Portable
• Linux, Microsoft Windows, FreeBSD, OpenBSD, Solaris,
IRIX, Mac OS X, HP-UX, NetBSD, Sun OS, Amiga, and
more...
• Very popular…

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς

NMAP Package
• Nmap
• command-line executable
• Zenmap
• advanced GUI and results viewer
• Ncat
• data transfer, redirection, and debugging tool
• Ndiff
• utility for comparing scan results

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς


NMAP screenshots

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς

Target Specification
• Classless Inter-Domain Routing(CIDR) addressing
• IP Address format:
• two groups
• most significant part : network address - identifies a whole network or subnet
• least significant portion :host identifier - particular host interface on that network
• Examples:
• 192.168.1.0/24 - Scan: 192.168.1.0 till 192.168.1.255
• 192.168.1.40/16 - Scan: 192.168.0.0 till 192.168.255.255
• 132.18.3.210/32 - Scan: ???
• 78.184.23.1/0 - Scan: ???
• 210.43.1-255.4-140 - Scan: ???

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς


Scanning with NMAP
• Nmap 192.168.1.1
• Port scanning on the specified host

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς

Host Discovery
• List Scan (-sL)
• lists each host of the network specified, without sending any packets to the
target hosts
• nmap -sL gov.gr

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς


Host Discovery
• Skip port scan (-sn) [αντικατέστησε το (-sP)]
• “ping scan“ - prints out the available hosts that responded
• nmap -sn 192.168.1.1

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς

Host Discovery
• No Ping (-Pn)
• Performs port scanning without checking if host is up.
• nmap -PN 192.168.1.1

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς


Host Discovery
• TCP SYN Ping (-PS)
• Sends an empty TCP packet with the SYN flag set
• The SYN flag suggests to the remote system that
you are attempting to establish a connection.
• If destination port closed -> RST (reset) packet sent back
• If destination port open -> SYN/ACK TCP packet is sent
back
• RST is sent in return from Nmap

• In both cases, host is alive

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς

Host Discovery
• TCP ACK Ping (-PA)
• Sends an empty TCP packet with the ACK flag set
• Such an ACK packet purports to be acknowledging
data over an established TCP connection, but no
such connection exists
• If destination host is alive-> RST (reset) packet sent
back

Since - PA and - PS are similar, why have both?

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς


Host Discovery
• UDP Ping (-PU)
• Sends an empty UDP packet
• by default, on port 40125
• Return value
• ICMP port unreachable
• Destination host up
• other types of ICMP errors
• Destination host down or unreachable
• No answer
• Destination host probably up – Packet is ignored

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς

Host Discovery
• ARP Ping (-PR)
• Sends an ARP Request
• If ARP response -> Host is alive
• ICMP Ping (-PE)
• Sends an ICMP type 8 (echo request) packet
• If ICMP response type 0 (echo reply) -> Host is alive
• IP Protocol Ping (-PO)
• Sends IP packets with the specified protocol number set in their IP header. E.g.
• ICMP (protocol 1)
• IGMP (protocol 2)
• IP-in-IP (protocol 4)
• Response:
• If protocol supported, responses using the same protocol as a probe
• If protocol not supported, ICMP protocol unreachable messages

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς


Port Scanning - Port States
• Open
• An application is actively accepting TCP connections, UDP datagrams or SCTP
associations on this port.
• Closed
• A closed port is accessible (it receives and responds to Nmap probe packets), but
there is no application listening on it.
• Filtered
• unable to determine whether the port is open because packet filtering prevents its
probes from reaching the port.
• dedicated firewall device, router rules, or host-based firewall software.

• Unfiltered (only ACK Scan)


• Port is accessible, but Nmap is unable to determine whether it is open or closed

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς

Port Scanning
• TCP SYN Scan (-sS)
• Sends a TCP packet with the SYN flag set
• The SYN flag suggests to the remote system that you
are attempting to establish a connection.
• RST (reset) packet sent back -> dest. port closed
• SYN/ACK TCP packet is sent back -> dest. port open
• RST is sent in return from Nmap
• If no response is received -> port is marked as filtered
• ICMP unreachable -> port is marked as filtered

This technique is often referred to as half-open scanning

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς


Port Scanning
• TCP ACK scan (-sA)
• Used only to determine Filtered/Unfiltered ports
• Both open and closed ports return RST
• Sends an empty TCP packet with the ACK flag set
• Such an ACK packet purports to be acknowledging data over an
established TCP connection, but no such connection exists
• Response:
• RST packet -> port is unfiltered
• both open/closed ports return RST
• No response -> port is filtered

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς

Port Scanning
• TCP Window scan (-sW)
• exactly the same as ACK scan
• exams the TCP Window field of the RST packets returned.
• open ports use a positive window size
• closed ports have a zero window

Unreliable since the TCP Window field implemented in


the minority of systems

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς


Port Scanning
• TCP RFC 793 states that
• any packet not containing SYN, RST, ACK bits will result
• RST if the port is closed
• no response at all if the port is open
• Three different port scanning Techniques
• combination of the other three bits FIN, PSH, URG
• Null scan (-sN)
• Does not set any bits
• FIN scan (-sF)
• Sets just the TCP FIN bit
• Xmas scan (-sX)
• Sets the FIN, PSH, and URG flags, lighting the packet up like a Christmas tree.

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς

Port Scanning
• UDP scans (-sU)
• Sends UDP packets
• For known protocol ports, protocol-specific payload is sent
• DNS port 53
• SNMP ports 161/162
• DHCP ports 67/68
• For the rest, an empty payload is sent
• Return value
• ICMP port unreachable
• Port is closed
• other types of ICMP errors
• Port is filtered
• UDP packet
• Port is open

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς


Service and Version Detection
• Version scan (-sV)
Tries to determine:
• the service protocol
• e.g. FTP, SSH, Telnet, HTTP
• Application name
• e.g. ISC BIND, Apache httpd,
Solaris telnetd
• version number
• hostname
• device type
• e.g. printer, router
• miscellaneous details

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς

OS Detection
• Enable OS detection (-O)
• Nmap compares the scan results against known OS fingerprints.
• Each fingerprint includes
• a freeform textual description of the OS
• a classification which provides
• the vendor name (e.g. Sun),
• underlying OS (e.g. Solaris),
• OS generation (e.g. 10),
• device type
• general purpose router
• Switch
• game console

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς


IDS vs IPS
• Σύστημα ανίχνευσης εισβολών (IDS)
• Αντίμετρο ασφάλειας που αναλύει την κίνηση του δικτύου.
• Προσδιορίζει ακολουθίες συμπεριφοράς που καταδεικνύουν
πιθανές παραβιάσεις.
• Ενημερώνει για τα ευρήματά του.
• Passive λειτουργία.

• Σύστημα πρόληψης εισβολών (IPS)


• Ανίχνευση και αποτροπή κακόβουλης δραστηριότητας σε
πραγματικό χρόνο.
• Active λειτουργία.

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς

Τι είναι το SNORT;
• NIDS: Network Intrusion Detection System (NIDS) είναι ένα
σύστημα εντοπισμού εισβολέων το οποίο προσπαθεί να εντοπίσει
κακόβουλη δραστηριότητα όπως επιθέσεις DOS, port scans ή ακόμα
και προσπάθειες παραβίασης υπολογιστικών συστημάτων
παρακολουθώντας τη κίνηση του δικτύου.
• Snort: είναι ένα open source Network Intrusion Prevention and
Detection System. Χρησιμοποιεί μία λογική κανόνων συνδυάζοντας
υπογραφές, πρωτόκολλο και μεθόδους εντοπισμού ανώμαλης
συμπεριφοράς

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς


Θέση του SNORT στο δίκτυο

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς

Θέση του SNORT στο δίκτυο


• Έξω από το firewall
• Όλη η κίνηση προς το δίκτυο μπορεί να καταγραφεί.
• Καταγραφή όλων των επιθέσεων προς το δίκτυο.

• Μέσα από το firewall


• Εντοπισμός της κίνησης που περνάει από το firewall.
• Καταγραφή των επιθέσεων που περνάνε από το firewall.

• Σε κάθε εξυπηρετητή
• Παρακολούθηση εξυπηρετητών με βάση τη λειτουργικότητά τους.
• Χρήση συγκεκριμένων κανόνων για κάθε εξυπηρετητή.

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς


Χρήσεις του SNORT
• Sniffer: Ανάγνωση πακέτων και εμφάνιση τους στην κονσόλα.
• Packet Logger: Αποθήκευση των πακέτων που διαβάζει σε αρχεία
για μελλοντική εξέταση.
• Network Intrusion Detection System: Παρακολούθηση του
δικτύου και ανάλυση της κίνησης με βάση κανόνες που ορίζει ο
χρήστης και εκτέλεση συγκεκριμένων ενεργειών όταν εντοπιστεί
συγκεκριμένη δράση.
• Network Intrusion Prevention System: Όμοια με NIDS με
δυνατότητα απόρριψης πακέτων.

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς

Βασικά χαρακτηριστικά του


• Ελαφρύ Network Intrusion Detection System (NIDS)
• Διαθέσιμο σε Linux, Windows, Mac OS X, κ.ά.
• Σύστημα υψηλών δυνατοτήτων
• Γρήγορο (Μεγάλη πιθανότητα εντοπισμού επίθεσης σε δίκτυα των >1000Mbps)
• Εύκολα παραμετροποιήσιμο
• Εύκολη γλώσσα κανόνων
• Ποικιλία επιλογών για καταγραφή και αναφορά
• Δωρεάν (GPL/Open Source Λογισμικό)

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς


Αρχιτεκτονική του SNORT

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς

Αρχιτεκτονική του SNORT


• Packet Decoder: Λήψη πακέτων από τις δικτυακές διεπαφές (πχ.
Ethernet); Προετοιμασία πακέτου για επεξεργασία.
• Preprocessor: (1) Προετοιμασία δεδομένων για τη μηχανή εντοπισμού; (2)
Εντοπισμός ανωμαλιών στις επικεφαλίδες των πακέτων; (3) defragmentation
των πακέτων;(4) αποκωδικοποίηση του HTTP URI; (5) επανασύνδεση ροών
TCP.
• Detection Engine: Εφαρμογή κανόνων στα πακέτα.
• Logging and Alerting System
• Output Modules: Επεξεργασία ειδοποιήσεων και αναφορών για τη
δημιουργία της τελικής εξόδου.

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς


Το Snort λειτουργεί στο
network layer

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς

Detection Engine
※Πληροφορίες που χρειάζεται το detection engine:
• Την IP επικεφαλίδα του πακέτου
• Την επικεφαλίδα του transport layer. TCP, UDP, ICMP κ.α.
• Την επικεφαλίδα του application layer. DNS, FTP, SNMP, SMTP κ.α.
• Το περιεχόμενο (payload) του πακέτου.
※ Πως λειτουργεί?
Εφαρμογή των κανόνων στα πακέτα εφαρμόζοντας τον αλγόριθμο αντιστοίχισης
συμβολοσειρών (string matching) Boyer-Moore
※ Προϋποθέσεις:
1. Χρονικά κρίσιμο
2. Γρήγορος εντοπισμός

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς


Detection Engine
• Πλήθος κανόνων
• Φόρτος στην κίνηση του δικτύου
• Ταχύτητα δικτύου και μηχανήματος (server)
• Αποτελεσματικότητα του αλγόριθμου εντοπισμού

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς

Κανόνες
• Σε μία γραμμή
• Οι κανόνες δημιουργούνται από γνωστές υπογραφές επιθέσεων.
• Συνήθως βρίσκονται στο snort.conf
Παράδειγμα κανόνα

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς

Κανόνες SNORT
• Protocol:
• Τύπος του πρωτοκόλλου που ανήκει το πακέτο προς εντοπισμό (icmp, ip,
udp, tcp).
• Source IP:
• Η IP του αποστολέα του πακέτου μαζί με την μάσκα δικτύου.
• Η τιμή «any», αντιπροσωπεύει οποιαδήποτε διεύθυνση.
• Source Port:
• Η port από την οποία έγινε η αποστολή του πακέτου (έχει νόημα για udp και
tcp πακέτα).
• Η τιμή «any» αντιπροσωπεύει οποιοδήποτε port.

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς


Κανόνες SNORT
• Destination IP:
• Η IP του παραλήπτη του πακέτου μαζί με την μάσκα δικτύου.
• Ητιμή «any» αντιπροσωπεύει οποιαδήποτε διεύθυνση.
• Destination Port:
• Η port προορισμού του πακέτου (έχει νόημα για udp και tcp πακέτα).
• Ητιμή «any», αντιπροσωπεύει οποιαδήποτε port.
• Rule Options:
• Χαρακτηριστικά ελέγχου πακέτου (υπογραφή επίθεσης, επίπεδο προτεραιότητας
και πληροφορίες επίθεσης). Απαρτίζεται από τα τμήματα:
• Keyword: Δηλώνει το είδος του option (πχ msg, logto, minifrag, ttl, id, dsize, content,
flags, seq, ack).
• Argument: Περιέχει παραμέτρους με βάση τις οποίες θα ελεγχθεί το πακέτο.

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς

Σειρά με την οποία το detection engine


σκανάρει τους κανόνες
Το Snort δεν ελέγχει τους κανόνες με τη σειρά που βρίσκονται
στο αρχείο κανόνων. Από προεπιλογή η σειρά είναι:
• Κανόνες έγκρισης (pass)
• drop (block & log)
• Κανόνες απόρριψης ( • reject (block, log, reset connection TCP/ICMP -> RST or UDP -> unreachable) )
• sdrop (block)
• Κανόνες ειδοποίησης (alert)
• Κανόνες καταγραφής (log)

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς


Προβλήματα με το SNORT
• Η βάση κανόνων είναι τεράστια και συνεχίζει να μεγαλώνει
• Το μεγαλύτερο μέρος από αυτές είναι υπογραφές
• Το snort ξοδεύει πολύ χρόνο για να ταιριάξει με κάποια υπογραφή
• Η πιθανότητα εντοπισμού νέων απειλών είναι μικρή

Ασφάλεια Δικτύων 2022-23, Ι. Μαριάς

You might also like