Možnost ustvarjanja navideznih podpisov ECDSA v Java SE. Ranljivosti v MySQL, VirtualBox in Solaris

Oracle je objavil načrtovano izdajo posodobitev svojih izdelkov (Critical Patch Update), namenjenih odpravljanju kritičnih težav in ranljivosti. Aprilska posodobitev je odpravila skupno 520 ranljivosti.

Nekaj ​​težav:

  • 6 Varnostne težave v Javi SE. Vse ranljivosti je mogoče izkoristiti na daljavo brez preverjanja pristnosti in vplivajo na okolja, ki omogočajo izvajanje kode, ki ni vredna zaupanja. Dvema težavama je bila dodeljena stopnja resnosti 7.5. Ranljivosti so bile odpravljene v različicah Java SE 18.0.1, 11.0.15 in 8u331.

    Ena od težav (CVE-2022-21449) omogoča ustvarjanje fiktivnega digitalnega podpisa ECDSA z uporabo parametrov ničelne krivulje pri njegovem ustvarjanju (če so parametri enaki nič, gre krivulja v neskončnost, zato so ničelne vrednosti izrecno prepovedane v specifikacijo). Knjižnice Java niso preverjale ničelnih vrednosti parametrov ECDSA, zato jih je Java pri obdelavi podpisov z ničelnimi parametri štela za veljavne v vseh primerih).

    Ranljivost je med drugim mogoče uporabiti za ustvarjanje fiktivnih potrdil TLS, ki bodo v Javi sprejeta kot pravilna, pa tudi za izogibanje avtentikaciji prek WebAuthn in ustvarjanje fiktivnih podpisov JWT in žetonov OIDC. Z drugimi besedami, ranljivost vam omogoča ustvarjanje univerzalnih potrdil in podpisov, ki bodo sprejeti in zaznani kot pravilni v programih za obravnavo Java, ki za preverjanje uporabljajo standardne razrede java.security.*. Težava se pojavlja v vejah Jave 15, 16, 17 in 18. Na voljo je primer generiranja lažnih potrdil. jshell> import java.security.* jshell> var keys = KeyPairGenerator.getInstance("EC").generateKeyPair() keys ==> java.security.KeyPair@626b2d4a jshell> var blankSignature = new byte[64] blankSignature ==> bajt[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 ==> Objekt podpisa: SHA256WithECDSAInP1363Format jshell> sig.initVerify(keys.getPublic()) jshell> sig.update("Hello, World".getBytes()) jshell> sig.verify(blankSignature) $8 ==> true

  • 26 ranljivosti v strežniku MySQL, od katerih je dve mogoče izkoristiti na daljavo. Najresnejšim težavam, povezanim z uporabo OpenSSL in protobuf, je dodeljena stopnja resnosti 7.5. Manj resne ranljivosti vplivajo na optimizator, InnoDB, replikacijo, vtičnik PAM, DDL, DML, FTS in beleženje. Težave so bile odpravljene v izdajah MySQL Community Server 8.0.29 in 5.7.38.
  • 5 ranljivosti v VirtualBoxu. Težavam je dodeljena stopnja resnosti od 7.5 do 3.8 (najnevarnejša ranljivost se pojavi samo na platformi Windows). Ranljivosti so odpravljene v posodobitvi VirtualBox 6.1.34.
  • 6 ranljivosti v Solarisu. Težave vplivajo na jedro in pripomočke. Najresnejši težavi v javnih službah je dodeljena stopnja nevarnosti 8.2. Ranljivosti so odpravljene v posodobitvi Solaris 11.4 SRU44.

Vir: opennet.ru

Dodaj komentar