FixVibe
Covered by FixVibehigh

Аддаленае выкананне кода ў SPIP праз тэгі шаблона (CVE-2016-7998)

Версіі SPIP 3.1.2 і больш раннія ўтрымліваюць уразлівасць у кампазітары шаблонаў. Аўтэнтыфікаваныя зламыснікі могуць загружаць файлы HTML са створанымі тэгамі INCLUDE або INCLURE для выканання адвольнага кода PHP на серверы.

CVE-2016-7998CWE-20

Уплыў

Аўтэнтыфікаваны зламыснік можа выканаць адвольны код PHP на базавым вэб-серверы [S1]. Гэта дазваляе цалкам скампраметаваць сістэму, уключаючы выкраданне даных, мадыфікацыю змесціва сайта і бакавое перамяшчэнне ў асяроддзі хостынгу [S1].

Першапрычына

Уразлівасць існуе ў кампанентах кампазітара і кампілятара шаблонаў SPIP [S1]. Сістэма не можа належным чынам праверыць або ачысціць увод у пэўных тэгах шаблону пры апрацоўцы загружаных файлаў [S1]. У прыватнасці, кампілятар няправільна апрацоўвае створаныя тэгі INCLUDE або INCLURE у файлах HTML [S1]. Калі зламыснік атрымлівае доступ да гэтых загружаных файлаў праз дзеянне valider_xml, шкоднасныя тэгі апрацоўваюцца, што прыводзіць да выканання кода PHP [S1].

Закранутыя версіі

  • SPIP версіі 3.1.2 і ўсе папярэднія версіі [S1].

Выпраўленне

Абнавіце SPIP да версіі, навейшай за 3.1.2, каб ліквідаваць гэтую ўразлівасць [S1]. Пераканайцеся, што дазволы на загрузку файлаў строга абмежаваны даверанымі карыстальнікамі-адміністратарамі і што загружаныя файлы не захоўваюцца ў каталогах, дзе вэб-сервер можа выконваць іх у выглядзе сцэнарыяў [S1].

Як FixVibe правярае гэта

FixVibe можа выявіць гэтую ўразлівасць двума асноўнымі метадамі:

  • Пасіўная адбітка пальца: Аналізуючы загалоўкі адказаў HTTP або пэўныя метатэгі ў зыходным HTML-файле, FixVibe можа вызначыць запушчаную версію SPIP [S1]. Калі версія 3.1.2 або ніжэй, гэта выкліча папярэджанне высокай ступені сур'ёзнасці [S1].
  • Сканаванне сховішчаў: Для карыстальнікаў, якія падключаюць свае рэпазітары GitHub, сканер рэпазітараў FixVibe можа правяраць файлы залежнасцей або канстанты, якія вызначаюць версію, у зыходным кодзе SPIP, каб вызначыць уразлівыя ўстаноўкі [S1].