# Moodle
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 * Você trabalha em uma **empresa de segurança cibernética**? Você quer ver sua **empresa anunciada no HackTricks**? ou você quer ter acesso à **última versão do PEASS ou baixar o HackTricks em PDF**? Verifique os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)! * Descubra [**A Família PEASS**](https://opensea.io/collection/the-peass-family), nossa coleção exclusiva de [**NFTs**](https://opensea.io/collection/the-peass-family) * Adquira o [**swag oficial do PEASS & HackTricks**](https://peass.creator-spring.com) * **Junte-se ao** [**💬**](https://emojipedia.org/speech-balloon/) [**grupo Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo telegram**](https://t.me/peass) ou **siga-me** no **Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.** * **Compartilhe seus truques de hacking enviando PRs para o** [**repositório hacktricks**](https://github.com/carlospolop/hacktricks) **e** [**repositório hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).
Se você está interessado em uma **carreira de hacking** e hackear o inquebrável - **estamos contratando!** (_fluência em polonês escrita e falada é necessária_). {% embed url="https://www.stmcyber.com/careers" %} ## Scans Automáticos ### 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) ``` O comando `moodlescan` é uma ferramenta de linha de comando usada para realizar a varredura de vulnerabilidades em instalações do Moodle. Essa ferramenta é especialmente útil durante testes de penetração em ambientes Moodle, permitindo identificar possíveis falhas de segurança que podem ser exploradas por hackers. O `moodlescan` é capaz de verificar várias vulnerabilidades conhecidas no Moodle, incluindo problemas de configuração, falhas de autenticação, injeção de SQL, cross-site scripting (XSS) e muito mais. Ele também pode ser usado para verificar a versão do Moodle instalada e fornecer informações detalhadas sobre a configuração do sistema. Para usar o `moodlescan`, basta executar o comando seguido pelo URL da instalação do Moodle que deseja verificar. Por exemplo: ``` moodlescan https://example.com/moodle ``` O `moodlescan` irá então iniciar a varredura e exibir os resultados na tela. É importante ressaltar que essa ferramenta deve ser usada apenas em ambientes autorizados, como parte de um teste de penetração legítimo. O uso indevido ou não autorizado do `moodlescan` pode ser considerado ilegal e sujeito a penalidades. ```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. ``` O CMSMap é uma ferramenta de código aberto usada para realizar testes de penetração em sistemas de gerenciamento de conteúdo (CMS). Ele é projetado para identificar e explorar vulnerabilidades em CMS populares, como o Moodle. O CMSMap pode ser usado para descobrir informações sobre a instalação do Moodle, como versão, plugins instalados e temas ativos. Ele também pode ajudar a identificar possíveis pontos fracos que podem ser explorados durante um teste de penetração. O CMSMap é uma ferramenta poderosa para hackers éticos e profissionais de segurança que desejam avaliar a segurança de um site baseado em Moodle. ```bash pip3 install git+https://github.com/dionach/CMSmap.git cmsmap http://moodle.example.com/ ``` ### CVEs Descobri que as ferramentas automáticas são bastante **inúteis para encontrar vulnerabilidades que afetam a versão do Moodle**. Você pode **verificá-las** em [**https://snyk.io/vuln/composer:moodle%2Fmoodle**](https://snyk.io/vuln/composer:moodle%2Fmoodle) ## **RCE** Você precisa ter a função de **gerente** e **pode instalar plugins** dentro da guia **"Administração do site"**\*\*:\*\* ![](<../../.gitbook/assets/image (447).png>) Se você for gerente, talvez ainda precise **ativar essa opção**. Você pode ver como fazer isso no PoC de escalonamento de privilégios do Moodle: [https://github.com/HoangKien1020/CVE-2020-14321](https://github.com/HoangKien1020/CVE-2020-14321). Em seguida, você pode **instalar o seguinte plugin** que contém o clássico shell reverso em PHP do pentest-monkey (_antes de fazer o upload, você precisa descompactá-lo, alterar o IP e a porta do revshell e compactá-lo novamente_) {% file src="../../.gitbook/assets/moodle-rce-plugin.zip" %} Ou você pode usar o plugin de [https://github.com/HoangKien1020/Moodle\_RCE](https://github.com/HoangKien1020/Moodle\_RCE) para obter um shell PHP regular com o parâmetro "cmd". Para acessar o plugin malicioso, você precisa acessar: ```bash http://domain.com//blocks/rce/lang/en/block_rce.php?cmd=id ``` ### Encontrar credenciais do banco de dados Durante um teste de penetração em um site Moodle, uma etapa importante é encontrar as credenciais do banco de dados. Essas informações são essenciais para acessar e manipular os dados armazenados no banco de dados do Moodle. Uma maneira comum de encontrar as credenciais do banco de dados é explorar o código-fonte do site Moodle. Procure por arquivos como `config.php` ou `config-dist.php`, que geralmente contêm as informações de conexão com o banco de dados. Outra abordagem é realizar uma análise de tráfego usando ferramentas como o Wireshark. Monitore o tráfego de rede enquanto realiza ações no site Moodle, como fazer login ou acessar páginas específicas. Procure por pacotes que contenham informações de autenticação do banco de dados, como nomes de usuário e senhas. Além disso, você pode tentar explorar vulnerabilidades conhecidas no Moodle que possam expor as credenciais do banco de dados. Verifique se há versões desatualizadas ou vulnerabilidades conhecidas que possam ser exploradas para obter acesso às informações do banco de dados. Uma vez que você tenha as credenciais do banco de dados, poderá usá-las para acessar diretamente o banco de dados do Moodle e realizar atividades como extração de dados, modificação de registros ou até mesmo a exclusão de informações sensíveis. ```bash find / -name "config.php" 2>/dev/null | grep "moodle/config.php" ``` ### Extrair Credenciais do banco de dados To dump credentials from a database, you can use various techniques depending on the specific database management system (DBMS) being used. Here are some common methods: 1. **SQL Injection**: If the web application is vulnerable to SQL injection, you can exploit this vulnerability to extract credentials from the database. By injecting malicious SQL queries, you can retrieve sensitive information such as usernames and passwords. 2. **Brute-forcing**: If you have obtained a database backup file or have direct access to the database server, you can attempt to brute-force the credentials. This involves trying different combinations of usernames and passwords until you find the correct ones. 3. **Exploiting Misconfigurations**: Sometimes, databases are misconfigured, allowing unauthorized access. By exploiting these misconfigurations, you can gain access to the database and extract the credentials. 4. **Using Database Exploitation Tools**: There are various tools available that can help you extract credentials from databases. These tools often automate the process and provide additional functionalities for database pentesting. Remember, it is important to have proper authorization and legal permission before attempting to extract credentials from a database. Unauthorized access to databases is illegal and unethical. Always ensure you are conducting penetration testing within the boundaries of the law and with proper authorization. ```bash /usr/local/bin/mysql -u --password= -e "use moodle; select email,username,password from mdl_user; exit" ``` Se você está interessado em uma **carreira de hacking** e hackear o inquebrável - **estamos contratando!** (_fluência em polonês escrita e falada é necessária_). {% embed url="https://www.stmcyber.com/careers" %}
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 * Você trabalha em uma **empresa de cibersegurança**? Você quer ver sua **empresa anunciada no HackTricks**? ou você quer ter acesso à **última versão do PEASS ou baixar o HackTricks em PDF**? Verifique os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)! * Descubra [**A Família PEASS**](https://opensea.io/collection/the-peass-family), nossa coleção exclusiva de [**NFTs**](https://opensea.io/collection/the-peass-family) * Adquira o [**swag oficial do PEASS & HackTricks**](https://peass.creator-spring.com) * **Junte-se ao** [**💬**](https://emojipedia.org/speech-balloon/) [**grupo Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo telegram**](https://t.me/peass) ou **siga-me** no **Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.** * **Compartilhe seus truques de hacking enviando PRs para o** [**repositório hacktricks**](https://github.com/carlospolop/hacktricks) **e** [**repositório hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).