background image

Πληροφοριακό 

Σύστημα - iTaξι

Εισαγωγή

11

Θεωρητικό

 

Υπόβαθρο

Ελένη Σακέρογλου,

Μάρτιος 2017  

Σχεδιασμός

& Ανάπτυξη

Τεχνικές Ασφάλειας

Κρισιμότεροι τομείς, στους οποίους η εφαρμογή μπορεί να είναι ευάλωτη σε 

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

1. Φιλτράρισμα και επικύρωση των 

τύπων των μεταβλητών => 

filter_input(), intval() 

2. Χρήση προκατασκευασμένων 

(prepared) εντολών PDO 

3. Χρήση κανόνων επικύρωσης που 

ορίζονται στις εισόδους των πεδίων 

τη βοήθεια του HTML5 Constraint 

Validation API και του Bootstrap 

Validator 

1. Απαιτείται από τους χρήστες η 

εισαγωγή «δύσκολων» κωδικών 

πρόσβασης

2. Κρυπτογράφηση κωδικών (hash)

3. Μη αποθήκευση κωδικών σε τοπικό 

αρχείο

4. Απαιτείται σύνδεση και έλεγχος 

δικαιωμάτων πρόσβασης σε όλες τις 

σελίδες

1. Η πρόσβαση στην εφαρμογή γίνεται 

μόνο από εγγεγραμμένους χρήστες

2. Τηρείται η αρχή των ελάχιστων 

δικαιωμάτων

3. Για κάθε ενέργεια ελέγχεται η 

ταυτότητα του χρήστη και τα 

δικαιώματα πρόσβασης

1. η πρόσβαση στο πάνελ του 

διαχειριστή επιτρέπεται μόνο στους 

αρμόδιους χρήστες

2. η παροχή περιορισμών και μεταξύ 

των χρηστών που έχουν πρόσβαση 

στο πάνελ διαχείρισης.

1. πρόσβαση στις ιστοσελίδες του 

ιστοχώρου μέσω κρυπτογράφησης 

HTTPS.

2. ορίστηκε μέγιστος χρόνος ενεργούς 

συνόδου στη μία ώρα.

Οι κωδικοί πρόσβασης (passwords) των 

χρηστών αποθηκεύονται στη βάση 

δεδομένων κρυπτογραφημένοι (safe 

password hashing) .

Χρήση των συναρτήσεων της PHP : 

password_hash()  και  password_verify() 

1. εφαρμογή μας να μην εμφανίζει 

κανένα προειδοποιητικό μήνυμα με 

την ενεργοποίηση όλων των 

warnings μέσω του αρχείου 

check_err_warn.php

2. ελέγχθηκαν και διορθώθηκαν όλα τα 

πιθανά λάθη (errors) και warnings 

των ιστοσελίδων του συστήματός 

μας με τη βοήθεια της κονσόλας του 

Google Chrome