id: CVE-2022-1162

info:
  name: GitLab CE/EE - Hard-Coded Credentials
  author: GitLab Red Team
  severity: critical
  description: GitLab CE/EE contains a hard-coded credentials vulnerability. A hardcoded password was set for accounts registered using an OmniAuth provider (e.g. OAuth, LDAP, SAML), allowing attackers to potentially take over accounts. This template attempts to passively identify vulnerable versions of GitLab without the need for an exploit by matching unique hashes for the application-<hash>.css file in the header for unauthenticated requests. Positive matches do not guarantee exploitability. Affected versions are 14.7 prior to 14.7.7, 14.8 prior to 14.8.5, and 14.9 prior to 14.9.2.
  impact: |
    Successful exploitation of this vulnerability can lead to unauthorized access to sensitive information or unauthorized actions within the GitLab application.
  remediation: Tooling to find relevant hashes based on the semantic version ranges specified in the CVE is linked in the reference section below.
  reference:
    - https://gitlab.com/gitlab-com/gl-security/threatmanagement/redteam/redteam-public/cve-hash-harvester
    - https://gitlab.com/gitlab-org/cves/-/blob/master/2022/CVE-2022-1162.json
    - https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-1162
    - http://packetstormsecurity.com/files/166828/Gitlab-14.9-Authentication-Bypass.html
    - https://nvd.nist.gov/vuln/detail/cve-2022-1162
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
    cvss-score: 9.8
    cve-id: CVE-2022-1162
    cwe-id: CWE-798
    epss-score: 0.89779
    epss-percentile: 0.99508
    cpe: cpe:2.3:a:gitlab:gitlab:*:*:*:*:community:*:*:*
  metadata:
    max-request: 1
    vendor: gitlab
    product: gitlab
    shodan-query:
      - http.title:"GitLab"
      - cpe:"cpe:2.3:a:gitlab:gitlab"
      - http.title:"gitlab"
    fofa-query: title="gitlab"
    google-query: intitle:"gitlab"
  tags: cve,cve2022,gitlab,packetstorm

http:
  - method: GET
    path:
      - "{{BaseURL}}/users/sign_in"

    redirects: true
    max-redirects: 3
    matchers:
      - type: word
        words:
          - "003236d7e2c5f1f035dc8b67026d7583ee198b568932acd8faeac18cec673dfa"
          - "1d840f0c4634c8813d3056f26cbab7a685d544050360a611a9df0b42371f4d98"
          - "6eb5eaa5726150b8135a4fd09118cfd6b29f128586b7fa5019a04f1c740e9193"
          - "6fa9fec63ba24ec06fcae0ec30d1369619c2c3323fe9ddc4849af86457d59eef"
          - "cfa6748598b5e507db0e53906a7639e2c197a53cb57da58b0a20ed087cc0b9d5"
          - "f8ba2470fbf1e30f2ce64d34705b8e6615ac964ea84163c8a6adaaf8a91f9eac"
        condition: or

    extractors:
      - type: regex
        group: 1
        regex:
          - '(?:application-)(\S{64})(?:\.css)'
# digest: 4b0a00483046022100a9f6766643e88a44a223bbb30103bc88aadf1d69277a0b64451e6d449e910ec60221008853b22efd2118edc096481c1c0482136db435a4864c705d0b61572341896d80:922c64590222798bb761d5b6d8e72950