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.
