Δυνατότητα δημιουργίας εικονικών υπογραφών ECDSA σε Java SE. Ευπάθειες σε MySQL, VirtualBox και Solaris

Η Oracle δημοσίευσε μια προγραμματισμένη έκδοση ενημερώσεων για τα προϊόντα της (Critical Patch Update), με στόχο την εξάλειψη κρίσιμων προβλημάτων και τρωτών σημείων. Η ενημέρωση του Απριλίου διόρθωσε συνολικά 520 ευπάθειες.

Κάποια προβλήματα:

  • 6 Ζητήματα ασφάλειας σε Java SE. Όλα τα τρωτά σημεία μπορούν να αξιοποιηθούν εξ αποστάσεως χωρίς έλεγχο ταυτότητας και να επηρεάσουν περιβάλλοντα που επιτρέπουν την εκτέλεση αναξιόπιστου κώδικα. Σε δύο ζητήματα έχει εκχωρηθεί επίπεδο σοβαρότητας 7.5. Τα τρωτά σημεία έχουν επιλυθεί στις εκδόσεις Java SE 18.0.1, 11.0.15 και 8u331.

    Ένα από τα προβλήματα (CVE-2022-21449) σας επιτρέπει να δημιουργήσετε μια εικονική ψηφιακή υπογραφή ECDSA χρησιμοποιώντας μηδενικές παραμέτρους καμπύλης κατά τη δημιουργία της (εάν οι παράμετροι είναι μηδέν, τότε η καμπύλη πηγαίνει στο άπειρο, επομένως οι μηδενικές τιμές απαγορεύονται ρητά στο η προδιαγραφή). Οι βιβλιοθήκες Java δεν έλεγξαν για μηδενικές τιμές παραμέτρων ECDSA, επομένως κατά την επεξεργασία υπογραφών με μηδενικές παραμέτρους, η Java τις θεωρούσε έγκυρες σε όλες τις περιπτώσεις).

    Μεταξύ άλλων, η ευπάθεια μπορεί να χρησιμοποιηθεί για τη δημιουργία εικονικών πιστοποιητικών TLS που θα γίνονται δεκτά στην Java ως σωστά, καθώς και για την παράκαμψη του ελέγχου ταυτότητας μέσω WebAuthn και τη δημιουργία εικονικών υπογραφών JWT και διακριτικών OIDC. Με άλλα λόγια, η ευπάθεια σάς επιτρέπει να δημιουργήσετε καθολικά πιστοποιητικά και υπογραφές που θα γίνονται αποδεκτές και θα γίνονται αντιληπτές ως σωστές σε χειριστές Java που χρησιμοποιούν τυπικές κλάσεις java.security.* για επαλήθευση. Το πρόβλημα εμφανίζεται στους κλάδους Java 15, 16, 17 και 18. Ένα παράδειγμα δημιουργίας πλαστών πιστοποιητικών είναι διαθέσιμο. jshell> εισαγωγή java.security.* jshell> var keys = KeyPairGenerator.getInstance("EC").generateKeyPair() κλειδιά ==> java.security.KeyPair@626b2d4a jshell> var blankSignature = νέο byte[64]=blank byte[64] {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, … , 0, 0, 0, 0, 0, 0, 0, 0 } jshell > var sig = Signature.getInstance("SHA256WithECDSAInP1363Format") sig ==> Αντικείμενο υπογραφής: SHA256WithECDSAInP1363Format jshell> sig.initVerify(keys.getPublic()) jshell> sig.update("Hello, World".getBytes()) jshell> sig.verify(blankSignature) $8 ==> true

  • 26 τρωτά σημεία στον διακομιστή MySQL, δύο από τα οποία μπορούν να αξιοποιηθούν εξ αποστάσεως. Στα πιο σοβαρά προβλήματα που σχετίζονται με τη χρήση του OpenSSL και του protobuf εκχωρείται ένα επίπεδο σοβαρότητας 7.5. Λιγότερο σοβαρά τρωτά σημεία επηρεάζουν το εργαλείο βελτιστοποίησης, το InnoDB, την αναπαραγωγή, την προσθήκη PAM, το DDL, το DML, το FTS και την καταγραφή. Τα ζητήματα επιλύθηκαν στις εκδόσεις MySQL Community Server 8.0.29 και 5.7.38.
  • 5 ευπάθειες στο VirtualBox. Στα ζητήματα εκχωρείται ένα επίπεδο σοβαρότητας από 7.5 έως 3.8 (η πιο επικίνδυνη ευπάθεια εμφανίζεται μόνο στην πλατφόρμα των Windows). Τα τρωτά σημεία επιδιορθώνονται στην ενημέρωση του VirtualBox 6.1.34.
  • 6 τρωτά σημεία στο Solaris. Τα προβλήματα επηρεάζουν τον πυρήνα και τα βοηθητικά προγράμματα. Στο πιο σοβαρό πρόβλημα στις επιχειρήσεις κοινής ωφέλειας εκχωρείται επίπεδο κινδύνου 8.2. Τα τρωτά σημεία επιλύονται στην ενημέρωση Solaris 11.4 SRU44.

Πηγή: opennet.ru

Προσθέστε ένα σχόλιο