Mogelijkheid om dummy ECDSA-handtekeningen te genereren in Java SE. Kwetsbaarheden in MySQL, VirtualBox en Solaris

Oracle heeft een geplande release van updates voor zijn producten gepubliceerd (Critical Patch Update), gericht op het elimineren van kritieke problemen en kwetsbaarheden. De update van april elimineerde in totaal 520 kwetsbaarheden.

Enkele problemen:

  • 6 Beveiligingsproblemen in Java SE. Alle kwetsbaarheden kunnen op afstand worden uitgebuit zonder authenticatie en beïnvloeden omgevingen waarin onbetrouwbare code kan worden uitgevoerd. Twee problemen hebben het ernstniveau 7.5 gekregen. De kwetsbaarheden zijn opgelost in Java SE 18.0.1, 11.0.15 en 8u331 releases.

    Een van de problemen (CVE-2022-21449) stelt u in staat een fictieve digitale ECDSA-handtekening te genereren met behulp van nulcurveparameters bij het genereren ervan (als de parameters nul zijn, gaat de curve naar oneindig, dus nulwaarden zijn expliciet verboden in de specificatie). De Java-bibliotheken controleerden niet op nulwaarden van ECDSA-parameters, dus bij het verwerken van handtekeningen met nulparameters beschouwde Java deze in alle gevallen als geldig).

    De kwetsbaarheid kan onder meer worden gebruikt om fictieve TLS-certificaten te genereren die in Java als correct worden geaccepteerd, maar ook om authenticatie via WebAuthn te omzeilen en fictieve JWT-handtekeningen en OIDC-tokens te genereren. Met andere woorden: door de kwetsbaarheid kunt u universele certificaten en handtekeningen genereren die worden geaccepteerd en als correct worden beschouwd in Java-handlers die standaard java.security.*-klassen gebruiken voor verificatie. Het probleem doet zich voor in Java-takken 15, 16, 17 en 18. Er is een voorbeeld beschikbaar van het genereren van valse certificaten. jshell> import java.security.* jshell> var sleutels = KeyPairGenerator.getInstance("EC").generateKeyPair() sleutels ==> 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 ==> Handtekeningobject: SHA256WithECDSAInP1363Format jshell> sig.initVerify(keys.getPublic()) jshell> sig.update("Hallo wereld".getBytes()) jshell> sig.verify(blankSignature) $8 ==> true

  • 26 kwetsbaarheden in de MySQL-server, waarvan er twee op afstand kunnen worden misbruikt. De ernstigste problemen die verband houden met het gebruik van OpenSSL en protobuf krijgen een ernstniveau van 7.5. Minder ernstige kwetsbaarheden hebben invloed op de optimizer, InnoDB, replicatie, PAM-plug-in, DDL, DML, FTS en logging. De problemen zijn opgelost in MySQL Community Server 8.0.29 en 5.7.38 releases.
  • 5 kwetsbaarheden in VirtualBox. De problemen krijgen een ernstniveau toegewezen van 7.5 tot 3.8 (de gevaarlijkste kwetsbaarheid komt alleen voor op het Windows-platform). De kwetsbaarheden zijn opgelost in de VirtualBox 6.1.34-update.
  • 6 kwetsbaarheden in Solaris. De problemen hebben invloed op de kernel en hulpprogramma's. Het ernstigste probleem in de nutsvoorzieningen krijgt een gevaarniveau van 8.2. De kwetsbaarheden zijn opgelost in de Solaris 11.4 SRU44 update.

Bron: opennet.ru

Voeg een reactie