Μελέτη της χρήσης της τεχνολογίας eBPF για την δημιουργία συστήματος ανίχνευσης και αντιμετώπισης επιθέσεων Syn Flood σε Linux περιβάλλοντα
| datacite.contributor.RelatedPerson | Μακρής, Χρήστος | |
| datacite.contributor.RelatedPerson | Ηλίας, Αριστείδης | |
| datacite.contributor.Supervisor | Ανδρικόπουλος, Αθανάσιος | |
| dc.contributor.author | Ρετσινάς, Γεώργιος | |
| dc.contributor.other | Retsinas, Georgios | |
| dc.date.accessioned | 2025-02-27T07:09:20Z | |
| dc.date.available | 2025-02-27T07:09:20Z | |
| dc.date.issued | 2025-02-25 | |
| dc.degree | graduateThesis | |
| dc.description.abstract | Στην παρούσα διπλωματική εργασία μελετάται η χρήση της τεχνολογίας eBPF για τη δημιουργία συστήματος ανίχνευσης και αντιμετώπισης επιθέσεων SYN Flood σε περιβάλλοντα Linux. Οι επιθέσεις SYN Flood ανήκουν στην ευρύτερη κατηγορία επιθέσεων άρνησης παροχής υπηρεσιών (DoS) και εκμεταλλεύονται την τριμερή χειραψία του πρωτοκόλλου TCP, προκειμένου να εξαντλήσουν τους πόρους ενός συστήματος. Αν και τα παραδοσιακά εργαλεία, όπως το Snort, συμβάλλουν στον εντοπισμό και την αντιμετώπιση των επιθέσεων, η εξέλιξη των επιθέσεων απαιτεί πιο αποδοτικές λύσεις. Αρχικά, γίνεται μια ανάλυση των επιθέσεων SYN Flood και του τρόπου λειτουργίας τους, σε συνδυασμό με τα κλασικά μέτρα προστασίας. Στη συνέχεια εξετάζονται οι βασικές έννοιες των τεχνολογιών eBPF και του XDP. Το eBPF επιτρέπει την εκτέλεση προγραμμάτων μέσα στον πυρήνα του λειτουργικού συστήματος, με ασφαλή και αποδοτικό τρόπο, ενώ το XDP δίνει τη δυνατότητα φιλτραρίσματος πακέτων πριν αυτά εισέλθουν στην στοίβα δικτύου του πυρήνα, μειώνοντας έτσι σημαντικά την επιβάρυνση του συστήματος. Στη συνέχεια, παρουσιάζεται η προτεινόμενη υλοποίηση, η οποία εκμεταλλεύεται τις δυνατότητες του eBPF για να ανιχνεύσει και να αντιμετωπίσει επιθέσεις SYN Flood. Επιίσης, αναλύονται οι δομές δεδομένων που αξιοποιούνται καθώς και ο τρόπος με τον οποίο απορρίπτονται τα ανεπιθύμητα πακέτα. Μέσω της υλοποίησης, το σύστημα μπορεί να διακρίνει πραγματικές συνδέσεις από κακόβουλα SYN πακέτα, αποτρέποντας έτσι την επιβάρυνση του συστήματος από αυτά χωρίς να επηρεάζει τους πραγματικούς χρήστες. Η απόδοση του συστήματος αξιολογείται με πειραματικές δοκιμές, όπου χρησιμοποιούνται τα εργαλεία hping3 για την προσομοίωση επίθεσης και vegeta για τη προσομοίωση πραγματικής δικτυακής κίνησης. Επιπλέον, γίνεται σύγκριση των αποτελεσμάτων της προτεινόμενης υλοποίησης με τα αποτελέσματα που παρουσιάζει κάτω από τις ίδιες συνθήκες το Snort, λαμβάνοντας υπόψη παράγοντες όπως η κατανάλωση υπολογιστικών πόρων του συστήματος (CPU, RAM), ο ρυθμός μεταφοράς (throughput) και η χρονοκαθυστέρηση (network latency). Τα αποτελέσματα δείχνουν ότι η χρήση του eBPF στη διαδικασία φιλτραρίσματος εισερχόμενων δικτυακών πακέτων επιτρέπει την αποδοτική αναγνώριση και αντιμετώπιση επιθέσεων SYN Flood, αυξάνοντας την συνολική απόδοση του συστήματος και επιτρέποντάς του να εξυπηρετεί σημαντικά μεγαλύτερο δικτυακό φόρτο. Τέλος, γίνεται αναφορά σε προοπτικές μελλοντικής εξέλιξης της υλοποίησης και έρευνας. | |
| dc.description.translatedabstract | In this thesis, the use of eBPF technology is studied for the development of a system for detecting and mitigating SYN Flood attacks in Linux environments. SYN Flood attacks belong to the broader category of Denial of Service (DoS) attacks and exploit the TCP three-way handshake to exhaust a system's resources. Although traditional tools, such as Snort, contribute to detecting and mitigating attacks, the evolution of attack methods necessitates more efficient solutions. Initially, an analysis of SYN Flood attacks and their mechanisms is conducted, along with an analysis of popular defense mechanisms. Next, the fundamental concepts of eBPF and XDP technologies are examined. eBPF allows the execution of programs within the operating system's kernel in a secure and efficient manner, while XDP enables packet filtering before they enter the kernel's network stack, significantly reducing system overhead. Subsequently, the proposed implementation is presented, leveraging eBPF capabilities to detect and mitigate SYN Flood attacks. The data structures used are analyzed, as well as the method by which unwanted packets are dropped. Through this implementation, the system can distinguish legitimate connections from malicious SYN packets, thereby preventing system overload without affecting legitimate users. The system's performance is evaluated through experimental tests, using the hping3 tool for attack simulation and vegeta for simulating real network traffic. Additionally, a comparison is made between the results of the proposed implementation and those of Snort under the same conditions, considering factors such as system resource consumption (CPU, RAM), network throughput, and network latency. The results indicate that using eBPF for filtering incoming network packets allows for efficient detection and mitigation of SYN Flood attacks, improving overall system performance and enabling it to handle significantly higher network loads. Finally, future development and research prospects of the implementation are discussed. | |
| dc.identifier.uri | https://hdl.handle.net/10889/29077 | |
| dc.language.iso | el | |
| dc.rights | Attribution-ShareAlike 4.0 International | en |
| dc.rights.uri | http://creativecommons.org/licenses/by-sa/4.0/ | |
| dc.subject | Επιθέσεις SYN Flood | |
| dc.subject | Επιθέσεις άρνησης υπηρεσιών | |
| dc.subject | Συστήματα Linux | |
| dc.subject | Ασφάλεια δικτύων | |
| dc.subject | Ανίχνευση εισβολών | |
| dc.subject | Τριμερή χειραψία TCP | |
| dc.subject | Φιλτράρισμα πακέτων | |
| dc.subject.alternative | SYN Flood attacks | |
| dc.subject.alternative | Denial of Service (DoS) attacks | |
| dc.subject.alternative | eBPF | |
| dc.subject.alternative | eXpress Data Path (XDP) | |
| dc.subject.alternative | Linux systems | |
| dc.subject.alternative | Snort | |
| dc.subject.alternative | Network security | |
| dc.subject.alternative | Intrusion detection | |
| dc.subject.alternative | Hping3 | |
| dc.subject.alternative | Vegeta | |
| dc.subject.alternative | TCP three-way handshake | |
| dc.subject.alternative | Packet filtering | |
| dc.title | Μελέτη της χρήσης της τεχνολογίας eBPF για την δημιουργία συστήματος ανίχνευσης και αντιμετώπισης επιθέσεων Syn Flood σε Linux περιβάλλοντα | |
| dc.title.alternative | Study of the use of eBPF technology to create a system for detecting and mitigating Syn Flood attacks in Linux environments |