Java SE-ում կեղծ ECDSA ստորագրություններ ստեղծելու ունակություն: Խոցելիություններ 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 = նոր բայթ[64] =blank բայթ[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 թարմացումով:

Source: opennet.ru

Добавить комментарий