Possibilità di generare firme fittizie ECDSA in Java SE. Vulnerabilità in MySQL, VirtualBox e Solaris

Oracle ha pubblicato un aggiornamento programmato per i suoi prodotti (Critical Patch Update), mirato a risolvere problemi critici e vulnerabilità. Nell'aggiornamento di aprile sono state risolte un totale di 520 vulnerabilità.

Problemi riscontrati:

  • 6 problemi di sicurezza in Java SE. Tutte le vulnerabilità possono essere sfruttate da remoto senza autenticazione e interessano ambienti che consentono l'esecuzione di codice non attendibile. Due problemi hanno un livello di gravità di 7.5. Le vulnerabilità sono state corrette nelle versioni Java SE 18.0.1, 11.0.15 e 8u331.

    Uno dei problemi (CVE-2022-21449) consente di generare una falsa firma digitale ECDSA, utilizzando parametri nulli della curva (se i parametri sono nulli, la curva va all'infinito, quindi i valori nulli sono esplicitamente vietati nella specifica). Nelle librerie Java mancava il controllo sui valori nulli dei parametri ECDSA, quindi durante l'elaborazione di firme con parametri nulli, Java considerava sempre queste ultime valide.

    In particolare, la vulnerabilità può essere utilizzata per generare falsi di certificati TLS, che verranno accettati in Java come validi, nonché per bypassare l'autenticazione tramite WebAuthn e generare false firme JWT e token OIDC. In altre parole, la vulnerabilità consente di generare certificati e firme universali che verranno accettati e considerati validi nei gestori Java che utilizzano le classi standard java.security.* per la verifica. Il problema si manifesta nelle versioni Java 15, 16, 17 e 18. È disponibile un esempio di generazione di certificati falsi. jshell> import java.security.* jshell> var keys = KeyPairGenerator.getInstance("EC").generateKeyPair() keys ==> java.security.KeyPair@626b2d4a jshell> var blankSignature = new byte[64] blankSignature ==> 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 ==> Signature object: SHA256WithECDSAInP1363Format jshell> sig.initVerify(keys.getPublic()) jshell> sig.update("Hello, World".getBytes()) jshell> sig.verify(blankSignature) $8 ==> true

  • 26 vulnerabilità in server MySQL, di cui due possono essere sfruttate da remoto. I problemi più gravi, legati all'uso di OpenSSL e protobuf, hanno livelli di gravità pari a 7.5. Vulnerabilità meno pericolose riguardano l'ottimizzatore, InnoDB, la replica, il plugin PAM, DDL, DML, FTS e la gestione dei log. I problemi sono stati risolti nelle versioni MySQL Community Server 8.0.29 e 5.7.38.
  • 5 vulnerabilità in VirtualBox. I problemi hanno un livello di gravità compreso tra 7,5 e 3,8 (la vulnerabilità più grave si manifesta solo sulla piattaforma Windows). Le vulnerabilità sono state risolte nell'aggiornamento di VirtualBox 6.1.34.
  • 6 vulnerabilità in Solaris. I problemi riguardano il kernel e le utility. Alla problematica più seria nelle utility è stato assegnato un livello di pericolo pari a 8,2. Le vulnerabilità sono state risolte nell'aggiornamento di Solaris 11.4 SRU44.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster