A tutorial PHP project from a student-code download site gets another CVE — and you almost certainly don't run it
CVE-2026-13552 is an injection-class flaw (CWE-74) in *itsourcecode Online Hotel Management System 1.0*, one of dozens of free PHP/MySQL teaching projects published by itsourcecode.com for students learning web development. Vendor scored it HIGH (CVSS 7.3 — AV:N/AC:L/PR:N/UI:N) because the input goes straight into a database or interpreter without sanitization, and the project's admin login is reachable over the network with no auth. The 1.0 release is the *only* release; there is no patched version, no maintenance branch, and no security response process — itsourcecode is a code-share site, not a vendor.
The CVSS vector is technically accurate for the code as written, but enterprise relevance is essentially zero. This package is downloaded as a .zip learning artifact, dropped into XAMPP on a student's laptop, demonstrated for a class, and deleted. There is no installed-base data on Shodan, Censys, or BuiltWith showing this codebase in commercial hotel operations. Real PMS deployments run Oracle OPERA, Mews, Cloudbeds, RoomRaccoon, or protel — not a CWE-74-laden tutorial. Treating this CVE as HIGH for any production environment misallocates patching cycles.
3 steps from start to impact.
Locate an exposed itsourcecode OHMS instance
- Internet-reachable HTTP/HTTPS service
- Default itsourcecode file layout intact
- Codebase is not used in commercial hospitality
- No CDN, ASN, or hosting pattern concentrates these installs
- Most copies live on
localhostin XAMPP and are never exposed
Trigger the injection sink
sqlmap -u <url> --forms --batch typically wins on first run because the project uses raw string concatenation into mysqli_query.- Reachable vulnerable endpoint
- MySQL backend running (default)
- None at the application layer — there is no WAF, no prepared statements, no input filter
Pivot from app to host
users table, log in as admin, abuse the file-upload features common to these tutorials to drop a PHP webshell. From there, RCE as the web user. Whether that escalates depends on the host — usually a student XAMPP box, occasionally a shared-hosting jail.- Writable upload directory
- PHP execution allowed in upload path
- No lateral movement value — the host has no enterprise data, no AD join, no VPN trust
The supporting signals.
| In-the-wild exploitation | None observed. No campaign, no honeypot hits, no GreyNoise tag for this specific CVE. |
|---|---|
| Public PoC | Not yet published for this CVE ID, but sqlmap against the affected endpoint is effectively the PoC — same pattern as CVE-2026-5551 and CVE-2026-3730 in sibling itsourcecode projects. |
| EPSS | Not yet scored (disclosed today, 2026-06-29). Sibling itsourcecode CVEs sit at <0.2% percentile — no one bothers exploiting them at scale. |
| KEV status | Not listed, and will not be — CISA does not catalog student tutorial code. |
| CVSS vector | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L — network-reachable, no auth, partial CIA. Vector is correct; *context* is what makes it irrelevant. |
| Affected versions | *itsourcecode Online Hotel Management System* 1.0 (the only release). |
| Fixed version | None. No vendor patch process, no maintained branch, no distro packaging. |
| Exposure data | Shodan / Censys / FOFA show no meaningful enterprise footprint. Installed base is student labs and abandoned shared-hosting demos. |
| Disclosed | 2026-06-29 — same day as a batch of similar low-effort PHP-project CVEs typically aggregated by VulDB. |
| Reporter | Likely a VulDB / bug-bounty researcher chaining sqlmap runs against itsourcecode's catalog (consistent pattern across 2025–2026 itsourcecode CVE bursts). |
noisgate verdict.
The decisive factor is installed-base reality: itsourcecode is a student-code download site, not a vendor, and this codebase does not appear in any commercial hospitality stack or enterprise inventory. A HIGH CVSS on software no enterprise actually runs is a noise event, not a patching priority.
Why this verdict
- Installed base is effectively zero in enterprise: Real PMS deployments run Oracle OPERA, Mews, Cloudbeds, protel, RoomRaccoon — none of them itsourcecode tutorial PHP. Shodan/Censys carry no commercial signal.
- No vendor, no patch, no SLA upstream: itsourcecode is a code-sharing portal. There is no maintenance branch to track and no CPE to match against your SBOM — your scanner will not flag this on any host you actually own.
- Friction audit: to be hit, you must (a) have downloaded this exact tutorial, (b) deployed it to a network-reachable host, (c) skipped every default control (WAF, EDR, NGFW egress) — the population satisfying all three rounds to zero.
- Role multiplier: even in the worst plausible deployment role this codebase ends up in (a student XAMPP VM or a
$3/moshared-hosting demo), the blast radius is local to that host. It is not a hypervisor, IdP, DC, CA, backup server, kernel-mode agent, or edge appliance. There is no high-value role to floor the verdict on. - Pattern recognition: this is the latest in a long string of low-effort itsourcecode CVEs (CVE-2026-5551, -3730, -3152, and dozens more). They consume scanner cycles and CVE-feed noise; they do not change enterprise risk.
Why not higher?
Higher requires either a measurable enterprise installed base or a high-value-role multiplier. This codebase has neither — there is no fleet of itsourcecode OHMS running production hotels, and the affected component is not a hypervisor, IdP, PAM, backup, edge appliance, or kernel-mode agent. CVSS vector severity does not survive contact with deployment reality.
Why not lower?
We stop at IGNORE rather than carve a new floor below LOW because IGNORE *is* the lowest action bucket. If you genuinely run this codebase (you almost certainly do not), the bug is real and exploitable, so it is not a documentation-only artifact for that one defender — but for everyone else, ignore + document is correct.
What to do — in priority order.
- Inventory check, then close the ticket — Grep your CMDB / SBOM / asset inventory for
itsourcecode,Online Hotel Management System, and the project's signature filenames (mod_room,mod_guest,mod_amenities). Zero hits = close as not-applicable. No mitigation SLA applies — document the rationale and move on. - Suppress this CVE family in your scanner — If Tenable / Qualys / Rapid7 ever ships a plugin for itsourcecode projects, add a suppression rule scoped to non-enterprise CPEs so this class does not consume triage cycles every Tuesday. Do this within the next maintenance window.
- If (somehow) you do run it: take it offline — There is no patch. Decommission the instance, migrate the data to a real PMS, and rebuild the host. No 30/90/180-day SLA — the only correct action is removal.
- WAF rules tuned to this specific CVE — wasted engineering time when generic CRS SQLi rules already cover the payload class.
- Waiting for a vendor patch — there is no vendor and no patch pipeline; this CVE will sit open forever in the NVD record.
- Adding this to your monthly patching dashboard — it skews metrics and trains responders to ignore the dashboard.
Crowdsourced verification payload.
Run this on any inventory/asset host or auditor workstation with read access to your web-root snapshots and SBOM exports. Example: ./check-ohms.sh /mnt/asset-snapshots /var/sbom/exports. No elevated privileges required.
#!/usr/bin/env bash
# noisgate: detect presence of itsourcecode Online Hotel Management System 1.0
# Exits: 0 PATCHED (not present), 1 VULNERABLE (present), 2 UNKNOWN (no inputs)
set -u
SEARCH_ROOTS=("${1:-/srv/www}" "${2:-/var/www}")
SIGNATURES=(
"itsourcecode"
"Online Hotel Management System"
"mod_amenities"
"mod_room"
"mod_guest"
"hotel/admin/login.php"
)
hits=0
any_root=0
for root in "${SEARCH_ROOTS[@]}"; do
if [[ -d "$root" ]]; then
any_root=1
for sig in "${SIGNATURES[@]}"; do
count=$(grep -rlI --include='*.php' --include='*.html' -F "$sig" "$root" 2>/dev/null | wc -l)
if [[ "$count" -gt 0 ]]; then
echo "[hit] signature='$sig' files=$count root=$root"
hits=$((hits+count))
fi
done
fi
done
if [[ "$any_root" -eq 0 ]]; then
echo "UNKNOWN: no search roots present, supply paths as args"
exit 2
fi
if [[ "$hits" -gt 0 ]]; then
echo "VULNERABLE: itsourcecode OHMS artifacts found ($hits matches) — decommission, no patch exists"
exit 1
fi
echo "PATCHED: itsourcecode OHMS not present in scanned roots"
exit 0
If you remember one thing.
Sources
- CISA Vulnerability Summary — Week of June 15, 2026
- OpenCVE — Hotel Management System CVEs
- CVE-2026-5551 — sibling itsourcecode Free Hotel Reservation System SQLi
- CVE-2026-3730 — itsourcecode Free Hotel Reservation System SQLi (DailyCVE)
- CVE-2026-3152 — itsourcecode College Management System SQLi (OffSeq)
- GitHub Advisory Database — unreviewed advisories
- VulDB — CVE list
- CWE-74 — Improper Neutralization of Special Elements (Injection)
What defenders are saying.
Crowdsourced verification outputs.
Results submitted by users who ran the verification payload against their environment.