Möjlighet att generera dummy ECDSA-signaturer i Java SE. Sårbarheter i MySQL, VirtualBox och Solaris

Oracle har publicerat en planerad release av uppdateringar till sina produkter (Critical Patch Update), som syftar till att eliminera kritiska problem och sårbarheter. Uppdateringen i april eliminerade totalt 520 sårbarheter.

Vissa problem:

  • 6 Säkerhetsproblem i Java SE. Alla sårbarheter kan utnyttjas på distans utan autentisering och påverkar miljöer som tillåter exekvering av opålitlig kod. Två frågor har tilldelats en allvarlighetsgrad på 7.5. Sårbarheterna har lösts i versionerna av Java SE 18.0.1, 11.0.15 och 8u331.

    Ett av problemen (CVE-2022-21449) låter dig generera en fiktiv ECDSA digital signatur med nollkurvparametrar när du genererar den (om parametrarna är noll går kurvan till oändlighet, så nollvärden är uttryckligen förbjudna i specifikationen). Java-biblioteken kollade inte efter nollvärden för ECDSA-parametrar, så vid bearbetning av signaturer med nollparametrar ansåg Java dem giltiga i alla fall).

    Sårbarheten kan bland annat användas för att generera fiktiva TLS-certifikat som kommer att accepteras i Java som korrekta, samt för att kringgå autentisering via WebAuthn och generera fiktiva JWT-signaturer och OIDC-tokens. Med andra ord låter sårbarheten dig generera universella certifikat och signaturer som kommer att accepteras och uppfattas som korrekta i Java-hanterare som använder standard java.security.*-klasser för verifiering. Problemet dyker upp i Java-grenarna 15, 16, 17 och 18. Ett exempel på att generera falska certifikat finns tillgängligt. jshell> import java.security.* jshell> var keys = KeyPairGenerator.getInstance("EC").generateKeyPair()-nycklar ==> 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 ==> Signaturobjekt: SHA256WithECDSAInP1363Format jshell> sig.initVerify(keys.getPublic()) jshell> sig.update("Hello, World".getBytes()) jshell> sig.verify(blankSignature) $8 ==> true

  • 26 sårbarheter i MySQL-servern, varav två kan utnyttjas på distans. De allvarligaste problemen i samband med användningen av OpenSSL och protobuf tilldelas en svårighetsgrad på 7.5. Mindre allvarliga sårbarheter påverkar optimeraren, InnoDB, replikering, PAM-plugin, DDL, DML, FTS och loggning. Problemen löstes i MySQL Community Server 8.0.29 och 5.7.38.
  • 5 sårbarheter i VirtualBox. Problemen tilldelas en allvarlighetsgrad från 7.5 till 3.8 (den farligaste sårbarheten visas endast på Windows-plattformen). Sårbarheterna åtgärdas i VirtualBox 6.1.34-uppdateringen.
  • 6 sårbarheter i Solaris. Problemen påverkar kärnan och verktygen. Det allvarligaste problemet i verktygen tilldelas en risknivå på 8.2. Sårbarheterna åtgärdas i Solaris 11.4 SRU44-uppdateringen.

Källa: opennet.ru

Lägg en kommentar