Με το πόσο περίπλοκο είναι το λογισμικό, είναι δύσκολο να διασφαλίσουμε ότι δεν υπάρχουν σφάλματα. Αυτός είναι απλώς ο τρόπος των πραγμάτων που έχουν σχεδιαστεί από τον άνθρωπο και είναι εξαιρετικά περίπλοκα. Για να ελαχιστοποιηθεί το πρόβλημα, οι εταιρείες ανάπτυξης λογισμικού περιλαμβάνουν αναθεωρήσεις κώδικα στον κύκλο ζωής ανάπτυξης λογισμικού τους. Αλλά ακόμη και η προσεκτική κριτική των ειδικών δεν μπορεί να τα καταλάβει όλα. Οι περιορισμοί σε πραγματικό χρόνο και οι δημοσιονομικοί περιορισμοί το επιδεινώνουν αυτό. Εξαιτίας αυτού, τα σφάλματα κατευθύνονται στα συστήματα παραγωγής. Ορισμένα σφάλματα έχουν ελάχιστη ή καθόλου επίδραση, αλλά άλλα μπορούν να εισάγουν δυσάρεστες ευπάθειες ασφαλείας.
Μια ευπάθεια ασφαλείας είναι μια κατηγορία σφαλμάτων που επηρεάζουν την ασφάλεια του συστήματος με κάποιο τρόπο. Υπάρχει ένα ευρύ φάσμα πιθανών αποτελεσμάτων, αλλά τελικά, όλες οι ευπάθειες ασφαλείας είναι κακές για όλους. Δυστυχώς, η εύρεση σφαλμάτων μπορεί να είναι δύσκολη και χρονοβόρα. Ενώ οι προγραμματιστές μπορούν να αφιερώσουν περιορισμένο χρόνο σε δοκιμές για σφάλματα, μια άλλη ομάδα μαζί ξοδεύει πολύ περισσότερο χρόνο χρησιμοποιώντας την εφαρμογή - τους χρήστες.
Οι χρήστες ενός συστήματος, μαζί, ξοδεύουν πολύ περισσότερο χρόνο σε ένα σύστημα από ό,τι θα μπορούσαν ποτέ οι προγραμματιστές αυτού του συστήματος. Χρησιμοποιούν επίσης μια πολύ μεγαλύτερη ποικιλία συσκευών. Σε συνδυασμό, αυτό καθιστά το τέλειο περιβάλλον για την εύρεση σφαλμάτων—πολλά μάτια και θήκες.
Βάζοντας τους Χρήστες σε Δουλειά
Ο παραδοσιακός τρόπος χρήσης των χρηστών για την επίλυση σφαλμάτων είναι να υπάρχει κάποια λειτουργία αναφοράς σφαλμάτων που επιτρέπει στους χρήστες να αναφέρουν ένα σφάλμα που συναντούν. Οι προγραμματιστές μπορούν να χρησιμοποιήσουν αυτές τις πληροφορίες για την αναπαραγωγή, τον εντοπισμό και την αποκατάσταση του προβλήματος. Το πρόβλημα είναι ότι υπάρχει ένα ελάχιστο κίνητρο για τον χρήστη να αναφέρει τυχόν προβλήματα. Είναι μια διαδικασία που απαιτεί χρόνο, έχει πιθανές επιπτώσεις στο απόρρητο και γενικά δεν οδηγεί σε σχόλια, ακόμα κι αν το πρόβλημα επιδιορθωθεί.
Τα τρωτά σημεία ασφαλείας είναι ακόμη χειρότερα. Ένας κακόβουλος χρήστης θα μπορούσε να επιλέξει να χρησιμοποιήσει μια ευπάθεια που βρίσκει ενεργά. Ανάλογα με το θέμα, μπορεί να είναι δυνατό να αποκτήσετε πρόσβαση σε κάτι πολύτιμο, είτε στη μαύρη αγορά είτε μέσω λύτρων ή εκβιασμού. Εναλλακτικά, είναι δυνατή η πώληση της γνώσης της ευπάθειας στη μαύρη αγορά. Είτε έτσι είτε αλλιώς, οι χρήστες δεν έχουν κίνητρα να αναφέρουν σφάλματα και αποθαρρύνονται να αναφέρουν ευπάθειες ασφαλείας.
Γυρίζοντας τα τραπέζια
Ένα σύστημα επιβράβευσης σφαλμάτων είναι ένας τρόπος για να ανατρέψετε τους πίνακες για να ενθαρρύνετε την ενεργή αναφορά ζητημάτων ασφαλείας. Η μέθοδος είναι απλή, τους ανταμείβει. Η τυπική μέθοδος είναι η καταβολή χρηματικού επιδόματος και η παροχή δημόσιας αναγνώρισης της συνεισφοράς. Αυτό ανταμείβει άμεσα τους χρήστες για την αναφορά μιας ευπάθειας ασφαλείας και τους ενθαρρύνει να κάνουν το σωστό.
Τα συστήματα bounty bug είναι συνήθως ανοιχτά σε οποιονδήποτε. Κάθε χρήστης που εντοπίζει μια ευπάθεια ασφαλείας μπορεί να το αναφέρει και να πληρωθεί. Ωστόσο, υπάρχουν κάποιες επιφυλάξεις. Για να πληρωθείτε, γενικά πρέπει να είστε το πρώτο άτομο που θα αναφέρει ένα ζήτημα, αν και μερικές φορές υπάρχουν σπάνιες εξαιρέσεις σε εξαιρετικές περιπτώσεις. Πρέπει επίσης να ακολουθείτε τους κανόνες.
Οι κανόνες ενός συστήματος επιβράβευσης σφαλμάτων παρέχουν πλήρη προστασία από νομικές ενέργειες εάν παραμείνετε εντός αυτών. Συχνά είναι λεπτομερείς αλλά σχετικά απλές. Μην αποκτάτε πρόσβαση στα δεδομένα άλλων ανθρώπων, μην χρησιμοποιείτε κακόβουλα τα τρωτά σημεία και τα αποκαλύπτετε ιδιωτικά και υπεύθυνα. Μπορεί επίσης να υπάρχουν κάποια πράγματα που θεωρούνται εκτός ορίων.
Πώς είναι οι ανταμοιβές;
Ρεαλιστικά, οι ανταμοιβές βασίζονται στην καλή θέληση. Υπάρχει επίσης ένα στοιχείο του «αν αυτό προκάλεσε παραβίαση δεδομένων, θα έπρεπε να πληρώσουμε πολύ μεγαλύτερο πρόστιμο». Γενικά, η εταιρεία πληρώνει ένα σχετικά χαμηλό ποσό για αυτήν. Αυτό, ωστόσο, μπορεί να είναι αρκετά για τον δημοσιογράφο. Ορισμένα σφάλματα μπορεί να πληρωθούν για λιγότερο από εκατό δολάρια. Σε ακραίες περιπτώσεις, ωστόσο, ορισμένες εταιρείες έχουν πληρώσει εκατό χιλιάδες δολάρια για σοβαρά τρωτά σημεία. Φυσικά, τα περισσότερα bounties είναι πολύ χαμηλότερα από αυτό.
Ιστορικά, τα bounties bug ήταν πολύ χαμηλότερα και μερικές φορές περισσότερο ένα απλό ευχαριστώ. Στέλνοντας ένα δωρεάν μπλουζάκι μπλουζάκι ή παρέχοντας δωρεάν συνδρομή εφ' όρου ζωής στην υπηρεσία, για παράδειγμα. Ωστόσο, οι μεγάλες εταιρείες τεχνολογίας έχουν ενισχύσει την αγορά, όπως και η άφιξη των πλατφορμών bounty bug. Οι πλατφόρμες επιβράβευσης σφαλμάτων είναι ιστότοποι που φιλοξενούν τα προγράμματα επιβράβευσης σφαλμάτων πολλών πελατών. Ομαδοποιούν τα πάντα σε ένα μέρος. Αυτό καθιστά πολύ πιο εύκολο για έναν μικρότερο οργανισμό να εκτελέσει ένα σύστημα επιβράβευσης σφαλμάτων. Ένας από τους τρόπους με τους οποίους γίνεται αυτό είναι απλώς τυποποιώντας τη διαδικασία.
Φυσικά, η ανταμοιβή σε ένα bug bounty είναι πολύ μικρότερη από αυτή που θα μπορούσε να επιτευχθεί με την πώληση του bug στη μαύρη αγορά. Η ιδέα πιστεύει ότι, γενικά, οι περισσότεροι άνθρωποι θέλουν να κάνουν το σωστό. Ή τουλάχιστον δεν θέλουν να τους στοιχειώσει ο κίνδυνος παραβίασης του νόμου.
συμπέρασμα
Ένα bug bounty είναι ένα σύστημα πληρωμής ανταμοιβής για την εύρεση και την υπεύθυνη αποκάλυψη μιας ευπάθειας ασφαλείας. Ενθαρρύνει ενεργά τους χρήστες να δοκιμάσουν και να βελτιώσουν την ασφάλεια των προϊόντων. Φέρνει πολλά νέα μάτια στη διαδικασία δοκιμών, όλα με ελάχιστο κόστος για την εταιρεία. Φυσικά, ως κάποιος που συμμετέχει σε ένα σύστημα επιβράβευσης σφαλμάτων, είναι απαραίτητο να είστε προσεκτικοί και να κατανοείτε τους κανόνες.
Το hacking είναι παράνομο. το πρόγραμμα επιβράβευσης σφαλμάτων επιτρέπει τη δοκιμή ορισμένων πραγμάτων, αλλά συνήθως περιλαμβάνει περιορισμούς. Εάν δεν ακολουθήσετε τους κανόνες, μπορεί να είστε ποινικά υπεύθυνοι. Εάν ακολουθήσετε τους κανόνες, βρείτε και αναφέρετε ένα σφάλμα, ενδέχεται να λάβετε μια καλή πληρωμή και να αυξήσετε την ασφάλεια για εσάς και τους άλλους χρήστες.