Navigation
Plugins
Architecture
Infrastructure
Exploitation
Projet
|
Sécurité — Permissions et risques
Sécurité
Capabilities Moodle
| Plugin | Capability | Contexte | Rôles | Risque |
| AI Grader | local/dreamu_ai:grade | MODULE | editingteacher, manager | RISK_PERSONAL |
| AI Grader | local/dreamu_ai:configure | MODULE | editingteacher, manager | - |
| QCM Generator | local/dreamu_qcm:generate | COURSE | editingteacher, manager | - |
| Tutor IA | local/tutor_ia:configure | COURSE | editingteacher, manager | - |
| Tutor IA | local/tutor_ia:use | COURSE | student, teacher, editingteacher, manager | - |
| Tutor IA | local/tutor_ia:viewlogs | COURSE | editingteacher, manager | - |
| Tutor IA | local/tutor_ia:manage | SYSTEM | manager | - |
| Bot Quiz | local/dreamu_botquiz:generate | MODULE | editingteacher, manager | RISK_CONFIG |
| Installer | local/dreamu_installer:install | SYSTEM | manager | RISK_CONFIG, RISK_XSS |
Validation des entrées
- Tous les paramètres HTTP via required_param/optional_param (PARAM_INT, PARAM_RAW, etc.)
- confirm_sesskey() sur les actions POST
- require_login() + require_capability() sur toutes les pages
Risques identifiés
- Plugin Installer : Peut installer du code arbitraire depuis GitHub. Restreint aux managers.
- Bot Quiz : Crée des comptes utilisateur Moodle avec emails fictifs (@bot.local).
- Injection commande : pdftotext via shell_exec avec escapeshellarg().
- CDN externes : marked.js et KaTeX chargés sans SRI (Subresource Integrity).
- Taille réponses IA : rawresponse tronqué à 65535 chars.
|