CVE-2026-34100
Official description Straight from the sourceThe vendor's or NVD's own wording, published unedited. Authoritative, but often terse — it says what broke, rarely what to do.
NVD · uneditedGuardian language-system passes the id GET parameter directly into an unsanitized SQL query in media.php (line 17): SELECT id, filename, extension, type, duration, owner, private FROM files where id = '\".$_GET['id'].\"'. An authenticated attacker can perform error-based SQL injection to extract database contents.
Technical summary Written by usOur analysis, written from the advisory, the CVSS vector and the affected-version data. It adds context the advisory leaves out, and never invents facts that are not in the source.
dbcve analysis · high confidenceThe Guardian language-system contains a SQL injection vulnerability in media.php where the 'id' GET parameter is directly concatenated into an unsanitized SQL query. An authenticated attacker can exploit this via error-based SQL injection to extract sensitive database contents.
Verify against the referenced sources before acting — the references below are authoritative for this CVE, this summary is not.
CVSS breakdown How the score is builtThe industry scoring standard. It rates how the flaw is reached, what it takes to exploit, and what an attacker gains — the score is derived from those, not the other way round.
From the vector- Attack vector
- Network
- Complexity
- Low
- Privileges
- None
- User interaction
- None
- Scope
- Unchanged
- Confidentiality
- High
- Integrity
- High
- Availability
- High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Am I affected? How to checkSteps we derive from the advisory and the affected-version data, so you can decide whether this CVE reaches your setup. They are a guide, not a scan — your own configuration is the authority.
dbcve checksWork through these to decide whether this CVE applies to you.
-
Locate media.php in the Guardian language-systemSearch for the file media.php within your Guardian language-system installation directory. Common paths may include /media.php or /includes/media.php. Use 'find / -name media.php 2>/dev/null' on Linux or check your web root directory.Affected if The file media.php exists in the Guardian language-system installation and handles the 'id' GET parameter.
-
Inspect the SQL query in media.php line 17Open media.php and examine line 17 (or the surrounding lines) where the 'id' GET parameter is used in a SQL query. Look for direct string concatenation like '$id' or $_GET['id'] embedded within the SQL statement without using prepared statements or parameter binding.Affected if The code shows direct concatenation of the 'id' parameter into the SQL query without sanitization (e.g., no quotes around the parameter, no mysqli_real_escape_string, no prepared statements).
-
Verify if authentication is required for the vulnerable endpointCheck whether the media.php endpoint is accessible only after authentication. Review the authentication logic at the top of media.php or check if the application requires a valid session/login token to access this page.Affected if The vulnerable endpoint is accessible to authenticated users (or is improperly accessible without authentication), allowing them to submit the 'id' parameter.
-
Confirm the Guardian language-system versionCheck your installed version of the Guardian language-system by reviewing version files, composer.json, or a /version endpoint if available. Compare your version against any documented affected ranges.Affected if Your installed version falls within the range of affected versions that contain the vulnerable media.php file with the unsanitized SQL query.
-
Test for SQL injection via the id parameterIf you have access to a testing environment, send a benign SQL injection test payload via the 'id' parameter (e.g., id=1' OR '1'='1) to see if the application returns unexpected database errors or altered results. In production, review web server logs for unusual SQL syntax in requests to media.php.Affected if The application exhibits SQL injection symptoms such as database errors, unexpected data exposure, or altered query logic when the 'id' parameter contains SQL metacharacters.
You are affected if the Guardian language-system is installed, media.php exists with the unsanitized 'id' parameter in SQL queries at line 17, and the endpoint is accessible to authenticated users (or improperly exposed without auth), allowing SQL injection attacks.
Generated from the published advisory. Verify against your own configuration.
Remediation Closing itWhat it takes to close this. Where a vendor fix exists we point at it; where none exists we say so plainly, and can build one. Effort estimates are scoped from the advisory, not from your codebase.
From vendor dataReplace the dynamic SQL query with parameterized queries (prepared statements) using PDO or mysqli, and implement proper input validation. Conduct a security audit to identify similar SQL injection vulnerabilities across the application.
- Consultation4.0 h
- Implementation3.0 h
- Testing4.0 h
- Review / QA3.0 h
An estimate, not a bill — we confirm scope with you before any work starts. Need it this week? Rush from $3,968.
Scan for this in your stack
Free · runs locallyCheck whether your project pulls in CVE-2026-34100 — or any other known-vulnerable package — straight from your lock files. Free and open source; it runs locally and uploads nothing.
References Go to the primary sourcePrimary sources — vendor advisories, patches and trackers. Where our summary and a reference disagree, the reference wins.
Primary sourcesPractitioner notes
ContributedPeer-ranked notes from engineers who’ve handled CVE-2026-34100 in production — separate from our analysis above.
The advisory tells you what broke. It rarely tells you what actually worked. If you’ve dealt with this one, that detail is what the next engineer is searching for.
- The version that genuinely resolved it — not the one the vendor claimed
- A config change or rule that shut the vector down
- A gotcha in the upgrade path that cost you an afternoon
No notes yet
Be the first to add a field note for this CVE — a mitigation you’ve verified, a version caveat, or a link to a working fix. Sign in above to contribute.
A place for practitioners to share what actually worked: a mitigation you’ve tested, a configuration change, a version- or environment-specific caveat, or a link to a verified patch. The most useful notes rise to the top as peers upvote them, so the signal stays high.
- Verified mitigations, workarounds, and config changes
- Version or environment caveats, and links to real fixes
- No weaponised exploit code, or anything meant to cause harm
- No spam, self-promotion, credentials, or personal data