dc.description.abstract | To SQL Injection αποτελεί βασική επίθεση που χρησιμοποιείται είτε για να αποκτήσει κάποιος παράνομη πρόσβαση σε μια βάση δεδομένων είτε για να ανακτήσει πληροφορίες απευθείας από τη βάση. Οι βασικές αρχές που χαρακτηρίζουν το SQL Injection είναι απλές και εύκολες στην εκτέλεση και τη διαχείριση. Κάθε πρόγραμμα ή εφαρμογή μπορεί να είναι ευπαθές στην εισαγωγή εντολών SQL συμπεριλαμβανομένων αποθηκευμένων διαδικασιών που εκτελούνται με απευθείας σύνδεση στη βάση δεδομένων. Οι διαδικτυακές εφαρμογές βρίσκονται σε υψηλό κίνδυνο για επίθεση, δεδομένου ότι συχνά ένας εισβολέας μπορεί να εκμεταλλευτεί τα τρωτά τους σημεία κάνοντας SQL Injection απομακρυσμένα χωρίς οποιαδήποτε βάση δεδομένων ή αυθεντικοποίηση. Ευτυχώς, οι επιθέσεις SQL Injection είναι εύκολο να αποτραπούν με χρήση απλών πρακτικών κωδικοποίησης. Ωστόσο, κάθε παράμετρος που περνάει σε κάποια δυναμική βάση δεδομένων μέσω κάποιας εντολής SQL, θα πρέπει να είναι επικυρωμένη ή αλλιώς να δεσμευτούν μεταβλητές που πρέπει υποχρεωτικά να χρησιμοποιούνται. Το SQL Injection είναι ένας από τους πολλούς δικτυακούς μηχανισμούς επίθεσης που χρησιμοποιούνται από χάκερ με σκοπό την κλοπή των δεδομένων από τις διάφορες web εφαρμογές. Είναι ίσως μία από τις πιο κοινές τεχνικές επίθεσης σε επίπεδο εφαρμογής που χρησιμοποιούνται σήμερα. Το είδος αυτό της επίθεσης εκμεταλλεύεται τις δυνατότητες της μη εξουσιοδοτημένης κωδικοποίησης των web εφαρμογών που επιτρέπουν στους χάκερ να προσθέσουν εντολές SQL για παράδειγμα, σε κάποια login φόρμα για να τους επιτρέψει να αποκτήσουν πρόσβαση στα δεδομένα εντός της βάσης δεδομένων. Στην ουσία, το SQL Injection οφείλεται στο γεγονός ότι τα διαθέσιμα πεδία του χρήστη επιτρέπουν σε SQL εντολές να περάσουν και να "ρωτήσουν" τη βάση δεδομένων άμεσα. Γενικά, με τη μέθοδο των SQL injections κακόβουλοι χρήστες επιδιώκουν να εκμεταλλευτούν ευπάθειες στην ασφάλεια μιας εφαρμογής web, ώστε να επέμβουν στα δεδομένα της βάσης. Ως μέθοδος επίθεσης δεν είναι νέα ούτε πολύπλοκη. | |