← Back to Feed CACHED · 2026-05-17 09:42:19 · cache_key CVE-2025-29912
CVE-2026-11334 · CWE-74 · Disclosed 2026-06-05

A vulnerability was detected in tittuvarghese CollegeManagementSystem…

ASSESSED — NOISGATE V0.5
Vendor
Reassessed
Verdict:
01 · The Real Story

This is a side door left unlocked in a building almost nobody owns

CVE-2026-11334 is a classic SQL injection in tittuvarghese/CollegeManagementSystem inside dashboard_page/forms/fetch.php. The vulnerable path takes attacker-controlled department_code from POST data and drops it straight into mysql_query(...) without parameterization. The public report and source both indicate the endpoint can be reached without a session check, so the practical issue is *unauthenticated remote SQLi* against deployments exposing this PHP app. The affected code is in the GitHub project state referenced by the CVE (3e476335cfbfb9a049e09f474c7ec885f69a9df3/a38852979f7e27ae67b610dce5979500ef8ebe01); there is no tagged fixed release or patched version published.

The vendor-style 7.3/HIGH score is defensible in a lab because unauthenticated SQLi is never benign. In enterprise patch triage, though, that label overstates fleet-wide urgency: this is a tiny, non-versioned, self-hosted academic PHP project with no KEV entry, no credible evidence of mass exploitation, and extremely low EPSS. If you actually run this app on an internet-facing host, the risk to *that host* is meaningful; if you manage a broad enterprise estate, this is not the kind of issue that should displace patching broadly exploited edge software.

"Real bug, real PoC, but niche app plus low exposure evidence keeps this out of the urgent queue"
02 · The Attack Path

4 steps from start to impact.

STEP 01

Reach the exposed PHP endpoint

The attacker sends an HTTP POST to dashboard_page/forms/fetch.php with action=fetch_department_data. The issue report explicitly describes successful unauthenticated access, and the source snippet shows the file handling POST data directly after include_once('../../config.php'); with no visible session gate in the vulnerable branch.
Conditions required:
  • The application is deployed and reachable over HTTP/HTTPS
  • The fetch.php endpoint is exposed to the attacker
  • No upstream access restriction blocks the request
Where this breaks in practice:
  • This is a niche GitHub project, not a mainstream enterprise platform
  • Many real deployments will be internal-only or used as a lab/student project
  • Reverse proxies, VPN-only access, or IP allowlists can remove internet reachability entirely
Detection/coverage: DAST and content inspection can catch this if the endpoint is in scope, but generic authenticated web scanners may miss it if the asset is undocumented or tucked behind nonstandard paths.
STEP 02

Inject through department_code

The vulnerable path assigns $_POST['department_code'] into SQL strings such as SELECT * FROM courses WHERE department_code='$department_code'. The public issue shows a simple payload like CSE' OR 1=1-- changing the response shape, which is enough to confirm injection and begin boolean/time-based probing with sqlmap or manual payloads.
Conditions required:
  • The backend executes the supplied SQL against MySQL
  • Input reaches the vulnerable query unchanged
  • The attacker can observe the HTTP response or timing behavior
Where this breaks in practice:
  • Response output is narrow JSON, so full data theft may require blind techniques
  • WAF signatures may catch commodity payloads
  • Database privilege level may limit what can be read or modified
Detection/coverage: WAF, reverse-proxy logs, and application logs may show quote/comment patterns or abnormal POST bodies. Commercial DAST should usually flag this once the endpoint is mapped.
STEP 03

Enumerate and extract data

Once injection is confirmed, the attacker can pivot to UNION, boolean-blind, or time-based extraction depending on output constraints. Likely targets are student records, staff data, login-related tables, and schema metadata; even if direct row dumping is noisy, blind extraction remains practical against a stable endpoint.
Conditions required:
  • The database account has read access to interesting tables
  • The application returns distinct responses or timing differences
  • The target is stable enough for repeated requests
Where this breaks in practice:
  • Blind extraction is slower and louder than reflected UNION output
  • Rate limits or CDN protections can materially slow tooling
  • DB permissions may prevent file writes or admin-level database abuse
Detection/coverage: High request volume with repetitive parameter mutation is visible in web logs and IDS/WAF telemetry. Database audit logging, if enabled, may show anomalous query patterns.
STEP 04

Escalate impact through chaining

SQLi by itself is usually a data compromise event first, but it can become more damaging if chained with weak DB privileges or adjacent bugs. In this same repo, other publicly reported issues include unrestricted file upload and authorization flaws, so an attacker who lands on an exposed deployment may have multiple paths to turn data access into broader application compromise.
Conditions required:
  • The same deployment also exposes other vulnerable application functions
  • The database account or web stack allows useful post-exploitation primitives
  • The attacker is willing to chain bugs rather than stop at data theft
Where this breaks in practice:
  • Chaining requires specific co-resident weaknesses, not just this CVE alone
  • No evidence currently shows in-the-wild operational chaining
  • Blast radius is limited to the hosts actually running this project
Detection/coverage: Multi-stage exploitation may show as SQLi probes followed by upload attempts, admin page access, or unusual file creation under the webroot.
03 · Intelligence Metadata

The supporting signals.

In-the-wild statusNo authoritative evidence of active exploitation found. Not listed in CISA KEV.
KEV statusNo KEV entry as of the disclosed date; there is no CISA remediation due date override.
PoC availabilityPublic PoC exists in GitHub Issue #3, reported by duckpigdog, including a working unauthenticated request and SQLi payload.
EPSSUser-provided EPSS is 0.00033, which is extremely low and consistent with a low-likelihood, niche-project exploit path rather than a widely targeted campaign.
CVSS interpretationAV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L means remote, no-auth, no-user-click exploitation. That baseline is serious *if exposed*, but it says nothing about how many enterprises actually run this software.
Affected scopeAffected code appears in tittuvarghese/CollegeManagementSystem at dashboard_page/forms/fetch.php; the repository has no releases and uses a rolling/unversioned project state rather than trackable packaged builds.
Fixed versionNone published. I found no vendor patch tag, release, advisory, or backported distro package.
Root causeThe vulnerable branch reads $_POST['department_code'] and interpolates it into mysql_query(...) directly. The authoritative repo view also shows use of legacy mysql_* APIs, a strong signal that this is old, weakly maintained PHP code.
Exposure dataI found no reliable GreyNoise/Shodan/Censys/FOFA population data tied specifically to this project. That absence is not proof of safety, but it strongly suggests this is not an internet-scale enterprise product.
DisclosurePublic issue opened 2026-05-18; CVE disclosed 2026-06-05. The project appears to have no maintainer response or published fix at time of review.
04 · The Call

noisgate verdict.

Final Verdict
DOWNGRADED to MEDIUM (6.4/10)

The decisive downward pressure is population and reachability, not exploit mechanics: this is a real unauthenticated SQLi, but in a tiny self-hosted GitHub project with no evidence of broad enterprise deployment or active abuse. For organizations that do run this app externally, the local risk is meaningful; across a 10,000-host estate, it does not outrank widely exploited edge software.

HIGH The endpoint is vulnerable to unsanitized SQL construction via `department_code`
MEDIUM The vulnerable path is unauthenticated in real deployments
MEDIUM Enterprise-wide prioritization should be lower than vendor HIGH

Why this verdict

  • Unauthenticated remote SQLi is real: the code path takes attacker input from $_POST['department_code'] into mysql_query(...), and the public issue includes a working reproduction.
  • Public exploit detail exists: there is a published GitHub issue with payloads and observed response changes, so defenders should assume commodity tooling can validate and exploit it quickly on exposed instances.
  • Downward adjustment for attacker population: this requires the target to be specifically running a niche academic PHP project; that sharply narrows the real exposed population compared with a mainstream enterprise platform.
  • Downward adjustment for post-discovery friction: practical impact is often blind or semi-blind data extraction, not instant one-request takeover; the JSON output shape limits easy smash-and-grab exploitation.
  • No active exploitation amplifier: no KEV listing, no campaign reporting, and a very low EPSS keep this out of the emergency bucket.

Why not higher?

It is not higher because the strongest amplifier in modern patching is *observed attacker interest at scale*, and that is absent here. The product footprint is tiny, there is no trustworthy internet-wide exposure evidence, and the immediate exploitation path is more likely data extraction than direct host takeover from this CVE alone.

Why not lower?

It is not lower because this is still unauthenticated remote SQL injection with public exploit instructions. If one of your teams actually deployed this app on an internet-facing host, the risk to that asset is absolutely operationally relevant and can expose sensitive records or seed a follow-on compromise.

05 · Compensating Control

What to do — in priority order.

  1. Restrict access to the app — Put the application behind VPN, SSO gate, IP allowlists, or at minimum campus/internal network boundaries. Because this is a MEDIUM verdict there is no mitigation SLA — go straight to the 365-day remediation window, but if the app is internet-facing you should still restrict reachability as soon as operationally possible.
  2. Block the vulnerable endpoint upstream — Use reverse-proxy, WAF, or web-server rules to deny or tightly filter requests to /dashboard_page/forms/fetch.php, especially POSTs carrying action=fetch_department_data or suspicious SQL metacharacters. This is the fastest containment when no vendor patch exists.
  3. Add SQLi signatures and anomaly detection — Deploy WAF/IDS rules for quote-comment patterns, boolean probes, UNION tests, and time-based payloads against this path. For a MEDIUM issue there is no noisgate mitigation SLA, but adding detections now reduces blind exploitation risk while you decide whether to retain the app.
  4. Reduce database privileges — Ensure the PHP application's MySQL account cannot write files, create users, or access unrelated schemas. Least privilege will not remove the SQLi, but it constrains blast radius if exploitation occurs during the remediation window.
  5. Inventory and isolate instances — Search for this repository's file paths and page names across webroots, container images, backup copies, and student project servers. Most organizations will discover the right response is containment or retirement, not heroic patch engineering.
What doesn't work
  • EDR alone does not solve this; SQLi can stay entirely inside the web app and database with little host-level signal.
  • MFA does not help because the public exploit path is reported as unauthenticated.
  • Generic vulnerability scanning of known CPEs may miss this because the project is unversioned, niche, and not packaged like mainstream enterprise software.
  • Hiding the page in navigation does not help; attackers hit the endpoint directly.
06 · Verification

Crowdsourced verification payload.

Run this on the target host that serves the PHP application, not from an auditor workstation. Invoke it as bash verify-cve-2026-11334.sh /var/www/html/CollegeManagementSystem with read access to the webroot; root is not required unless your web files are permission-restricted.

noisgate-verify.sh
BASHREAD-ONLYSAFE
#!/usr/bin/env bash
# verify-cve-2026-11334.sh
# Detect likely exposure to CVE-2026-11334 in tittuvarghese/CollegeManagementSystem
# Usage: bash verify-cve-2026-11334.sh /path/to/CollegeManagementSystem
# Exit codes: 0=PATCHED, 1=VULNERABLE, 2=UNKNOWN

set -u

APP_ROOT="${1:-}"
if [[ -z "$APP_ROOT" ]]; then
  echo "UNKNOWN - missing application root argument"
  exit 2
fi

TARGET="$APP_ROOT/dashboard_page/forms/fetch.php"
if [[ ! -f "$TARGET" ]]; then
  echo "UNKNOWN - $TARGET not found"
  exit 2
fi

# Indicators for the vulnerable condition:
# 1) direct POST read of department_code
# 2) direct SQL interpolation into mysql_query
# 3) no obvious session/auth check in the file
has_post=0
has_sql=0
has_auth=0

if grep -Eq "\$_POST\[['\"]department_code['\"]\]" "$TARGET"; then
  has_post=1
fi

if grep -Eq "mysql_query\(.*department_code='\$department_code'|mysql_query\(.*department = '\$department_code'" "$TARGET"; then
  has_sql=1
fi

if grep -Eq "session_start|\$_SESSION|auth|login_check|require_login" "$TARGET"; then
  has_auth=1
fi

if [[ $has_post -eq 1 && $has_sql -eq 1 && $has_auth -eq 0 ]]; then
  echo "VULNERABLE - unsanitized department_code SQL path present and no obvious auth gate in fetch.php"
  exit 1
fi

if [[ $has_post -eq 0 && $has_sql -eq 0 ]]; then
  echo "PATCHED - vulnerable department_code SQL pattern not found"
  exit 0
fi

echo "UNKNOWN - partial indicators found; manual review required"
exit 2
07 · Bottom Line

If you remember one thing.

TL;DR
Monday morning: first determine whether you actually run this repo anywhere, especially on public web servers, student systems, labs, or shadow IT boxes. Because this is MEDIUM, there is no noisgate mitigation SLA — go straight to the 365-day remediation window; however, if you find an internet-facing instance, restrict access or block dashboard_page/forms/fetch.php immediately as a local risk reduction, then either retire the app or implement a local code fix within the noisgate remediation SLA of ≤ 365 days since no vendor patch exists today.

Sources

  1. GitHub repository
  2. Vulnerable source file
  3. Public issue / PoC
  4. VulDB CVE entry
  5. CVE record
  6. NVD entry
  7. CISA KEV catalog
  8. FIRST EPSS documentation/data
Peer Review

What defenders are saying.

Submit a review attribution: handle + country only
0 flags selected · stored anonymously
Validation Results

Crowdsourced verification outputs.

Results submitted by users who ran the verification payload against their environment.