Το GitHub κυκλοφόρησε ένα σύστημα μηχανικής εκμάθησης για να βρει τρωτά σημεία στον κώδικα

Λογότυπο GitHub

Αποκαλύφθηκε το GitHub πριν από αρκετές ημέρες η προσθήκη του πειράματα ενός συστήματος μηχανικής μάθησηςl στην υπηρεσία σάρωσης κωδικών για τον εντοπισμό κοινών τύπων τρωτών σημείων Στον κώδικα. Με αυτό, η τεχνολογία ανάλυσης κώδικα του GitHub που βασίζεται σε CodeQL έχει ανανεωθεί και τώρα χρησιμοποιεί μηχανική εκμάθηση (ML) για να βρει πιθανές ευπάθειες ασφαλείας στον κώδικα.

Και είναι αυτό το GitHub απέκτησε την τεχνολογία για το CodeQL ως μέρος της εξαγοράς Semmie. Το CodeQL χρησιμοποιείται από ερευνητικές ομάδες ασφαλείας για την εκτέλεση σημασιολογικής ανάλυσης του κώδικα και το GitHub τον έκανε ανοιχτό κώδικα.

Με αυτά τα μοντέλα, το CodeQL μπορεί να εντοπίσει περισσότερες αναξιόπιστες ροές δεδομένων χρήστη και, επομένως, περισσότερες πιθανές ευπάθειες ασφαλείας.

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

Από τα προβλήματα που εντοπίστηκαν από το νέο σύστημα, αναφέρονται σφάλματα που οδηγούν σε δέσμες ενεργειών μεταξύ τοποθεσιών (XSS), παραμόρφωση των διαδρομών αρχείων (για παράδειγμα, μέσω της ένδειξης "/.."), αντικατάσταση ερωτημάτων SQL και NoSQL. .

Η σάρωση κώδικα μπορεί πλέον να βρει περισσότερες πιθανές ευπάθειες ασφαλείας αξιοποιώντας ένα νέο μοντέλο βαθιάς εκμάθησης. Αυτή η πειραματική δυνατότητα είναι διαθέσιμη σε δημόσια έκδοση beta για τα αποθετήρια JavaScript και TypeScript στο GitHub.com.

Το νέο εργαλείο του GitHub fue κυκλοφόρησε ως δωρεάν δημόσια beta Για όλους τους χρήστες, η δυνατότητα χρησιμοποιεί μηχανική εκμάθηση και βαθιά εκμάθηση για τη σάρωση βάσεων κώδικα και τον εντοπισμό κοινών ευπαθειών ασφαλείας πριν από την αποστολή ενός προϊόντος.

Η πειραματική λειτουργία είναι προς το παρόν διαθέσιμη σε όλους τους χρήστες της πλατφόρμας, συμπεριλαμβανομένων των χρηστών του GitHub Enterprise ως Προηγμένη λειτουργία ασφαλείας του GitHub, και μπορεί να χρησιμοποιηθεί για έργα γραμμένα σε JavaScript ή TypeScript.

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

Το εργαλείο έχει σχεδιαστεί για να αναζητά τα τέσσερα πιο κοινά τρωτά σημεία που επηρεάζουν έργα γραμμένα σε αυτές τις δύο γλώσσες: cross-site scripting (XSS), route injection, NoSQL injection και SQL injection.

Η υπηρεσία σάρωσης κώδικα σάς επιτρέπει να εντοπίζετε ευπάθειες σε πρώιμο στάδιο ανάπτυξης σαρώνοντας κάθε λειτουργία git push για πιθανά προβλήματα.

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

Με νέες δυνατότητες ανάλυσης, η σάρωση κώδικα μπορεί να δημιουργήσει ακόμη περισσότερες ειδοποιήσεις για τέσσερα κοινά μοτίβα ευπάθειας: Cross-Site Scripting (XSS), Path Injection, NoSQL Injection και SQL Injection. Μαζί, αυτοί οι τέσσερις τύποι ευπάθειας αντιπροσωπεύουν πολλές από τις πρόσφατες ευπάθειες (CVE) στο οικοσύστημα JavaScript/TypeScript και η βελτίωση της ικανότητας σάρωσης κώδικα για τον εντοπισμό τέτοιων τρωτών σημείων νωρίς στη διαδικασία ανάπτυξης είναι το κλειδί για να βοηθήσει τους προγραμματιστές να γράφουν πιο ασφαλή κώδικα.

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

Τελικά για όσους ενδιαφέρονται να μάθουν περισσότερα γι 'αυτό, μπορείτε να ελέγξετε τις λεπτομέρειες Στον ακόλουθο σύνδεσμο.

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


Αφήστε το σχόλιό σας

Η διεύθυνση email σας δεν θα δημοσιευθεί. Τα υποχρεωτικά πεδία σημειώνονται με *

*

*

  1. Υπεύθυνος για τα δεδομένα: Miguel Ángel Gatón
  2. Σκοπός των δεδομένων: Έλεγχος SPAM, διαχείριση σχολίων.
  3. Νομιμοποίηση: Η συγκατάθεσή σας
  4. Κοινοποίηση των δεδομένων: Τα δεδομένα δεν θα κοινοποιούνται σε τρίτους, εκτός από νομική υποχρέωση.
  5. Αποθήκευση δεδομένων: Βάση δεδομένων που φιλοξενείται από τα δίκτυα Occentus (ΕΕ)
  6. Δικαιώματα: Ανά πάσα στιγμή μπορείτε να περιορίσετε, να ανακτήσετε και να διαγράψετε τις πληροφορίες σας.