FixVibe
Covered by FixVibehigh

Daljinsko izvršavanje koda u SPIP-u putem oznaka predloška (CVE-2016-7998)

SPIP verzije 3.1.2 i starije sadrže ranjivost u sastavljaču šablona. Autentifikovani napadači mogu da uploaduju HTML fajlove sa napravljenim oznakama INCLUDE ili INCLURE kako bi izvršili proizvoljni PHP kod na serveru.

CVE-2016-7998CWE-20

Impact

Provjereni napadač može izvršiti proizvoljan PHP kod na osnovnom web serveru [S1]. Ovo omogućava potpuni kompromis sistema, uključujući eksfiltraciju podataka, modifikaciju sadržaja sajta i bočno pomeranje unutar hosting okruženja [S1].

Osnovni uzrok

Ranjivost postoji u komponentama kompajlera i kompajlera SPIP šablona [S1]. Sistem ne uspijeva pravilno potvrditi ili sanirati unos unutar određenih oznaka šablona prilikom obrade prenesenih datoteka [S1]. Konkretno, kompajler pogrešno obrađuje kreirane oznake INCLUDE ili INCLURE unutar HTML datoteka [S1]. Kada napadač pristupi ovim otpremljenim datotekama putem akcije valider_xml, zlonamjerne oznake se obrađuju, što dovodi do izvršenja PHP koda [S1].

Zahvaćene verzije

  • SPIP verzije 3.1.2 i sve prethodne verzije [S1].

Remedijacija

Ažurirajte SPIP na verziju noviju od 3.1.2 da biste riješili ovu ranjivost [S1]. Osigurajte da su dozvole za prijenos datoteka striktno ograničene na pouzdane administrativne korisnike i da otpremljene datoteke nisu pohranjene u direktorijima gdje ih web server može izvršiti kao skripte [S1].

Kako FixVibe testira za to

FixVibe bi mogao otkriti ovu ranjivost na dvije osnovne metode:

  • Pasivni otisak prsta: Analizom HTTP zaglavlja odgovora ili specifičnih meta oznaka u HTML izvoru, FixVibe može identifikovati pokrenutu verziju SPIP [S1]. Ako je verzija 3.1.2 ili starija, to bi pokrenulo upozorenje visoke ozbiljnosti [S1].
  • Skeniranje spremišta: Za korisnike koji povezuju svoja GitHub spremišta, repo skener FixVibe može pregledati datoteke zavisnosti ili konstante koje definiraju verziju u SPIP izvornom kodu kako bi identificirao ranjive instalacije ZXCVKVFIX.