FixVibe
Covered by FixVibehigh

Executarea codului de la distanță în SPIP prin etichete de șablon (CVE-2016-7998)

Versiunile SPIP 3.1.2 și anterioare conțin o vulnerabilitate în compozitorul șablonului. Atacatorii autentificați pot încărca fișiere HTML cu etichete INCLUDE sau INCLURE create pentru a executa cod PHP arbitrar pe server.

CVE-2016-7998CWE-20

Impact

Un atacator autentificat poate executa cod PHP arbitrar pe serverul web de bază [S1]. Acest lucru permite compromiterea completă a sistemului, inclusiv exfiltrarea datelor, modificarea conținutului site-ului și mișcarea laterală în mediul de găzduire [S1].

Cauza fundamentală

Vulnerabilitatea există în componentele compozitorului și compilatorului de șabloane SPIP [S1]. Sistemul nu reușește să valideze sau să igienizeze corect intrarea în anumite etichete de șablon atunci când procesează fișierele încărcate [S1]. Mai exact, compilatorul gestionează incorect etichetele INCLUDE sau INCLURE create în interiorul fișierelor HTML [S1]. Când un atacator accesează aceste fișiere încărcate prin acțiunea valider_xml, etichetele rău intenționate sunt procesate, ducând la executarea codului PHP [S1].

Versiuni afectate

  • SPIP versiunile 3.1.2 și toate versiunile anterioare [S1].

Remediere

Actualizați SPIP la o versiune mai nouă decât 3.1.2 pentru a rezolva această vulnerabilitate [S1]. Asigurați-vă că permisiunile de încărcare a fișierelor sunt strict limitate la utilizatorii administrativi de încredere și că fișierele încărcate nu sunt stocate în directoare în care serverul web le poate executa ca scripturi [S1].

Cum testează FixVibe pentru aceasta

FixVibe ar putea detecta această vulnerabilitate prin două metode principale:

  • Amprentare pasivă: Prin analizarea antetelor de răspuns HTTP sau a metaetichetelor specifice din sursa HTML, FixVibe poate identifica versiunea de rulare a SPIP [S1]. Dacă versiunea este 3.1.2 sau mai mică, ar declanșa o alertă de mare severitate [S1].
  • Scanarea depozitului: Pentru utilizatorii care își conectează depozitele GitHub, scanerul repo al FixVibe poate inspecta fișierele de dependență sau constantele care definesc versiunea din codul sursă SPIP pentru a identifica instalațiile vulnerabile [S1].