OWASP_logoΣυνεχίζοντας τον κύκλο άρθρων σχετικά με την ασφάλεια σε δικτυακά περιβάλλοντα σε συνεργασία με τον Παναγιώτη Καλαντζή, τελευταία στον χορό των αδυναμιών παρουσιάζεται η χρήση μη επικυρωμένων μεταπηδήσεων ή προωθήσεων από την εφαρμογή (Unvalidated Redirects and Forwards). Πολλές διαδικτυακές εφαρμογές χρησιμοποιούν για την μεταπήδηση ή προώθηση από σελίδα σε σελίδα εξειδικευμένες σελίδες που, πολύ συχνά, δέχονται ως δεδομένο εισόδου το ένα, μοναδικό και πλήρως αυτό-επεξηγούμενο «URL» της μορφής

http://www.example.com/redirect.php?url=evil.com

ή

http://www.example.com/a_page.php?fwd=page_requiring_authentication.php

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

Ακολούθως, στην περίπτωση της μεταπήδησης ο επιτιθέμενος μπορεί να χρησιμοποιήσει το μηχανισμό μεταπήδησης εφαρμογής που το θύμα εμπιστεύεται για να το προωθήσει σε άλλη εφαρμογή/ιστοσελίδα με στόχο το ηλεκτρονικό ψάρεμα (phishing) ή τη εγκατάσταση κακόβουλου λογισμικού (malware). οι χρήστες στον σύνδεσμο (link), ιδιαίτερα αν είναι μακροσκελής, κοιτούν το πρώτο μέρος με το URL να τους είναι αναγνωρίσιμο και της εμπιστοσύνης τους και αγνοούν την παράμετρο με το κακόβουλο τελικό προορισμό της.

Στην περίπτωση της προώθησης, η διαδικασία αυτή συμβαίνει συνήθως για την εσωτερική προώθηση των χρηστών στην ίδια εφαρμογή, λ.χ. μετά την επικύρωση των διαπιστευτηρίων χρήστη. Έτσι ο επιτιθέμενος, ζητά URL που πιθανώς παρακάμπτει την ασφάλεια πρόσβασης εφόσον η σελίδα-στόχος της προώθησης δέχεται κίνηση μόνο από προωθήσεις.

Συνήθη αποτελέσματα περιλαμβάνουν την προσπάθεια εγκατάστασης κακόβουλου λογισμικού στους φυλλομετρητές (browsers) των χρηστών, την εξαπάτηση των χρηστών σε αποκάλυψη κωδικών ή ευαίσθητων πληροφοριών και στην περίπτωση της εσωτερικής προώθησης την παράκαμψη των μεθόδων ασφάλειας πρόσβασης

Σε επιχειρηματικό επίπεδο πρέπει κανείς να αναλογιστεί την αξία που δίνει η επιχείρηση στην εμπιστοσύνη των πελατών, τις συνέπειες αν οι πελάτες της καταληφθούν από κακόβουλο λογισμικό αλλά και την πρόσβαση επιτιθέμενων σε μέρη της εφαρμογής που απαιτείται εξειδικευμένη πρόσβαση. Ακολούθως, η επιχειρηματική υπόληψη μπορεί να βλαφθεί ανεπανόρθωτα ενώ τα δεδομένα και η λειτουργία διαχειριστή της εφαρμογής ίσως είναι διαθέσιμα στον επιτιθέμενο.

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

  1. Η ολοκληρωτική αποφυγή χρήσης μεταπήδησης ή προώθησης με τη χρήση δυναμικών ιστοσελίδων που σε κάθε περίπτωση φορτώνουν μόνο το κατάλληλο περιεχόμενο και λειτουργικότητα,
  2. Σε περίπτωση χρήσης των 2 τεχνικών αυτών, δεν πρέπει να χρησιμοποιούνται δεδομένα εισόδου στα οποία έχει πρόσβαση ο χρήστης,
  3. Τέλος, αν πρέπει να χρησιμοποιηθούν δεδομένα εισόδου στα οποία έχει πρόσβαση ο χρήστης, απαιτείται επικύρωση των δεδομένων αυτών και καθώς κάτι τέτοιο ίσως να περιορίζει τη γενικότητα της λύσης, προτείνεται η χρήση αντιστοίχισης των δεδομένων με προκαθορισμένη λίστα. Έτσι αντί για πραγματικά URLs θα δίνεται ένα κωδικοποιημένο αλφαριθμητικό το οποίο στον διακομιστή θα μεταφράζεται σε URL.

Στο επόμενο άρθρο θα δούμε την αδυναμία που προκαλείται από τη χρήση έτοιμων αρθρωμάτων (modules) που έχουν ήδη γνωστά σφάλματα (Using Components with Known Vulnerabilities)

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

Share This: