Flionis Ioannis: Development of a security vulnerability scanning tool for web applications through functional testing execution

Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε
Διαδικτυακές Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων
ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ
ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ
Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών
Εργαστήριο Επεξεργασίας Πληροφορίας και Υπολογισμών
Θεσσαλονίκη, Ιούλιος 2020
Επιβλέπων Καθηγητής:
Ανδρέας Λ. Συμεωνίδης
Εκπόνηση:
Φλιώνης Ιωάννης
ΑΕΜ: 8263
Μεθοδολογία
1
Σκοπός
Αποτελέσματα
Μελλοντική Εργασία
Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές
Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων
2
Περιεχόμενα Παρουσίασης
2
3
4
5
6
Συμπεράσματα
Κίνητρο
Κίνητρο
 Συνεχώς αυξανόμενος αριθμός διαδικτυακών εφαρμογών
 Ανάγκη για ασφάλεια στο διαδίκτυο
 Υψηλό κόστος πρόσληψης επαγγελματιών ασφάλειας
 Αυτοματοποιημένα εργαλεία ασφάλειας λογισμικού που χρήζουν
βελτιώσεων
1,783,000,000
Αποτελέσματα Συμπεράσματα Μελλοντική ΕργασίαΜεθοδολογίαΣκοπόςΚίνητρο
Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές
Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων
3
Web Apps Live
Right Now
Robert Mueller
“There are two types of companies:
those that have been hacked,
and those that will be”
”
FBI Director, 2012
Αποτελέσματα Συμπεράσματα Μελλοντική ΕργασίαΜεθοδολογίαΣκοπόςΚίνητρο
Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές
Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων
4
Αποτελέσματα Συμπεράσματα Μελλοντική ΕργασίαΜεθοδολογίαΣκοπόςΚίνητρο
Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές
Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων
5
67% 11% 50%
Αύξηση των παραβιάσεων
δεδομένων σε σχέση με τα
τελευταία 5 χρόνια
Αύξηση των παραβιάσεων
δεδομένων σε σχέση με το
2018
Των μεγάλων επιχειρήσεων
ξοδεύουν περισσότερο από $1
εκατομμύριο ετησίως για
ασφάλεια
Μέσο κόστος μίας
παραβίασης
δεδομένων
Πηγή: AccentureΠηγή: Accenture
Πηγή: Cisco
Πηγή: IBM
3,900,000
Σκοπός της διπλωματικής εργασίας
Η ανάπτυξη ενός δωρεάν και open-source εργαλείου
το οποίο:
1. Θα εκτελεί αυτοματοποιημένο λειτουργικό έλεγχο
2. Θα εκτελεί αυτοματοποιημένο έλεγχο για βασικές
ευπάθειες ασφάλειας και τέλος
3. Θα παραθέτει αναφορές και συγκριτικά διαγράμματα με
τα ευρήματά του.
Αποτελέσματα Συμπεράσματα Μελλοντική ΕργασίαΚίνητρο ΜεθοδολογίαΣκοπός
Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές
Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων
6
Τι είναι…
…ΛΕΙΤΟΥΡΓΙΚΟΣ ΕΛΕΓΧΟΣ; …ΕΛΕΓΧΟΣ ΑΣΦΑΛΕΙΑΣ;
 Αποσκοπεί στον εντοπισμό και την εκμετάλλευση
τρωτών σημείων σε διαδικτυακές εφαρμογές, από
τα οποία μπορεί οποιοσδήποτε επιτήδειος να
παραβιάσει την εφαρμογή και τα δεδομένα των
χρηστών της.
Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές
Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων
7Ιούλιος 2020
Αποτελέσματα Συμπεράσματα Μελλοντική ΕργασίαΚίνητρο ΜεθοδολογίαΣκοπός
 Ελέγχει ότι η διαδικτυακή εφαρμογή λειτουργεί
όπως θα έπρεπε σύμφωνα με τις προδιαγραφές
απαιτήσεών της.
o Κατατάσσεται στο QA κομμάτι του Software
Development process
Γνώσεις που αποκτήθηκαν
Σκοπός Αποτελέσματα Συμπεράσματα Μελλοντική ΕργασίαΚίνητρο Μεθοδολογία
Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές
Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων
8
Πρώτη επαφή με
τους επιστημονικούς
κλάδους
Διερεύνηση
Επιστημονικών
Πεδίων
Επέκταση των
δυνατοτήτων ενός ήδη
υπάρχοντος εργαλείου
Ανάπτυξη Εργαλείου
State of the Art
Review Συμπλήρωση του
εργαλείου με frontend
και backend
Ανάπτυξη
Διακομιστή
Χρήση των πιο διαδεδομένων
εργαλείων στην βιομηχανία
Πακετάρισμα μέσω Docker
Dockerization
Σκοπός Αποτελέσματα Συμπεράσματα Μελλοντική ΕργασίαΚίνητρο Μεθοδολογία
Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές
Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων
9
Roadmap
Συνολική Δομή Συστήματος (1/2)
Σκοπός Αποτελέσματα Συμπεράσματα Μελλοντική ΕργασίαΚίνητρο Μεθοδολογία
Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές
Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων
10
Presentation Layer
(Frontend)
Business Layer
(Backend)
Persistence Layer
(Java Persistence API, JPA)
Database Layer
Raw Data
Processed Data
Read Data
Persist Data
Retrieve Data
Store Data
Εκτέλεση
Ελέγχων
Ασφάλειας μέσω
OWASP ZAP
Εκτέλεση
Λειτουργικών
Ελέγχων
μέσω
Selenium
Συνολική Δομή Συστήματος (2/2)
Σκοπός Αποτελέσματα Συμπεράσματα Μελλοντική ΕργασίαΚίνητρο Μεθοδολογία
Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές
Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων
11
Εισαγωγή αρχείου
και παραμέτρων
εκτέλεσης του
ελέγχου
Χρήστης
Frontend
Backend
Προώθηση στο backend σύστημα
Διαγραμματική παρουσίαση αποτελεσμάτων
Επεξεργασία
αρχείου ώστε
να είναι
εκτελέσιμο
Δομή του Backend συστήματος
Σκοπός Αποτελέσματα Συμπεράσματα Μελλοντική ΕργασίαΚίνητρο Μεθοδολογία
Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές
Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων
12
Εισαγωγή
αρχείου και
παραμέτρων
εκτέλεσης του
ελέγχου
Επεξεργασία
αρχείου ώστε να
είναι εκτελέσιμο
Εκκίνηση
επιθυμητού
browser με
proxying μέσω
OWASP ZAP
Εκτέλεση
Λειτουργικών
Ελέγχων μέσω
Selenium
Εκτέλεση
Ελέγχων
Ασφάλειας μέσω
OWASP ZAP
Αποθήκευση
αποτελεσμάτων
Διαγραμματική
και συγκριτική
παρουσίαση
αποτελεσμάτων
ή
Διαδραστικό Frontend
Σκοπός Αποτελέσματα Συμπεράσματα Μελλοντική ΕργασίαΚίνητρο Μεθοδολογία
Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές
Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων
13
Powered by
Light Mode Dark Mode
Σκοπός Αποτελέσματα Συμπεράσματα Μελλοντική ΕργασίαΚίνητρο Μεθοδολογία
Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές
Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων
14
Video Demo
Σκοπός Αποτελέσματα Συμπεράσματα Μελλοντική ΕργασίαΚίνητρο Μεθοδολογία
Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές
Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων
15
Αποτελέσματα
Σκοπός Συμπεράσματα Μελλοντική ΕργασίαΚίνητρο Μεθοδολογία
Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές
Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων
16
Αποτελέσματα
Εφαρμογές Στόχοι:
 Πολλαπλοί έλεγχοι με διαφορετικά αρχεία λειτουργικών
ελέγχων και διαφορετικές παραμέτρους
 Προσθαφαίρεση ευπαθειών στα αρχεία των αποτελεσμάτων
Αξιολόγηση Αξιοπιστίας:
OWASP Broken Web Applications, BWA
1. BodgeIt Store
2. Damn Vulnerable Web Application,
DVWA και
3. OWASP Juice Shop
Αποτελέσματα
Σκοπός Συμπεράσματα Μελλοντική ΕργασίαΚίνητρο Μεθοδολογία
Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές
Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων
17
Αποτελέσματα
XSS Vulnerability
Detected
Συμπεράσματα
1. Η χρήση του εργαλείου OWASP ZAP στην backend μεριά του συστήματος δίνει ακριβή και
τεκμηριωμένα αποτελέσματα όσον αφορά τις ευπάθειες που εντοπίζονται,
2. Η χρήση του Selenium προσφέρει ιδιαίτερη αξιοπιστία όσον αφορά την σωστή και πιστή
αναπαραγωγή των testcases.
Σκοπός Μελλοντική ΕργασίαΚίνητρο Μεθοδολογία Αποτελέσματα Συμπεράσματα
Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές
Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων
18
Μελλοντική Εργασία
 Υποστήριξη αρχείων ελέγχου Selenium σε
διαφορετικές γλώσσες πέραν της Java
 Υποστήριξη αρχείων ελέγχου σε διαφορετικά
frameworks πέραν του Selenium
 Επέκταση του Λειτουργικού Ελέγχου με visual
testing tools
 Επέκταση του Λειτουργικού Ελέγχου με
δυνατότητα καταγραφής και αναπαραγωγής της
διαδικασίας του λειτουργικού ελέγχου ή λήψη
στιγμιότυπων
Σκοπός ΣυμπεράσματαΚίνητρο Μεθοδολογία Αποτελέσματα Μελλοντική Εργασία
 Δημιουργία ισχυρότερων πολιτικών επίθεσης μέσω
του OWASP ZAP για τις σαρώσεις που εκτελούνται
 Επέκταση των Ελέγχων Ασφάλειας με περισσότερες
σαρώσεις μέσω του OWASP ZAP
 Επέκταση των Ελέγχων Ασφάλειας με περισσότερες
σαρώσεις μέσω άλλων εργαλείων πέραν του
OWASP ZAP
 Επιπλέον, θα μπορούσε να προστεθεί προγραμματισμένη (scheduled) εκτέλεση ελέγχων
ΛΕΙΤΟΥΡΓΙΚΟΙ ΕΛΕΓΧΟΙ ΕΛΕΓΧΟΙ ΑΣΦΑΛΕΙΑΣ
Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές
Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων
19
Ευχαριστίες
Θα ήθελα να ευχαριστήσω θερμά:
• Τον κ. Ανδρέα Συμεωνίδη,
• Τους δικούς μου ανθρώπους, και φυσικά
• Όλους εσάς για την προσοχή σας.
Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές
Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων
20
Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές
Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων
21
Κώδικας Διπλωματικής Εργασίας
Όλος ο κώδικας της διπλωματικής
εργασίας είναι open-source και μπορεί
να βρεθεί στο GitHub Repository του
παρακάτω συνδέσμου.
Ερωτήσεις
Στην διάθεσή σας για οποιαδήποτε
ερώτηση, διευκρίνιση ή συζήτηση.
The Dunning-Kruger Effect
Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές
Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων
22
1 of 22

Flionis Ioannis: Development of a security vulnerability scanning tool for web applications through functional testing execution

  • 1. Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εργαστήριο Επεξεργασίας Πληροφορίας και Υπολογισμών Θεσσαλονίκη, Ιούλιος 2020 Επιβλέπων Καθηγητής: Ανδρέας Λ. Συμεωνίδης Εκπόνηση: Φλιώνης Ιωάννης ΑΕΜ: 8263
  • 2. Μεθοδολογία 1 Σκοπός Αποτελέσματα Μελλοντική Εργασία Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων 2 Περιεχόμενα Παρουσίασης 2 3 4 5 6 Συμπεράσματα Κίνητρο
  • 3. Κίνητρο  Συνεχώς αυξανόμενος αριθμός διαδικτυακών εφαρμογών  Ανάγκη για ασφάλεια στο διαδίκτυο  Υψηλό κόστος πρόσληψης επαγγελματιών ασφάλειας  Αυτοματοποιημένα εργαλεία ασφάλειας λογισμικού που χρήζουν βελτιώσεων 1,783,000,000 Αποτελέσματα Συμπεράσματα Μελλοντική ΕργασίαΜεθοδολογίαΣκοπόςΚίνητρο Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων 3 Web Apps Live Right Now
  • 4. Robert Mueller “There are two types of companies: those that have been hacked, and those that will be” ” FBI Director, 2012 Αποτελέσματα Συμπεράσματα Μελλοντική ΕργασίαΜεθοδολογίαΣκοπόςΚίνητρο Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων 4
  • 5. Αποτελέσματα Συμπεράσματα Μελλοντική ΕργασίαΜεθοδολογίαΣκοπόςΚίνητρο Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων 5 67% 11% 50% Αύξηση των παραβιάσεων δεδομένων σε σχέση με τα τελευταία 5 χρόνια Αύξηση των παραβιάσεων δεδομένων σε σχέση με το 2018 Των μεγάλων επιχειρήσεων ξοδεύουν περισσότερο από $1 εκατομμύριο ετησίως για ασφάλεια Μέσο κόστος μίας παραβίασης δεδομένων Πηγή: AccentureΠηγή: Accenture Πηγή: Cisco Πηγή: IBM 3,900,000
  • 6. Σκοπός της διπλωματικής εργασίας Η ανάπτυξη ενός δωρεάν και open-source εργαλείου το οποίο: 1. Θα εκτελεί αυτοματοποιημένο λειτουργικό έλεγχο 2. Θα εκτελεί αυτοματοποιημένο έλεγχο για βασικές ευπάθειες ασφάλειας και τέλος 3. Θα παραθέτει αναφορές και συγκριτικά διαγράμματα με τα ευρήματά του. Αποτελέσματα Συμπεράσματα Μελλοντική ΕργασίαΚίνητρο ΜεθοδολογίαΣκοπός Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων 6
  • 7. Τι είναι… …ΛΕΙΤΟΥΡΓΙΚΟΣ ΕΛΕΓΧΟΣ; …ΕΛΕΓΧΟΣ ΑΣΦΑΛΕΙΑΣ;  Αποσκοπεί στον εντοπισμό και την εκμετάλλευση τρωτών σημείων σε διαδικτυακές εφαρμογές, από τα οποία μπορεί οποιοσδήποτε επιτήδειος να παραβιάσει την εφαρμογή και τα δεδομένα των χρηστών της. Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων 7Ιούλιος 2020 Αποτελέσματα Συμπεράσματα Μελλοντική ΕργασίαΚίνητρο ΜεθοδολογίαΣκοπός  Ελέγχει ότι η διαδικτυακή εφαρμογή λειτουργεί όπως θα έπρεπε σύμφωνα με τις προδιαγραφές απαιτήσεών της. o Κατατάσσεται στο QA κομμάτι του Software Development process
  • 8. Γνώσεις που αποκτήθηκαν Σκοπός Αποτελέσματα Συμπεράσματα Μελλοντική ΕργασίαΚίνητρο Μεθοδολογία Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων 8
  • 9. Πρώτη επαφή με τους επιστημονικούς κλάδους Διερεύνηση Επιστημονικών Πεδίων Επέκταση των δυνατοτήτων ενός ήδη υπάρχοντος εργαλείου Ανάπτυξη Εργαλείου State of the Art Review Συμπλήρωση του εργαλείου με frontend και backend Ανάπτυξη Διακομιστή Χρήση των πιο διαδεδομένων εργαλείων στην βιομηχανία Πακετάρισμα μέσω Docker Dockerization Σκοπός Αποτελέσματα Συμπεράσματα Μελλοντική ΕργασίαΚίνητρο Μεθοδολογία Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων 9 Roadmap
  • 10. Συνολική Δομή Συστήματος (1/2) Σκοπός Αποτελέσματα Συμπεράσματα Μελλοντική ΕργασίαΚίνητρο Μεθοδολογία Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων 10 Presentation Layer (Frontend) Business Layer (Backend) Persistence Layer (Java Persistence API, JPA) Database Layer Raw Data Processed Data Read Data Persist Data Retrieve Data Store Data
  • 11. Εκτέλεση Ελέγχων Ασφάλειας μέσω OWASP ZAP Εκτέλεση Λειτουργικών Ελέγχων μέσω Selenium Συνολική Δομή Συστήματος (2/2) Σκοπός Αποτελέσματα Συμπεράσματα Μελλοντική ΕργασίαΚίνητρο Μεθοδολογία Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων 11 Εισαγωγή αρχείου και παραμέτρων εκτέλεσης του ελέγχου Χρήστης Frontend Backend Προώθηση στο backend σύστημα Διαγραμματική παρουσίαση αποτελεσμάτων Επεξεργασία αρχείου ώστε να είναι εκτελέσιμο
  • 12. Δομή του Backend συστήματος Σκοπός Αποτελέσματα Συμπεράσματα Μελλοντική ΕργασίαΚίνητρο Μεθοδολογία Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων 12 Εισαγωγή αρχείου και παραμέτρων εκτέλεσης του ελέγχου Επεξεργασία αρχείου ώστε να είναι εκτελέσιμο Εκκίνηση επιθυμητού browser με proxying μέσω OWASP ZAP Εκτέλεση Λειτουργικών Ελέγχων μέσω Selenium Εκτέλεση Ελέγχων Ασφάλειας μέσω OWASP ZAP Αποθήκευση αποτελεσμάτων Διαγραμματική και συγκριτική παρουσίαση αποτελεσμάτων ή
  • 13. Διαδραστικό Frontend Σκοπός Αποτελέσματα Συμπεράσματα Μελλοντική ΕργασίαΚίνητρο Μεθοδολογία Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων 13 Powered by
  • 14. Light Mode Dark Mode Σκοπός Αποτελέσματα Συμπεράσματα Μελλοντική ΕργασίαΚίνητρο Μεθοδολογία Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων 14
  • 15. Video Demo Σκοπός Αποτελέσματα Συμπεράσματα Μελλοντική ΕργασίαΚίνητρο Μεθοδολογία Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων 15
  • 16. Αποτελέσματα Σκοπός Συμπεράσματα Μελλοντική ΕργασίαΚίνητρο Μεθοδολογία Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων 16 Αποτελέσματα Εφαρμογές Στόχοι:  Πολλαπλοί έλεγχοι με διαφορετικά αρχεία λειτουργικών ελέγχων και διαφορετικές παραμέτρους  Προσθαφαίρεση ευπαθειών στα αρχεία των αποτελεσμάτων Αξιολόγηση Αξιοπιστίας: OWASP Broken Web Applications, BWA 1. BodgeIt Store 2. Damn Vulnerable Web Application, DVWA και 3. OWASP Juice Shop
  • 17. Αποτελέσματα Σκοπός Συμπεράσματα Μελλοντική ΕργασίαΚίνητρο Μεθοδολογία Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων 17 Αποτελέσματα XSS Vulnerability Detected
  • 18. Συμπεράσματα 1. Η χρήση του εργαλείου OWASP ZAP στην backend μεριά του συστήματος δίνει ακριβή και τεκμηριωμένα αποτελέσματα όσον αφορά τις ευπάθειες που εντοπίζονται, 2. Η χρήση του Selenium προσφέρει ιδιαίτερη αξιοπιστία όσον αφορά την σωστή και πιστή αναπαραγωγή των testcases. Σκοπός Μελλοντική ΕργασίαΚίνητρο Μεθοδολογία Αποτελέσματα Συμπεράσματα Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων 18
  • 19. Μελλοντική Εργασία  Υποστήριξη αρχείων ελέγχου Selenium σε διαφορετικές γλώσσες πέραν της Java  Υποστήριξη αρχείων ελέγχου σε διαφορετικά frameworks πέραν του Selenium  Επέκταση του Λειτουργικού Ελέγχου με visual testing tools  Επέκταση του Λειτουργικού Ελέγχου με δυνατότητα καταγραφής και αναπαραγωγής της διαδικασίας του λειτουργικού ελέγχου ή λήψη στιγμιότυπων Σκοπός ΣυμπεράσματαΚίνητρο Μεθοδολογία Αποτελέσματα Μελλοντική Εργασία  Δημιουργία ισχυρότερων πολιτικών επίθεσης μέσω του OWASP ZAP για τις σαρώσεις που εκτελούνται  Επέκταση των Ελέγχων Ασφάλειας με περισσότερες σαρώσεις μέσω του OWASP ZAP  Επέκταση των Ελέγχων Ασφάλειας με περισσότερες σαρώσεις μέσω άλλων εργαλείων πέραν του OWASP ZAP  Επιπλέον, θα μπορούσε να προστεθεί προγραμματισμένη (scheduled) εκτέλεση ελέγχων ΛΕΙΤΟΥΡΓΙΚΟΙ ΕΛΕΓΧΟΙ ΕΛΕΓΧΟΙ ΑΣΦΑΛΕΙΑΣ Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων 19
  • 20. Ευχαριστίες Θα ήθελα να ευχαριστήσω θερμά: • Τον κ. Ανδρέα Συμεωνίδη, • Τους δικούς μου ανθρώπους, και φυσικά • Όλους εσάς για την προσοχή σας. Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων 20
  • 21. Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων 21 Κώδικας Διπλωματικής Εργασίας Όλος ο κώδικας της διπλωματικής εργασίας είναι open-source και μπορεί να βρεθεί στο GitHub Repository του παρακάτω συνδέσμου.
  • 22. Ερωτήσεις Στην διάθεσή σας για οποιαδήποτε ερώτηση, διευκρίνιση ή συζήτηση. The Dunning-Kruger Effect Ιούλιος 2020 Δημιουργία Εργαλείου Ανίχνευσης Ευπαθειών Ασφάλειας σε Διαδικτυακές Εφαρμογές μέσω Εκτέλεσης Λειτουργικών Ελέγχων 22

Editor's Notes

  1. Καλησπέρα σε όλες και όλους ονομάζομαι Φλιώνης Ιωάννης και θα σας παρουσιάσω την διπλωματική μου εργασία, η οποία εκπονήθηκε κατά την διάρκεια των τελευταίων 9 μηνών, υπό την επίβλεψη του καθηγητή Ανδρέα Συμεωνίδη. Το θέμα της ήταν η Δημιουργία ενός Εργαλείου που ανιχνεύει ευπάθειες ασφάλειας σε διαδικτυακές εφαρμογές μέσα από εκτέλεση λειτουργικών ελέγχων.
  2. Όσον αφορά την διάρθρωση της παρουσίασης, πρώτα θα μιλήσουμε για το κίνητρο που μας οδήγησε σε αυτό το θέμα της διπλωματικής εργασίας και ύστερα για τον σκοπό αυτής. Έπειτα θα αναλυθεί η μεθοδολογία η οποία χρησιμοποιήθηκε και θα παρατεθούν τα αποτελέσματα και συμπεράσματα που εξήχθησαν. Ενώ τέλος, θα αναφερθούν πιθανές προτάσεις για μελλοντικές επεκτάσεις του έργου.
  3. Αυτή την στιγμή υπάρχουν live, up and running στο διαδίκτυο περίπου 1,8 δισεκατομμύρια διαδικτυακές εφαρμογές και ιστοσελίδες και ο αριθμός αυτός συνεχώς αυξάνεται. Το διαδίκτυο είναι ένα εκ φύσεως μη ασφαλές δίκτυο και η επίλυση του γρίφου της ασφάλειας εντός αυτού γίνεται ολοένα και πιο απαραίτητη. Όμως το κόστος πρόσληψης επαγγελματιών ασφάλειας για την εκπόνηση αυτού του έργου από αρχής μέχρι τέλους είναι υψηλό. Και τα αυτοματοποιημένα εργαλεία ασφάλειας λογισμικού ακόμα χρήζουν βελτιώσεων.
  4. Όπως ανέφερε χαρακτηριστικά το 2012 σχετικά με το θέμα της ασφάλειας στο διαδίκτυο ο διευθυντής του FBI, Robert Mueller: «Υπάρχουν δύο είδη εταιριών, αυτές που έχουν χακαριστεί και αυτές που θα χακαριστούν». Πάμε να δούμε όμως και μερικά στατιστικά νούμερα που παρουσιάζουν λίγο καλύτερα την σημερινή κατάσταση σχετικά με την ασφάλεια στο διαδίκτυο.
  5. Σύμφωνα με την Accenture, υπάρχει 67% αύξηση των παραβιάσεων δεδομένων τα τελευταία 5 χρόνια Και 11% η αύξηση των παραβιάσεων από το 2018 μέχρι το 2019 Ενώ, το 50% των μεγάλων επιχειρήσεων (δηλαδή των επιχειρήσεων με περισσότερους από 10.000 υπαλλήλους) ξοδεύουν περισσότερο από $1 εκατομμύριο ετησίως στην ασφάλεια, σύμφωνα με την IBM Τέλος, σύμφωνα με την Cisco, το κόστος μίας παραβίασης υπολογίζεται κατά μέσο όρο στα $3.9 εκατομμύρια ____________________________________________________________________________________________________________________________________________________________________________________________________________________________________ Το 43% των θυμάτων παραβίασης δεδομένων ήταν μικρές επιχειρήσεις. [Verizon](https://enterprise.verizon.com/en-gb/resources/reports/dbir/)
  6. Σκοπός της παρούσας διπλωματικής ήταν η ανάπτυξη ενός δωρεάν και open-source εργαλείου το οποίο: Θα εκτελεί αυτοματοποιημένο λειτουργικό έλεγχο και Αυτοματοποιημένο έλεγχο για βασικές ευπάθειες ασφάλειας και τέλος Θα παραθέτει αναφορές και συγκριτικά διαγράμματα με τα ευρήματά του.
  7. Όμως, μιλάμε για Λειτουργικό Έλεγχο και Έλεγχο Ασφάλειας, που δεν είναι απαραίτητο ότι όλοι γνωρίζουν τι ακριβώς είναι. Συνοπτικά, μπορούμε να πούμε ότι: Ο Λειτουργικός Έλεγχος είναι η διαδικασία που ελέγχει και επικυρώνει εάν η διαδικτυακή εφαρμογή λειτουργεί όπως θα έπρεπε να λειτουργεί σύμφωνα με τις προδιαγραφές των απαιτήσεών της. Ένα χαρακτηριστικό παράδειγμα Λειτουργικού Ελέγχου είναι ο έλεγχος του login functionality, όπου σωστοί συνδυασμοί login credentials θα πρέπει να επιτρέπουν την είσοδο του χρήστη, ενώ εσφαλμένοι όχι. Στην εικόνα στα αριστερά μπορούμε να δούμε ένα ακόμα παράδειγμα όπου η φόρμα πέρα από την εικόνα που περιλαμβάνει και στην δεξιά περίπτωση δεν εμφανίζεται, θα αποτύχει και στον λειτουργικό έλεγχο όπου ο χρήστης κλικάρει να δει τα terms και conditions της σελίδας Όσον αφορά τον Έλεγχο Ασφάλειας είναι η διαδικασία που αποσκοπεί στον εντοπισμό και την έμπρακτη εκμετάλλευση των τρωτών σημείων της διαδικτυακής εφαρμογής με στόχο την αποκάλυψη των σημείων από τα οποία μπορεί κανείς επιτήδειος να την παραβιάσει και να αποκτήσει πρόσβαση και έλεγχο στα δεδομένα των χρηστών της. Στην εικόνα στα δεξιά φαίνεται η συχνότητα εμφάνισης και επικινδυνότητα των πιο συνηθισμένων ευπαθειών ασφάλειας. Ίσως έχετε ακουστά το Cross-Site Scripting (XSS) που είναι στην δεύτερη θέση ή το A1 Injection, με πιο γνωστά τα SQL Injections που μπορούν να οδηγήσουν σε απώλεια ή υποκλοπή της βάσης δεδομένων. Ενώ, στην τελευταία θέση τα XML External Entities, γνωστά ως XXEs, είναι τα πιο trending στον τομέα του Bug Bounty Hunting.
  8. Πάμε όμως να δούμε την Μεθοδολογία που ακολουθήθηκε, ξεκινώντας από τις Γνώσεις που αποκτήθηκαν. Όλα αυτά είναι εργαλεία, γλώσσες και frameworks που χρησιμοποιήθηκαν για την δημιουργία της διαδικτυακής εφαρμογής: Για το web development χρησιμοποιήθηκαν οι HTML, CSS και JavaScript Όλο το project είναι end-to-end σε Java, με την βοήθεια του Maven για την διαχείριση των dependencies. Το backend είναι ένα Spring Boot Web App, ενώ το frontend αναπτύχθηκε με την βοήθεια του Vaadin Framework Για το testing χρησιμοποιήθηκαν οι βιβλιοθήκες JUnit και TestNG Ενώ για την βάση δεδομένων χρησιμοποιήθηκε μία H2 ενσωματωμένη βάση για να είναι πιο portable η εφαρμογή κατά την φάση του development, αλλά έχει γίνει και το configuration για integration με MySQL βάση δεδομένων, που είναι πιο αξιόπιστη και ασφαλής για production-ready εφαρμογές. Όσον αφορά τον Λειτουργικό Έλεγχο χρησιμοποιήθηκαν τα εργαλεία Selenium, Katalon, Selenium IDE, Katalon Recorder και SideeX Recorder Ενώ όσον αφορά τον Έλεγχο Ασφάλειας χρησιμοποιήθηκαν τα Kali Linux, Metasploit Framework, Burp Suite και OWASP ZAP. Το version controlling του project έγινε φυσικά μέσω git και Πακεταρίστηκε μέσω docker για να μπορεί να εγκατασταθεί σε οποιοδήποτε μηχάνημα. Όμως πέρα και πάνω από όλες τις τεχνικές γνώσεις που αποκτήθηκαν, αποκτήθηκε η εμπειρία της διερεύνησης ενός επιστημονικού πεδίου, η έμπνευση μίας ιδέας, η επίλυση πολυσύνθετων ρεαλιστικών προβλημάτων και η τελική υλοποίηση ενός έργου λογισμικού.
  9. Σε ότι αφορά την πορείας της διπλωματικής μέσα στον χρόνο: Σε πρώτη φάση, έγινε μία διερεύνηση των επιστημονικών πεδίων που θα παντρεύονταν, δηλαδή του Λειτουργικού Ελέγχου και του Ελέγχου Ασφάλειας Ύστερα περάσαμε στο State of the Art Review όπου έγινε χρήση των πιο διαδεδομένων εργαλείων που διατίθενται στην βιομηχανία επάνω σε αυτούς τους κλάδους. Ώστε να αναπτυχθεί το εργαλείο που προσφέρει έλεγχο ασφάλειας μέσα από λειτουργικό έλεγχο, χρησιμοποιώντας ένα από τα δημοφιλέστερα ήδη υπάρχοντα εργαλεία ασφάλειας Στην συνέχεια, το εργαλείο αυτό συμπληρώθηκε με frontend και backend, ώστε να αποτελέσει ένα πλήρες Web Application, το οποίο θα δούμε σε Demo παρακάτω Τέλος, φυσικά, το έργο πακεταρίστηκε μέσω Docker για να μπορεί να συνεχιστεί το development process σε οποιοδήποτε άλλο μηχάνημα
  10. Όσον αφορά την συνολική δομή του συστήματος, ακολουθήθηκε μία 4-tier ή στα ελληνικά 4 επιπέδων αρχιτεκτονική: Στο επίπεδο της παρουσίασης, έχουμε φυσικά το frontend Στο επίπεδο της επεξεργασίας, έχουμε το backend Στο επίπεδο της επιμονής (ή persistence), έχουμε το JPA ή Java Persistence API, το οποίο αναλαμβάνει την μετάφραση των Java κλάσεων σε εισαγωγές πίνακα που μπορούν να αποθηκευτούν από την Βάση Δεδομένων Η οποία είναι στο τελευταίο και ομώνυμο επίπεδο.
  11. Αναλυτικότερα, η ροή της πληροφορίας είναι η εξής: Ο χρήστης αρχικά εισάγει της παραμέτρους για την εκτέλεση του ελέγχου, μαζί με το αρχείο που περιέχει τον λειτουργικό έλεγχο Αυτές οι παράμετροι προωθούνται στο backend Το οποίο με την σειρά του επεξεργάζεται τον κώδικα του αρχείου, μέσω της βιβλιοθήκης JavaParser, ώστε να τον φέρει σε εκτελέσιμη μορφή και να ορίσει κατάλληλα τις παραμέτρους εκτέλεσης Έπειτα εκτελείται ο Λειτουργικός Έλεγχος μέσω του Selenium Και τέλος εκτελείται ο Έλεγχος Ασφάλειας και πάλι σύμφωνα με τις παραμέτρους που εισήχθησαν από τον χρήστη, μέσω του εργαλείου OWASP ZAP Όταν όλοι οι έλεγχοι ολοκληρωθούν, τα αποτελέσματα αποθηκεύονται και επιστρέφονται στο frontend για διαγραμματική και συγκριτική παρουσίαση
  12. Όσον αφορά την δομή του backend συστήματος, τα περισσότερα κομμάτια αναλύθηκαν ήδη στην προηγούμενη διαφάνεια, αξίζει να σημειώσουμε ότι: Όσον αφορά τον Λειτουργικό Έλεγχο αυτή την στιγμή υπάρχει δυνατότητα επιλογής ανάμεσα στους browsers Google Chrome και Mozilla Firefox Ενώ όσον αφορά το OWASP ZAP, υπάρχει δυνατότητα εκτέλεσης Crawling, AJAX Spidering, Passive και Active Scanning
  13. Αναφορικά με το frontend του συστήματος μπορούμε να πούμε ότι πρόκειται για ένα PWA το οποίο έχει δημιουργηθεί μέσω του Vaadin Framework και είναι ιδιαίτερα responsive, καθώς μπορεί να χρησιμοποιηθεί και να εγκατασταθεί σε οποιαδήποτε συσκευή, από desktop έως mobile.
  14. Η εφαρμογή διατίθεται σε Light και σε Dark Mode κάνοντας toggle από το paper button στην πάνω δεξιά γωνία, ώστε να είναι εύχρηστη καθόλη την διάρκεια της ημέρας, αλλά και της νύχτας. Πάμε όμως να δούμε το DEMO για μια πλήρη παρουσίαση των δυνατότητων του συστήματος.
  15. Login Responsiveness Dark Theme Request a Scanning Scanning Getting the Results Reports Scan Details About Settings Logout
  16. Για την αξιολόγηση των αποτελεσμάτων του συστήματος χρησιμοποιήθηκαν οι εφαρμογές με γνωστές ευπάθειες του Virtual Machine που παρέχεται από τον OWASP και ονομάζεται Broken Web Applications, και πιο συγκεκριμένα 3 από αυτές. Ο λόγος για τις BodgeIt Store, Damn Vulnerable Web Application, DVWA, και OWASP Juice Shop. Για την πλήρη αξιολόγηση της αξιοπιστίας του συστήματος έγιναν πολλαπλοί έλεγχοι με διαφορετικά αρχεία λειτουργικών ελέγχων και διαφορετικές παραμέτρους, και τα αποτελέσματα του συστήματος συγκρίθηκαν με τις γνωστές ευπάθειες, σύμφωνα με του δημιουργούς. Επίσης, χρειάστηκε να γίνει προσθαφαίρεση ευπαθειών στα αρχεία των αποτελεσμάτων, ώστε να ελεγχθεί ότι πράγματι εντοπιζόταν με ακρίβεια η ύπαρξη ή μη ευπαθειών λογισμικού, προσομοιώνοντας μία υπό ανάπτυξη διαδικτυακή εφαρμογή όπου διορθώνονται ευπάθειες, ενώ παράλληλα θα προστίθενταν νέες, συνήθως λόγω προσθήκης νέας λειτουργικότητας. Αυτήν η διαδικασία είναι ιδιαίτερα χρονοβόρα, για αυτό και εκτελέστηκε σε ένα μικρό μόνο δείγμα εφαρμογών.
  17. Για παράδειγμα, στο στιγμιότυπο της εικόνας στα αριστερά, βλέπουμε την Scoring σελίδα της εφαρμογή BodgeIt Store, η οποία δηλώνει ότι υπάρχει ευπάθεια Cross-Site Scripting μέσω client-side JavaScript (δηλαδή το <script>) Εάν δούμε το στιγμιότυπο της εικόνας στα δεξιά θα παρατηρήσουμε αμέσως ότι η υψηλότερης επικινδυνότητας ευπάθεια που εντοπίστηκε από τους ελέγχους του συστήματος Pentest Insights στην εν λόγω εφαρμογή ήταν ακριβώς το Reflected Cross-Site Scripting.
  18. Από την χρήση επάνω στις διαφορετικές εφαρμογές στόχους αποκομίσαμε τα εξής συμπεράσματα: Η χρήση του εργαλείου OWASP ZAP στην backend μεριά του συστήματος δίνει ακριβή και τεκμηριωμένα αποτελέσματα όσον αφορά τις ευπάθειες που εντοπίζονται. Βέβαια, σημειώνεται ότι, σε καμία των περιπτώσεων δεν θα έπρεπε κάποιος να βασίζεται αποκλειστικά σε αυτοματοποιημένα λογισμικά για την εκτέλεση ελέγχων ασφάλειας και συστήνεται αυστηρά η συμπλήρωση αυτών με χειροκίνητους ελέγχους από κάποιον επαγγελματία πριν το deployment της εφαρμογής. Η χρήση του Selenium προσφέρει ιδιαίτερη αξιοπιστία όσον αφορά την σωστή και πιστή αναπαραγωγή των testcases. Ευελπιστούμε το σύστημα Pentest Insights να αποτελέσει μία ολοκληρωμένη και αξιόπιστη open-source λύση με γραφική διεπαφή χρήστη και διαγραμματική παρουσίαση αποτελεσμάτων για υπό ανάπτυξη εφαρμογές που δεν έχουν την οικονομική δυνατότητα να αναλάβουν το πλήρες κόστος των δοκιμών διείσδυσης μίας επαγγελματικής εταιρείας.
  19. Ακολουθούν ορισμένες προτάσεις από τις οποίες μπορεί να εμπνευστεί κανείς και να σκεφτεί ακόμα περισσότερες ιδέες, καθώς οι δυνατότητες επέκτασης του συστήματος είναι μεγάλες και μπορούν να χωριστούν σε δύο κύριους άξονες, αυτές που αφορούν τον Λειτουργικό Έλεγχο και αυτές που αφορούν τους Ελέγχους Ασφάλειας: Το σύστημα θα μπορούσε να καταστεί αυτομάτως πιο εύχρηστο και ευέλικτο εάν μπορούσε να δεχθεί σαν είσοδο και να εκτελέσει κώδικα και σε άλλες γλώσσες, όπως Python, JavaScript κ.α. καθώς κάποιοι προγραμματιστές ή οργανισμοί μπορεί να διαθέτουν τους Selenium ελέγχους των εφαρμογών τους ήδη γραμμένους σε εκείνες Επίσης θα μπορούσε να γίνει πιο versatile εάν προστιθόταν δυνατότητα εκτέλεσης ελέγχων και σε άλλα testing frameworks, όπως το Robot Framework, το Cucumber ή το Katalon Studio Για παράδειγμα, με χρήση των λογισμικών της εταιρίας Applitools, με το οποίο μπορεί κανείς να εντοπίσει 20% περισσότερα bugs μέσω cross-platform οπτικής σύγκρισης των σελίδων που εμφανίζουν οι εφαρμογές. Καθώς οι σαρώσεις που εκτελούνται στην παρούσα υλοποίηση από το OWASP ZAP χρησιμοποιούν την προεπιλεγμένη πολιτική επίθεσης Καθώς στην τρέχουσα υλοποίηση χρησιμοποιούνται μόνο το Crawling, το AJAX Spidering, το Passive και το Active Scanning, ενώ το OWASP ZAP παρέχει περισσότερες δυνατότητες, όπως μέσω Forced Directory Browsing, για εύρεση ξεχασμένων αρχείων και Easter eggs [95] στον server, ή μέσω Forced User Browsing, όπου εκτελούνται σαρώσεις με μόνιμα αυθεντικοποιημένο χρήστη, πράμα που παράγει συνήθως καλύτερα αποτελέσματα κ.α. Καθώς θα μπορούσε κανείς να συμπληρώσει τους ελέγχους της παρούσας υλοποίησης με άλλους που θα εκτελούνται από κάποιο εντελώς διαφορετικό εργαλείο. Μια ιδέα θα μπορούσε να είναι το brute-forcing σε login σελίδες μέσω του εργαλείου Hydra και κάποιας λίστα με γνωστούς συνήθεις κωδικούς πρόσβασης, όπως το δημοφιλές rockyou.txt. Όπως είθισται να γίνεται στον κλάδο του testing ώστε οι έλεγχοι να μην ενοχλούν το development process. Συνήθως, το testing προγραμματίζεται και εκτελείται αυτόματα κατά την διάρκεια της νύχτας ή κάποιας άλλης άεργης χρονικής περιόδου και οι developers λαμβάνουν την ενημέρωση με τα αποτελέσματα την επομένη ημέρα το πρωί.
  20. Τέλος, θα ήθελα να ευχαριστήσω θερμά: Τον κ. Ανδρέα Συμεωνίδη, για την καθοδήγηση και την στήριξή του καθόλη την διάρκεια των τελευταίων εννέα μηνών Όλους τους δικούς μου ανθρώπους, [ χωρίς την παρουσία και την συνδρομή των οποίων, τα χρόνια της φοίτησής μου θα ήταν τουλάχιστον βαρετά ] Και φυσικά όλους εσάς για την προσοχή και χρόνο σας.
  21. Όλος ο κώδικας της διπλωματικής εργασίας είναι φυσικά open-source και μπορεί να βρεθεί στο GitHub Repo του συνδέσμου.
  22. Ενώ φυσικά είμαι στην διάθεσή σας για οποιαδήποτε ερώτηση, διευκρίνιση ή συζήτηση.