Μετάβαση στο περιεχόμενο

Δοκιμή διείσδυσης

Από τη Βικιπαίδεια, την ελεύθερη εγκυκλοπαίδεια


Ως δοκιμή διείσδυσης (αγγλ.: penetration testing, ή αλλιώς pentest) ορίζεται μια δοκιμαστική εισβολή σε ένα πληροφοριακό σύστημα για την αξιολόγηση της ασφάλειας του. Με την μέθοδο αυτή γίνεται προσομοίωση επίθεσης από κακόβουλο εισβολέα που έχει σκοπό την εκμετάλλευση κενών ασφαλείας για την ανάδειξη των ευπαθειών του συστήματος.[1]

Ο έλεγχος διείσδυσης αποτελεί μέρος ενός πλήρους ελέγχου ασφαλείας. Για παράδειγμα, το πρότυπο ασφάλειας δεδομένων της βιομηχανίας καρτών πληρωμών απαιτεί δοκιμές διείσδυσης σε τακτική βάση, καθώς και μετά από αλλαγές στο σύστημα.[2][3] Η δοκιμή διείσδυσης μπορεί επίσης να συμβάλει στην αξιολόγηση κινδύνου, όπως περιγράφεται στο NIST SP 800-53.[4]

Τα προβλήματα ασφαλείας που εντοπίζονται κατά τη διάρκεια των δοκιμών διείσδυσης πρέπει να αναφέρονται στον ιδιοκτήτη του συστήματος.[5] Οι εκθέσεις δοκιμών διείσδυσης μπορούν επίσης να περιέχουν μια αξιολόγηση της πιθανής ζημίας στον οργανισμό και προτάσεις για τον μετριασμό του κινδύνου.

Ο δοκιμαστής διείσδυσης είναι ένας επαγγελματίας μεσαίου επιπέδου στον κλάδο της ασφάλειας.[6] Κατανοεί την ασφάλεια των πληροφοριών και χρησιμοποιεί διάφορες γλώσσες προγραμματισμού, όπως η Java και η Python.[7] Πρέπει να κατανοήσει τον μηχανισμό του κώδικα επίθεσης, καθώς η παρανόηση των αρχών πριν από την εφαρμογή του μπορεί να οδηγήσει σε προβλήματα.

Διάφορες προσομοιώσεις επιθέσεων

[Επεξεργασία | επεξεργασία κώδικα]

Τέτοιες προσομοιώσεις επίθεσης είναι η υποκλοπή πληροφοριών για τη χρησιμοποίηση τους σε βάρος των χρηστών του συστήματος. Η υποκλοπή των πληροφοριών γίνεται αφού έχει ανοιχτεί μία σύνοδος (session) μεταξύ του θύματος και του εισβολέα, κατά την οποία ο εισβολέας έχει σύνδεση σε όλα τα δεδομένα του συστήματος του θύματος.[8]

Άλλη γνωστή προσομοίωση επίθεσης είναι η άρνηση εξυπηρέτησης (Denial of Service) η οποία έχει ως αποτέλεσμα την απαγόρευση εισόδου διαφόρων υπηρεσιών. Η πιο διαδεδομένη είναι η άρνηση εξυπηρέτησης σε ιστοσελίδα η οποία υλοποιείται με την αποστολή πολλών συνεχόμενων πακέτων στον εξυπηρετητή (server) της ιστοσελίδας.[9]

Στάδια δοκιμών διείσδυσης

[Επεξεργασία | επεξεργασία κώδικα]

Η διαδικασία δοκιμής διείσδυσης μπορεί να απλοποιηθεί στα ακόλουθα πέντε βήματα:[10]

  1. Αναγνώριση: συλλογή σημαντικών πληροφοριών για το σύστημα-στόχο. Οι πληροφορίες αυτές μπορούν να χρησιμοποιηθούν για την αποτελεσματικότερη επίθεση στο στόχο. Για παράδειγμα, οι μηχανές αναζήτησης ανοιχτού κώδικα μπορούν να χρησιμοποιηθούν για την εύρεση δεδομένων που μπορούν να χρησιμοποιηθούν σε μια επίθεση κοινωνικής μηχανικής.
  2. Σάρωση: η χρήση τεχνικών μέσων για την απόκτηση πρόσθετων πληροφοριών σχετικά με το σύστημα.[11] Για παράδειγμα, το Nmap μπορεί να χρησιμοποιηθεί για σάρωση για ανοικτές θύρες.
  3. Απόκτηση πρόσβασης: χρησιμοποιώντας τα δεδομένα που συλλέγονται κατά τη φάση της αναγνώρισης και της σάρωσης, ένας εισβολέας μπορεί να εφαρμόσει ωφέλιμα φορτία για να εκμεταλλευτεί το σύστημα-στόχο.
  4. Διατήρηση της πρόσβασης: για να διατηρηθεί η πρόσβαση, πρέπει να ληφθούν μέτρα ώστε να παραμένουμε στο περιβάλλον-στόχο ανά πάσα στιγμή και να συλλέγουμε όσο το δυνατόν περισσότερα δεδομένα.
  5. Απόκρυψη των ιχνών: ο επιτιθέμενος πρέπει να καταστρέψει όλα τα ίχνη της παραβίασης του συστήματος του θύματος, όλα τα δεδομένα που έχει συλλέξει, τα αρχεία καταγραφής, προκειμένου να παραμείνει ανώνυμος.[12]

Μόλις ένας εισβολέας εκμεταλλευτεί μια ευπάθεια, μπορεί να αποκτήσει πρόσβαση σε άλλους υπολογιστές και η διαδικασία θα επαναληφθεί: θα αναζητήσει νέες ευπάθειες και θα προσπαθήσει να τις εκμεταλλευτεί.

Υπάρχουν διάφορα τυποποιημένα πλαίσια και μεθοδολογίες για τη διενέργεια δοκιμών διείσδυσης. Σε αυτά περιλαμβάνονται το Open Source Security Testing Methodology Manual (OSSTMM),[13] το Penetration Testing Execution Standard (PTES),[14] το NIST Special Publication 800-115, το Information Systems Security Assessment Framework (ISSAF) και το OWASP Testing Guidebook. Η CREST, ένας μη κερδοσκοπικός επαγγελματικός οργανισμός στον κλάδο της τεχνικής ασφάλειας στον κυβερνοχώρο, παρέχει το πρότυπο CREST Defensible Penetration Test, το οποίο χρησιμεύει ως κατευθυντήρια γραμμή για την επικύρωση εμπορικά εύλογων δοκιμών διείσδυσης.[15]

132-45A Ο έλεγχος διείσδυσης είναι ο έλεγχος ασφάλειας κατά τον οποίο οι αξιολογητές κινδύνου προσομοιώνουν επιθέσεις σε πραγματικό κόσμο για να εντοπίσουν τρόπους παράκαμψης των χαρακτηριστικών ασφαλείας μιας εφαρμογής, ενός συστήματος ή ενός δικτύου. Οι υπηρεσίες δοκιμών διείσδυσης της HACS συνήθως ελέγχουν στρατηγικά την αποτελεσματικότητα των προληπτικών και ανιχνευτικών μέτρων ασφαλείας που χρησιμοποιούνται από έναν οργανισμό για την προστασία περιουσιακών στοιχείων και δεδομένων. Στο πλαίσιο αυτής της υπηρεσίας, οι πιστοποιημένοι ηθικοί χάκερς συνήθως διεξάγουν μια προσομοίωση επίθεσης σε ένα σύστημα, συστήματα, εφαρμογές ή άλλο στόχο στο περιβάλλον, εντοπίζοντας αδυναμίες ασφαλείας. Μετά τις δοκιμές, συνήθως καταγράφουν τα τρωτά σημεία και περιγράφουν ποιες άμυνες είναι αποτελεσματικές και ποιες μπορούν να ξεπεραστούν ή να αξιοποιηθούν.

  1. «Αρχειοθετημένο αντίγραφο». Αρχειοθετήθηκε από το πρωτότυπο στις 9 Μαΐου 2008. Ανακτήθηκε στις 27 Μαΐου 2012. 
  2. «PCI Compliance – An Overview for Software Testers». blog.testlodge.com. Ανακτήθηκε στις 28 Ιανουαρίου 2025. 
  3. «PCI DSS Penetration Test: Ensuring Compliance and Security with PCI Pen Testing». redbotsecurity.com. Ανακτήθηκε στις 28 Ιανουαρίου 2025. 
  4. «Draft NIST SP 800-53A Rev. 5, Assessing Security and Privacy Controls in Information Systems and Organizations» (PDF). csrc.nist.rip. Ανακτήθηκε στις 28 Ιανουαρίου 2025. 
  5. «Writing a Penetration Testing Report». www.sans.org. Ανακτήθηκε στις 28 Ιανουαρίου 2025. 
  6. «Cyber Security Recruitment Agencies». www.computerfutures.com. Ανακτήθηκε στις 28 Ιανουαρίου 2025. 
  7. «How to become a penetration tester?». www.wallarm.com. Ανακτήθηκε στις 28 Ιανουαρίου 2025. 
  8. http://pentestmag.com/penetration-testing-strategy/
  9. http://www.google.gr/books?hl=el&lr=&id=ofbnE1xMl_kC&oi=fnd&pg=PR5&dq=penetration+testing&ots=GOywl_kIPn&sig=NB1BqI___1j5dA7qi-Vs8WPYOrk&redir_esc=y#v=onepage&q=penetration%20testing&f=false
  10. «What Are the Five Stages of Penetration Testing?». www.packetlabs.net. Ανακτήθηκε στις 18 Ιανουαρίου 2025. 
  11. «What is Penetration Testing?». www.akto.io. Ανακτήθηκε στις 18 Ιανουαρίου 2025. 
  12. «Penetration Testing Steps: A Comprehensive Guide». www.stationx.net. Ανακτήθηκε στις 18 Ιανουαρίου 2025. 
  13. «Open-Source Security Testing Methodology Manual». studyres.com. Ανακτήθηκε στις 18 Ιανουαρίου 2025. 
  14. «Penetration Testing Execution Standard (PTES)». socket.dev. Ανακτήθηκε στις 18 Ιανουαρίου 2025. 
  15. «CREST Defensible Penetration Test». www.crest-approved.org. Ανακτήθηκε στις 18 Ιανουαρίου 2025.