ΕΛ/ΛΑΚ | creativecommons.gr | mycontent.ellak.gr |
freedom

Βρείτε κενά ασφαλείας σε Ιστοσελίδα ή Web εφαρμογή με το OWASP ZAP

Οι ιστοσελίδες και οι web εφαρμογές, είναι προγράμματα που τρέχουν σε απομακρυσμένους server και εκτελούνται συνήθως στον browser μας. Η ασφάλεια τους είναι κρίσιμης σημασίας για όλους μας και για αυτό θα δούμε πως οι αναλυτές ασφάλειας αλλά και οι hackers βρίσκουν κενά ασφαλείας σε ιστοσελίδες και web εφαρμογές με το OWASP Zap

Οι ιστοσελίδες και οι web εφαρμογές1, λαμβάνουν αιτήματα από χρήστες και «απαντάνε» μέσω των διακομιστών στα οποία φιλοξενούνται. Είναι λοιπόν ιδιαίτερα σημαντική η ασφάλεια αυτών των εφαρμογών και των διακομιστών τους μιας και αποτελούν ένα σημείο εισόδου σε ολόκληρο το εσωτερικό του δικτύου του οργανισμού που το αναπτύσσει.

Επειδή λοιπόν η web εφαρμογή έχει σχεδιαστεί να λαμβάνει ένα αίτημα από το χρήστη και να στέλνει αυτή την είσοδο πίσω στο διακομιστή ή τη βάση δεδομένων ο εισβολέας μπορεί να στείλει τις κακόβουλες εισόδους του (πχ μέσω SQL Injection ) στους διακομιστές και στο δίκτυο, εάν το Web εφαρμογή δεν είναι σωστά ασφαλισμένη.

Μια από τις διάφορες εφαρμογές που χρησιμοποιούνται για τον έλεγχο τις ασφάλειας είναι το OWASP Zap. Το OWASP (όπως και το OpenVAS που θα βρείτε εδώ) είναι ένα Open Web Application Security Project, μια ουδέτερη, μη κερδοσκοπική ομάδα εθελοντών οι οποίοι είναι αφοσιωμένοι στην ασφάλεια των Wep εφαρμογών.

Η ίδια ομάδα έχει αναπτύξει το WebGoat2, μια, σκόπιμα ευάλωτη, web εφαρμογή που χρησιμοποιείται για τη διδασκαλία και τον έλεγχο της ασφάλειας των Web εφαρμογών. Στο πλαίσιο αυτής της προσπάθειας, ανέπτυξαν επίσης το εργαλείο OWASP Zed Attack Proxy (ZAP)3.

Το OWASP ZAP είναι ένα all-in-one εργαλείο ανεπτυγμένο σε Java με ένα διαισθητικό GUI και ισχυρά χαρακτηριστικά όπως fuzzing, scripting, spidering, proxying και επιθέσεις σε Web εφαρμογές. Είναι επίσης επεκτάσιμη μέσω ενός αριθμού πρόσθετων στοιχείων για να επεκταθούν ακόμα περισσότερο οι δυνατότητές του.

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

Βήμα 1: Ξεκινάμε το OWASP ZAP

Εφόσον έχετε το Kali Linux  μπορείτε να ξεκινήσετε το OWASP ZAP από το τερματικό

1
owasp-zap

Η εκκίνηση της εφαρμογή είναι αργή, οπότε να είστε υπομονετικοί.

Εναλλακτικά  πηγαίνετε στο Applications -> Web Application Analysis -> owasp-zap. Και πάλι, να είστε υπομονετικοί, καθώς θα χρειαστεί λίγο για να φορτώσετε το εργαλείο.

Το πρώτο πράγμα που θα δείτε μόλις φορτώσει η εφαρμογή είναι η άδεια χρήσης. Προχωρήστε και αποδεχτείτε τους όρους αν είστε εντάξει με αυτούς. Πρόκειται για μια τυπική, ανοιχτού κώδικα άδεια χρήσης Apache.

Βήμα 2: Το interface του OWASP ZAP

Μόλις ανοίξει το OWASP ZAP θα παρατηρήσετε ότι το εργαλείο έχει πολλά ισχυρά χαρακτηριστικά, αλλά εμείς θα δοκιμάσουμε μόνο τη λειτουργία του «Attack» στο στην καρτέλα «Quick Start». Σε αυτήν τη λειτουργία, το OWASP ZAP κάνει επίθεση στον ιστότοπο η την διεύθυνση της web εφαρμογής που ορίζουμε και αρχίζει να ψάχνει για ευπάθειες και κενά ασφαλείας.

Βρείτε κενά ασφαλείας σε Ιστοσελίδα ή Web εφαρμογή με το OWASP ZAP

Βήμα 3: Επίθεση σε ιστοσελίδα ή Web εφαρμογή

Ας δοκιμάσουμε έναν ιστότοπο που σκόπιμα έμεινε ευάλωτος και είναι ασφαλής για δοκιμή, το webscantest.com. Βάλτε αυτο το URL στο πλαίσιο του «URL to attack» και στη συνέχεια απλά κάντε κλικ στο κουμπί «Attack» κάτω από αυτό.

Το OWASP ZAP θα αρχίσει τώρα να ψάχνει και να δοκιμάζει την web εφαρμογή για πολλές και διαφόρων ειδών ευπάθειες.Βήμα 4: Αποτελέσματα επίθεσης

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

Όπως μπορείτε να δείτε στο κάτω αριστερό παράθυρο, το OWASP ZAP μας παρέχει 8 κατηγοριοποιημένες ανάλογα με τον τύπο ευπάθειας, κενά ασφαλείας. Στην περίπτωση αυτή, είναι:

  • Cross Site Scripting
  • Remote OS Command Injection
  • Directory Browsing
  • X-Frame-Options Header Not Set
  • Cookie set without HttpOnly flag
  • Password Autocomplete in browser
  • Web Browser XSS Protection Not Enabled
  • X-Content-Type-Options Header Missing

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

Στο παραπάνω στιγμιότυπο οθόνης, κάναμε κλικ στον τύπο ευπάθειας «Cross Site Scripting» για να δούμε την αξιολόγηση του κινδύνου (Υψηλή). Στη συνέχεια, επεκτείναμε την ειδοποίηση για να δούμε κάθε τρωτό σημείο XSS σε αυτή την ιστοσελίδα.

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

Βήμα 5: Εγκατάσταση Proxy στον Firefox

Για ευκολία χρήσης, μπορούμε επίσης να εγκαταστήσουμε την επέκταση «Plug-n-Hack» στο προγράμματα περιήγησης Firefox. Από την ίδια καρτέλα «Quick Start», μπορείτε να δείτε το κουμπί «Plug-n-Hack». Απλά κάντε κλικ σε αυτό για να εγκαταστήσετε την επέκταση στο browser.

Μόλις ανοίξει ο browser και κάνετε κλικ στο «Click to setup!» Θα λάβετε μια προειδοποίηση όπως αυτή παρακάτω. προχωρήστε και κάντε κλικ στην επιλογή «Allow».

Τώρα, μπορείτε απλώς να χρησιμοποιήσετε το πρόγραμμα περιήγησης και ο οποιοσδήποτε ιστότοπος που επισκέπτεστε θα είναι αυτόματα διαθέσιμος στην εφαρμογή OWASP ZAP.

Επίλογος

Είναι σημαντικό να είμαστε πάντα ενήμεροι για τα «εργαλεία» που χρησιμοποιούνται από κακόβουλους χρήστες για να βλάψουν την ιστοσελίδα ή την web εφαρμογή μας, αλλά και να αποφεύγουμε να δίνουμε προσωπικά δεδομένα σε ιστοσελίδες οι οποίες μπορεί να βρούμε ότι έχουν κενά ασφαλείας τα οποία μένουν για καιρό χωρίς κάποια διόρθωση.


Παραπομπές:

  1. Διαδικτυακή εφαρμογή (el.wikipedia.org)
  2. OWASP WebGoat Project (επίσημη ιστοσελίδα)
  3. OWASP Zed Attack Proxy Project (επίσημη ιστοσελίδα)

Πηγή άρθρου: https://cerebrux.net/

Leave a Comment