Joomla J-CruisePortal 6.0.4 SQL Injection via cruises
Description
Joomla J-CruisePortal 6.0.4 contains an SQL injection vulnerability that allows authenticated attackers to execute arbitrary SQL queries by injecting malicious code through the guest_adult parameter. Attackers can send POST requests to the cruises endpoint with crafted SQL payloads in the guest_adult parameter to extract sensitive database information or manipulate database records.
AI Insight
LLM-synthesized narrative grounded in this CVE's description and references.
Affected products
1Patches
Vulnerability mechanics
Root cause
"Missing input sanitization in the `guest_adult` parameter allows SQL injection."
Attack vector
An authenticated attacker sends a crafted POST request to the `/cruises/cruises` endpoint with a malicious SQL payload injected into the `guest_adult` parameter. The payload uses URL-encoded comment and sleep directives (e.g., `2 /*!11111anD*/ sleep(5)`) to manipulate the SQL query executed by the J-CruisePortal component. Because the application fails to sanitize or parameterize the `guest_adult` input, the injected SQL is executed against the database, allowing the attacker to extract sensitive data or alter records. The exploit requires prior authentication, as indicated by the session cookies in the PoC request. [ref_id=1]
What the fix does
The advisory does not include a published patch. To remediate the vulnerability, the application must properly sanitize or parameterize the `guest_adult` parameter (and all other user-supplied inputs) before including them in SQL queries. Using prepared statements or parameterized queries would prevent injected SQL from being interpreted as executable code. Without such input validation, the component remains vulnerable to SQL injection attacks. [ref_id=1]
Preconditions
- authAttacker must be authenticated to the Joomla instance (valid session cookies are required).
- networkAttacker must be able to send HTTP POST requests to the `/cruises/cruises` endpoint.
- inputThe vulnerable `guest_adult` parameter must be accepted and processed by the search functionality.
Reproduction
Send a POST request to `http://TARGET/[PATH]/cruises/cruises` with the body containing `controller=search&task=searchCruises&guest_adult=2%20%20%2f%2a%21%31%31%31%31%31%61%6e%44%2a%2f%20%73%6c%65%65%70%28%35%29` (which decodes to `2 /*!11111anD*/ sleep(5)`) along with the required session cookies. If the application delays its response by approximately 5 seconds, the SQL injection is confirmed. [ref_id=1]
Generated on Jun 20, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.
References
4- www.exploit-db.com/exploits/46233mitreexploit
- www.vulncheck.com/advisories/joomla-j-cruiseportal-sql-injection-via-cruisesmitrethird-party-advisory
- cmsjunkie.commitreproduct
- www.cmsjunkie.com/joomla-cruise-reservation-portalmitreproduct
News mentions
0No linked articles in our index yet.