Avviso di sicurezza: esecuzione di codice arbitraria da parte di utenti privilegiati

27 luglio 2015 | Di

Allarme di sicurezza

Gravità: Alto
Categoria: Esecuzione arbitraria del codice da parte di utenti privilegiati
Progetti interessati: piattaforma edx
Reporter: Revisore della sicurezza di terze parti
URL permanente: https://openedx.org/CVE-2015-5601

Durante un controllo di sicurezza pianificato di terze parti del codice della piattaforma edx è stato scoperto che un bug consentiva a determinate categorie di utenti privilegiati di eseguire codice arbitrario come utente del processo in esecuzione.

Le vulnerabilità e le esposizioni comuni (CVE) il progetto ha assegnato a questo numero il nome CVE-2015-5601. Questa è una voce sul CVE elenco (http://CVE.mitre.org), che standardizza i nomi per problemi di sicurezza.

Maggiori informazioni

Il problema è nell'endpoint di importazione del corso, che accetta un caricamento di file .tar.gz. È possibile creare un file tar che estrae i file nella directory edx-platform, anziché nella directory temporanea che l'app intende utilizzare (vedi sotto per i dettagli). Poiché ci sono sottodirectory di edx-platform nel percorso della libreria python, le istruzioni "import foo" cercheranno "foo.py" in queste directory. Un utente malintenzionato può caricare un file Python con il nome appropriato in una di queste directory e al successivo riavvio dell'applicazione, verrà importata ed eseguita.

Il problema di fondo è nell'elaborazione del file tar. L'applicazione è attenta a non consentire file e collegamenti simbolici che utilizzano percorsi di attraversamento verso l'alto o assoluti per puntare all'esterno della directory di estrazione. Tuttavia, questi controlli, in "extract_tar.py", presuppongono erroneamente che la directory di estrazione sia ".", che si risolve in "/edx/app/edxapp/edx-platform"; dovrebbero invece usare la directory di estrazione effettiva.

L'estrazione vera e propria avviene in una sottodirectory specifica del corso di "/edx/var/edxapp/data", ma è possibile creare collegamenti simbolici che puntano a sottodirectory di "edx-platform" e in esse possono essere estratti file successivi.

Il bug è stato corretto in questo commettere.

Caricamento in corso

Tempo per altro? Dai un'occhiata agli articoli qui sotto.

La piattaforma Open edX ottiene la certificazione LTI® Advantage
Juniper è qui!
Demo di sponsorizzazione edX
Annullamento della Open edX Conference 2020
Partecipa alla conferenza Open edX 2026!

La conferenza Open edX del 2026 presenterà casi d'uso innovativi per uno dei migliori sistemi di gestione dell'apprendimento online open source al mondo, la piattaforma Open edX, e scoprirà gli ultimi progressi nella progettazione didattica, nella costellazione dei corsi e nei metodi per utilizzare ed estendere la piattaforma Open edX , comprese tecnologie rivoluzionarie, come l'intelligenza artificiale generativa.