p PatchFirst

CVE-2026-67294

CVE-2026-67294 · FreeRDP before 3.29.0 TLS Certificate EKU Bypass

This page contains facts from public vulnerability sources. Check the original advisory before updating.

FreeRDP before 3.29.0 improperly validates the Extended Key Usage (EKU) purpose of the peer certificate during client-side server TLS authentication. In x509_utils_verify(), when server-purpose (X509_PURPOSE_SSL_SERVER) verification fails, the code falls back to client-purpose and any-purpose verification, so a trusted, hostname-matching certificate valid only for clientAuth can be accepted as the RDP server certificate. In environments relying on EKU separation between client and server certificates, this allows a clientAuth-only certificate issued by a trusted CA to bypass server certificate purpose validation.

CVSS 9.3 · Critical · EPSS 0.4% · Fix available

Published
Updated

Stack: system

Affected products and versions

  • freerdp

    Versions
    • ≥ 0, < 3.29.0: Affected (semver)
    • 3.29.0: Not affected (semver)

    Update to 3.29.0

  • freerdp2 Debian:12

    Versions
    • 2.10.0+dfsg1-1
    • 2.10.0+dfsg1-1.1
    • 2.11.2+dfsg1-1
    • 2.11.2+dfsg1-1.1~exp1
    • 2.11.2+dfsg1-1.1~exp2
    • 2.11.5+dfsg1-1
    • 2.11.7+dfsg1-1
    • 2.11.7+dfsg1-2
    • 2.11.7+dfsg1-3
    • 2.11.7+dfsg1-4
    • 2.11.7+dfsg1-5
    • 2.11.7+dfsg1-6
    • 2.11.7+dfsg1-6~deb12u1
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • freerdp3 Debian:13

    Versions
    • 3.15.0+dfsg-2.1
    • 3.15.0+dfsg-2.1+deb13u1
    • 3.15.0+dfsg-2.1+deb13u2
    • 3.15.0+dfsg-2.1+deb13u3
    • 3.16.0+dfsg-1
    • 3.16.0+dfsg-2
    • 3.17.0+dfsg-1
    • 3.17.1+dfsg-1
    • 3.17.1+dfsg-2
    • 3.17.2+dfsg-1
    • 3.17.2+dfsg-2
    • 3.17.2+dfsg-3
    • 3.18.0+dfsg-1
    • 3.19.0+dfsg-1
    • 3.19.1+dfsg-1
    • 3.20.0+dfsg-1
    • 3.20.2+dfsg-1
    • 3.21.0+dfsg-1
    • 3.22.0+dfsg-1
    • 3.22.0+dfsg-1~bpo13+0
    • 3.22.0+dfsg-1~bpo13+1
    • 3.22.0+dfsg-3
    • 3.23.0+dfsg-1
    • 3.23.0+dfsg-1~bpo13+1
    • 3.24.0+dfsg-1
    • 3.24.0+dfsg-2
    • 3.24.1+dfsg-1
    • 3.24.2+dfsg-1
    • 3.24.2+dfsg-1~bpo13+1
    • 3.25.0+dfsg-1
    • 3.25.0+dfsg-2
    • 3.25.0+dfsg-3
    • 3.25.0+dfsg-4
    • 3.25.0+dfsg-5
    • 3.26.0+dfsg-1
    • 3.26.0+dfsg-1~bpo13+1
    • 3.27.0+dfsg-1
    • 3.27.1+dfsg-1
    • 3.28.0+dfsg-1
    • 3.28.0+dfsg-2
    • 3.29.0+dfsg-1
    • 3.30.0+dfsg-1
    • 3.30.0+dfsg-1~bpo13+1
    • 3.31.0+dfsg-1
    • 3.31.1+dfsg-1
    • 3.31.1+dfsg-1~bpo13+1
    • 3.32.0+dfsg-1
    • 3.32.1+dfsg-1
    • 3.32.1+dfsg-1~bpo13+1
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • freerdp3 Debian:14

    Versions
    • 3.15.0+dfsg-2.1
    • 3.16.0+dfsg-1
    • 3.16.0+dfsg-2
    • 3.17.0+dfsg-1
    • 3.17.1+dfsg-1
    • 3.17.1+dfsg-2
    • 3.17.2+dfsg-1
    • 3.17.2+dfsg-2
    • 3.17.2+dfsg-3
    • 3.18.0+dfsg-1
    • 3.19.0+dfsg-1
    • 3.19.1+dfsg-1
    • 3.20.0+dfsg-1
    • 3.20.2+dfsg-1
    • 3.21.0+dfsg-1
    • 3.22.0+dfsg-1
    • 3.22.0+dfsg-1~bpo13+0
    • 3.22.0+dfsg-1~bpo13+1
    • 3.22.0+dfsg-3
    • 3.23.0+dfsg-1
    • 3.23.0+dfsg-1~bpo13+1
    • 3.24.0+dfsg-1
    • 3.24.0+dfsg-2
    • 3.24.1+dfsg-1
    • 3.24.2+dfsg-1
    • 3.24.2+dfsg-1~bpo13+1
    • 3.25.0+dfsg-1
    • 3.25.0+dfsg-2
    • 3.25.0+dfsg-3
    • 3.25.0+dfsg-4
    • 3.25.0+dfsg-5
    • 3.26.0+dfsg-1
    • 3.26.0+dfsg-1~bpo13+1
    • 3.27.0+dfsg-1
    • 3.27.1+dfsg-1
    • 3.28.0+dfsg-1
    • 3.28.0+dfsg-2
    Affected ranges
    • ECOSYSTEM: < 3.29.0+dfsg-1

    Update to 3.29.0+dfsg-1

  • freerdp Ubuntu:16.04:LTS

    Versions
    • 1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1
    • 1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.2
    • 1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.3
    • 1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • freerdp2 Ubuntu:Pro:18.04:LTS

    Versions
    • 2.0.0~git20170725.1.1648deb+dfsg1-1
    • 2.0.0~git20170725.1.1648deb+dfsg1-5
    • 2.0.0~git20170725.1.1648deb+dfsg1-5ubuntu1
    • 2.0.0~git20170725.1.1648deb+dfsg1-5ubuntu2
    • 2.0.0~git20170725.1.1648deb+dfsg1-6
    • 2.0.0~git20170725.1.1648deb+dfsg1-6build1
    • 2.0.0~git20170725.1.1648deb+dfsg1-7
    • 2.0.0~git20170725.1.1648deb+dfsg1-7ubuntu0.1
    • 2.1.1+dfsg1-0ubuntu0.18.04.1
    • 2.2.0+dfsg1-0ubuntu0.18.04.1
    • 2.2.0+dfsg1-0ubuntu0.18.04.2
    • 2.2.0+dfsg1-0ubuntu0.18.04.3
    • 2.2.0+dfsg1-0ubuntu0.18.04.4
    • 2.2.0+dfsg1-0ubuntu0.18.04.4+esm1
    • 2.2.0+dfsg1-0ubuntu0.18.04.4+esm2
    • 2.2.0+dfsg1-0ubuntu0.18.04.4+esm3
    • 2.2.0+dfsg1-0ubuntu0.18.04.4+esm4
    • 2.2.0+dfsg1-0ubuntu0.18.04.4+esm5
    • 2.2.0+dfsg1-0ubuntu0.18.04.4+esm6
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • freerdp Ubuntu:18.04:LTS

    Versions
    • 1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1
    • 1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.1
    • 1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • freerdp2 Ubuntu:Pro:20.04:LTS

    Versions
    • 2.0.0~git20190204.1.2693389a+dfsg1-1
    • 2.0.0~git20190204.1.2693389a+dfsg1-2
    • 2.0.0~git20190204.1.2693389a+dfsg1-2build1
    • 2.0.0~git20190204.1.2693389a+dfsg1-2build2
    • 2.1.1+dfsg1-0ubuntu0.20.04.1
    • 2.2.0+dfsg1-0ubuntu0.20.04.1
    • 2.2.0+dfsg1-0ubuntu0.20.04.2
    • 2.2.0+dfsg1-0ubuntu0.20.04.3
    • 2.2.0+dfsg1-0ubuntu0.20.04.4
    • 2.2.0+dfsg1-0ubuntu0.20.04.5
    • 2.2.0+dfsg1-0ubuntu0.20.04.6
    • 2.6.1+dfsg1-0ubuntu0.20.04.1
    • 2.6.1+dfsg1-0ubuntu0.20.04.2
    • 2.6.1+dfsg1-0ubuntu0.20.04.2+esm1
    • 2.6.1+dfsg1-0ubuntu0.20.04.2+esm2
    • 2.6.1+dfsg1-0ubuntu0.20.04.2+esm3
    • 2.6.1+dfsg1-0ubuntu0.20.04.2+esm4
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • freerdp2 Ubuntu:22.04:LTS

    Versions
    • 2.3.0+dfsg1-2build1
    • 2.3.0+dfsg1-2ubuntu1
    • 2.3.0+dfsg1-2ubuntu2
    • 2.4.1+dfsg1-1
    • 2.4.1+dfsg1-1ubuntu1
    • 2.4.1+dfsg1-1ubuntu2
    • 2.5.0+dfsg1-1
    • 2.6.0+dfsg1-1
    • 2.6.1+dfsg1-1
    • 2.6.1+dfsg1-3
    • 2.6.1+dfsg1-3ubuntu1
    • 2.6.1+dfsg1-3ubuntu2
    • 2.6.1+dfsg1-3ubuntu2.1
    • 2.6.1+dfsg1-3ubuntu2.2
    • 2.6.1+dfsg1-3ubuntu2.3
    • 2.6.1+dfsg1-3ubuntu2.4
    • 2.6.1+dfsg1-3ubuntu2.5
    • 2.6.1+dfsg1-3ubuntu2.6
    • 2.6.1+dfsg1-3ubuntu2.7
    • 2.6.1+dfsg1-3ubuntu2.8
    • 2.6.1+dfsg1-3ubuntu2.9
    • 2.6.1+dfsg1-3ubuntu2.10
    • 2.6.1+dfsg1-3ubuntu2.11
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • freerdp3 Ubuntu:24.04:LTS

    Versions
    • 3.4.0+dfsg1-0ubuntu2
    • 3.4.0+dfsg1-0ubuntu3
    • 3.4.0+dfsg1-0ubuntu4
    • 3.5.0+dfsg1-0ubuntu1
    • 3.5.1+dfsg1-0ubuntu1
    • 3.5.1+dfsg1-0ubuntu1.1
    • 3.5.1+dfsg1-0ubuntu1.2
    • 3.5.1+dfsg1-0ubuntu1.4
    • 3.5.1+dfsg1-0ubuntu1.5
    • 3.5.1+dfsg1-0ubuntu1.6
    Affected ranges
    • ECOSYSTEM: < 3.30.0+dfsg-0ubuntu0.24.04.1

    Update to 3.30.0+dfsg-0ubuntu0.24.04.1

  • freerdp2 Ubuntu:Pro:24.04:LTS

    Versions
    • 2.10.0+dfsg1-1.1ubuntu1
    • 2.11.2+dfsg1-1
    • 2.11.2+dfsg1-1build1
    • 2.11.2+dfsg1-1build3
    • 2.11.5+dfsg1-1build1
    • 2.11.5+dfsg1-1build2
    • 2.11.5+dfsg1-1ubuntu0.1~esm1
    • 2.11.5+dfsg1-1ubuntu0.1~esm2
    • 2.11.5+dfsg1-1ubuntu0.1~esm3
    • 2.11.5+dfsg1-1ubuntu0.1~esm4
    • 2.11.5+dfsg1-1ubuntu0.1~esm5
    • 2.11.5+dfsg1-1ubuntu0.1~esm6
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • freerdp3 Ubuntu:26.04:LTS

    Versions
    • 3.16.0+dfsg-2
    • 3.18.0+dfsg-1ubuntu1
    • 3.19.0+dfsg-1
    • 3.19.1+dfsg-1
    • 3.20.0+dfsg-1
    • 3.20.2+dfsg-1
    • 3.21.0+dfsg-1
    • 3.22.0+dfsg-1
    • 3.24.1+dfsg-1ubuntu1
    • 3.24.2+dfsg-1ubuntu1
    • 3.24.2+dfsg-1ubuntu1.1
    Affected ranges
    • ECOSYSTEM: < 3.30.0+dfsg-0ubuntu0.26.04.1

    Update to 3.30.0+dfsg-0ubuntu0.26.04.1

Original sources

Check your server →