Keupayaan untuk menjana tandatangan ECDSA tiruan dalam Java SE. Kerentanan dalam MySQL, VirtualBox dan Solaris

Oracle telah menerbitkan keluaran kemas kini berjadual kepada produknya (Kemas Kini Patch Kritikal), bertujuan untuk menghapuskan masalah kritikal dan kelemahan. Kemas kini April membetulkan sejumlah 520 kelemahan.

Beberapa masalah:

  • 6 Isu Keselamatan dalam Java SE. Semua kelemahan boleh dieksploitasi dari jauh tanpa pengesahan dan menjejaskan persekitaran yang membenarkan pelaksanaan kod yang tidak boleh dipercayai. Dua isu telah diberikan tahap keterukan 7.5. Kerentanan telah diselesaikan dalam keluaran Java SE 18.0.1, 11.0.15 dan 8u331.

    Salah satu masalah (CVE-2022-21449) membolehkan anda menjana tandatangan digital ECDSA rekaan menggunakan parameter lengkung sifar semasa menjananya (jika parameternya sifar, maka lengkung pergi ke infiniti, jadi nilai sifar dilarang secara eksplisit dalam spesifikasi). Pustaka Java tidak menyemak nilai nol parameter ECDSA, jadi apabila memproses tandatangan dengan parameter null, Java menganggapnya sah dalam semua kes).

    Antara lain, kerentanan boleh digunakan untuk menjana sijil TLS rekaan yang akan diterima di Java sebagai betul, serta memintas pengesahan melalui WebAuthn dan menjana tandatangan JWT rekaan dan token OIDC. Dalam erti kata lain, kerentanan membolehkan anda menjana sijil dan tandatangan universal yang akan diterima dan dianggap betul dalam pengendali Java yang menggunakan kelas java.security.* standard untuk pengesahan. Masalahnya muncul di cawangan Java 15, 16, 17 dan 18. Contoh penjanaan sijil palsu tersedia. jshell> import java.security.* jshell> var keys = KeyPairGenerator.getInstance("EC").generateKeyPair() keys ==> java.security.KeyPair@626b2d4a jshell> var blankSignature = new byte[64] blankSignature ==> bait[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 ==> Tandatangan objek: SHA256WithECDSAInP1363Format jshell> sig.initVerify(keys.getPublic()) jshell> sig.update("Hello, World".getBytes()) jshell> sig.verify(blankSignature) $8 ==> benar

  • 26 kelemahan dalam pelayan MySQL, dua daripadanya boleh dieksploitasi dari jauh. Masalah paling serius yang berkaitan dengan penggunaan OpenSSL dan protobuf diberikan tahap keterukan 7.5. Kerentanan yang kurang teruk menjejaskan pengoptimum, InnoDB, replikasi, pemalam PAM, DDL, DML, FTS dan pengelogan. Isu telah diselesaikan dalam keluaran MySQL Community Server 8.0.29 dan 5.7.38.
  • 5 kelemahan dalam VirtualBox. Isu diberikan tahap keterukan dari 7.5 hingga 3.8 (kelemahan paling berbahaya hanya muncul pada platform Windows). Kerentanan diperbaiki dalam kemas kini VirtualBox 6.1.34.
  • 6 kelemahan dalam Solaris. Masalah menjejaskan kernel dan utiliti. Masalah paling serius dalam utiliti diberikan tahap bahaya 8.2. Kerentanan diselesaikan dalam kemas kini Solaris 11.4 SRU44.

Sumber: opennet.ru

Tambah komen