Spēja ģenerēt fiktīvus ECDSA parakstus Java SE. MySQL, VirtualBox un Solaris ievainojamības

Oracle ir publicējis plānoto savu produktu atjauninājumu izlaidumu (Critical Patch Update), kura mērķis ir novērst kritiskās problēmas un ievainojamības. Aprīļa atjauninājums kopumā likvidēja 520 ievainojamības.

Dažas problēmas:

  • 6 Java SE drošības problēmas. Visas ievainojamības var izmantot attālināti bez autentifikācijas un ietekmēt vidi, kas ļauj izpildīt neuzticamu kodu. Divām problēmām ir piešķirts 7.5 nopietnības līmenis. Ievainojamības ir novērstas Java SE 18.0.1, 11.0.15 un 8u331 laidienos.

    Viena no problēmām (CVE-2022-21449) ļauj ģenerēt fiktīvu ECDSA ciparparakstu, izmantojot nulles līknes parametrus tā ģenerēšanas laikā (ja parametri ir nulle, tad līkne iet uz bezgalību, tāpēc nulles vērtības ir nepārprotami aizliegtas specifikācija). Java bibliotēkas nepārbaudīja ECDSA parametru nulles vērtības, tāpēc, apstrādājot parakstus ar nulles parametriem, Java uzskatīja tos par derīgiem visos gadījumos).

    Cita starpā ievainojamību var izmantot, lai ģenerētu fiktīvus TLS sertifikātus, kas Java tiks pieņemti kā pareizi, kā arī apietu autentifikāciju, izmantojot WebAuthn, un ģenerētu fiktīvus JWT parakstus un OIDC marķierus. Citiem vārdiem sakot, ievainojamība ļauj ģenerēt universālus sertifikātus un parakstus, kas tiks pieņemti un uztverti kā pareizi Java apdarinātājos, kas verifikācijai izmanto standarta java.security.* klases. Problēma parādās Java filiālēs 15, 16, 17 un 18. Ir pieejams viltotu sertifikātu ģenerēšanas piemērs. jshell> importēt java.security.* jshell> var keys = KeyPairGenerator.getInstance("EC").generateKeyPair() atslēgas ==> java.security.KeyPair@626b2d4a jshell> var blankSignature = jauns baits[64] == blank>Paraksts baits[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 ==> Paraksta objekts: SHA256WithECDSAInP1363Format jshell> sig.initVerify(keys.getPublic()) jshell> sig.update("Sveika, pasaule".getBytes()) jshell> sig.verify(blankSignature) $8 ==> true

  • 26 MySQL servera ievainojamības, no kurām divas var izmantot attālināti. Nopietnākajām problēmām, kas saistītas ar OpenSSL un protobuf lietošanu, tiek piešķirts 7.5 nopietnības līmenis. Mazāk nopietnas ievainojamības ietekmē optimizētāju, InnoDB, replikāciju, PAM spraudni, DDL, DML, FTS un reģistrēšanu. Problēmas tika atrisinātas MySQL Community Server 8.0.29 un 5.7.38 laidienos.
  • 5 VirtualBox ievainojamības. Problēmām tiek piešķirts smaguma līmenis no 7.5 līdz 3.8 (visbīstamākā ievainojamība parādās tikai Windows platformā). Ievainojamības ir novērstas VirtualBox 6.1.34 atjauninājumā.
  • 6 Solaris ievainojamības. Problēmas skar kodolu un utilītas. Visnopietnākajai komunālo pakalpojumu problēmai ir piešķirts bīstamības līmenis 8.2. Ievainojamības ir novērstas Solaris 11.4 SRU44 atjauninājumā.

Avots: opennet.ru

Pievieno komentāru