Εντοπίστηκε επικίνδυνο backdoor σε ένα δημοφιλές Ruby library, το strong_password, το οποίο ελέγχει πόσο ισχυροί είναι οι κωδικοί πρόσβασης που επιλέγουν οι χρήστες.

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

Αυτό το δεύτερο ωφέλιμο φορτίο θα δημιουργήσει το πραγματικό backdoor στις εφαρμογές και στους ιστότοπους που χρησιμοποιούσαν τη strong_password βιβλιοθήκη.

Το backdoor θα στείλει τη διεύθυνση URL κάθε μολυσμένου ιστότοπου στο “smiley.zzz.com.ua” και στη συνέχεια περιμένει για οδηγίες.

Οι οδηγίες είναι αρχεία cookie, τα οποία ο μηχανισμός backdoor θα αποσυσκευάσει και θα τρέξει μέσα από μια λειτουργία “eval” (εκτέλεση).

Βασικά, αυτός ο μηχανισμός επιτρέπει στον hacker να τρέξει οποιοδήποτε κώδικα θέλει μέσα σε μια εφαρμογή που διαθέτει το backdoored library.

Ο μηχανισμός του backdoor ανακαλύφθηκε από τον προγραμματιστή Tute Costa κατά τη διάρκεια των τακτικών ελέγχων ασφαλείας

που εκτελεί πριν από την ενημέρωση των στοιχείων που χρησιμοποιούνται στο παραγωγικό περιβάλλον.

Ο Costa ανακάλυψε ότι ο hacker κατόρθωσε να αντικαταστήσει τον πραγματικό προγραμματιστή ως ιδιοκτήτη της RubyGems library, το κύριο αποθετήριο πακέτων της Ruby.

Ο hacker δημιούργησε μια νέα έκδοση για το strong_password library, δηλαδή την έκδοση 0.0.7, που περιέχει τον κακόβουλο κωδικό. Σύμφωνα με τα στατιστικά, 537 χρήστες έκαναν λήψη αυτής της κακόβουλης έκδοσης.

Το backdoor δεν φορτώθηκε ποτέ στον GitHub λογαριασμό. Διανεμήθηκε μόνο μέσω του RubyGems.

Ο Costa ενημέρωσε τόσο τον ιδιοκτήτη της βιβλιοθήκης όσο και την ομάδα ασφαλείας RubyGems για το εύρημα του. Η κακόβουλη έκδοση καταργήθηκε εντός μιας εβδομάδας από τη μεταφόρτωσή του.

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