background image

Σχεδιασμός και Υλοποίηση  Πληροφοριακού Συστήματος βέλτιστης διαδρομής συνεπιβατών που 
χρησιμοποιούν υπηρεσίες Ταξί 

 

84 

 

  Αυθεντικοποίηση:  Είναι  η  διαδικασία  της  επιβεβαίωσης  της  ταυτότητας 

των πελατών. Πελάτες μπορεί να είναι οι τελικοί χρήστες, άλλες υπηρεσίες, 
διαδικασίες ή υπολογιστές. 

 

Κατά  το  σχεδιασμό  της  διαδικτυακής  εφαρμογής,  ακολουθήσαμε  μια 

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

1.  Επικύρωση δεδομένων εισόδου 
2.  Αυθεντικοποίηση 
3.  Εξουσιοδότηση 
4.  Διαχείριση ρυθμίσεων 
5.  Ευαίσθητα δεδομένα 
6.  Διαχείριση Συνόδου 
7.  Κρυπτογραφία 
8.  Έλεγχος και Καταγραφή 

 

3.4.1 Επικύρωση δεδομένων εισόδου 

 
 

Η  σωστή  επικύρωση  των  δεδομένων  εισόδου  είναι  ένα  από  τα  ισχυρότερα 

μέτρα άμυνας κατά των επιθέσεων σε μια διαδικτυακή εφαρμογή. Η τυχόν ευπάθεια 
στην επικύρωση δεδομένων εισόδου μπορεί να οδηγήσει σε επιθέσεις XSS ή αλλιώς 
Cross-Site  Scripting,  ψεκασμού  εντολών  SQL  (SQL  injection),  υπερχείλισης 
ενταμιευτήρα κ.ά. 

 

Προς  αποφυγή  τέτοιου  είδους  επιθέσεων  στο  σύστημά  μας,  γίνεται 

φιλτράρισμα και επικύρωση των τύπων των μεταβλητών, που λαμβάνονται από τα 
πεδία στις διάφορες φόρμες με τη βοήθεια της συνάρτησης filter_input(), η οποία 
‘‘καθαρίζει’’ τα δεδομένα που δίνει ο χρήστης από ανεπιθύμητους χαρακτήρες και 
επικυρώνει  τον  τύπο  τους,  ανάλογα  με  ένα  ορισμένο  φίλτρο.  Επίσης,  όλες  οι 
αριθμητικές τιμές διασφαλίζονται με την intval()

 

Εικόνα 37: Απολύμανση δεδομένων με τη χρήση της συνάρτησης filter_input(). 

 

Είναι  πλέον  σύνηθες  το  φαινόμενο  κατασκευής  αλφαριθμητικών  τα  οποία 

προορίζονται για χρήση απλού κειμένου, αλλά χρησιμοποιούνται  με τέτοιο τρόπο, 
ώστε να καταλήγουν να αποτελέσουν εκτελέσιμες εντολές. Γι’ αυτό, φροντίσαμε στο