zranitelnost nette a jak upgradovat

admin@easyweb4u.cz
Backer | 146
+
0
-

Dnes jsem se trochu podrobněji seznámil s objevenou zranitelností nette a trochu jsem se orosil. Mám několik webů (různí klienti, různé hostingy), počínaje nette 2.4 až nette 3.0

zkusil jsem na localhostu jednoho webu composer update a proběhlo to náramně

Loading composer repositories with package information
Updating dependencies
Lock file operations: 0 installs, 18 updates, 0 removals
 – Upgrading latte/latte (v2.8.1 ⇒ v2.10.3)
 – Upgrading nette/application (v3.0.5 ⇒ v3.1.3)
 – Upgrading nette/bootstrap (v3.0.2 ⇒ v3.1.1)
 – Upgrading nette/caching (v3.0.1 ⇒ v3.1.1)
 – Upgrading nette/database (v3.0.6 ⇒ v3.1.3)
 – Upgrading nette/di (v3.0.4 ⇒ v3.0.8)
 – Upgrading nette/forms (v3.0.5 ⇒ v3.1.3)
 – Upgrading nette/http (v3.0.4 ⇒ v3.1.1)
 – Upgrading nette/mail (v3.1.2 ⇒ v3.1.7)
 – Upgrading nette/neon (v3.1.2 ⇒ v3.2.2)
 – Upgrading nette/php-generator (v3.4.1 ⇒ v3.5.4)
 – Upgrading nette/robot-loader (v3.2.3 ⇒ v3.4.0)
 – Upgrading nette/routing (v3.0.0 ⇒ v3.0.2)
 – Upgrading nette/schema (v1.0.2 ⇒ v1.2.1)
 – Upgrading nette/security (v3.0.4 ⇒ v3.1.3)
 – Upgrading nette/tester (v2.3.2 ⇒ v2.4.0)
 – Upgrading nette/utils (v3.1.2 ⇒ v3.2.2)
 – Upgrading tracy/tracy (v2.7.5 ⇒ v2.8.5)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 0 installs, 18 updates, 0 removals
 – Downloading latte/latte (v2.10.3)
 – Downloading nette/utils (v3.2.2)
 – Downloading nette/http (v3.1.1)
 – Downloading nette/routing (v3.0.2)
 – Downloading nette/application (v3.1.3)
 – Downloading nette/schema (v1.2.1)
 – Downloading nette/robot-loader (v3.4.0)
 – Downloading nette/php-generator (v3.5.4)
 – Downloading nette/neon (v3.2.2)
 – Downloading nette/di (v3.0.8)
 – Downloading nette/bootstrap (v3.1.1)
 – Downloading nette/caching (v3.1.1)
 – Downloading nette/database (v3.1.3)
 – Downloading nette/mail (v3.1.7)
 – Downloading nette/security (v3.1.3)
 – Downloading nette/tester (v2.4.0)
 – Downloading tracy/tracy (v2.8.5)
 – Downloading nette/forms (v3.1.3)
 – Upgrading latte/latte (v2.8.1 ⇒ v2.10.3): Extracting archive
 – Upgrading nette/utils (v3.1.2 ⇒ v3.2.2): Extracting archive
 – Upgrading nette/http (v3.0.4 ⇒ v3.1.1): Extracting archive
 – Upgrading nette/routing (v3.0.0 ⇒ v3.0.2): Extracting archive
 – Upgrading nette/application (v3.0.5 ⇒ v3.1.3): Extracting archive
 – Upgrading nette/schema (v1.0.2 ⇒ v1.2.1): Extracting archive
 – Upgrading nette/robot-loader (v3.2.3 ⇒ v3.4.0): Extracting archive
 – Upgrading nette/php-generator (v3.4.1 ⇒ v3.5.4): Extracting archive
 – Upgrading nette/neon (v3.1.2 ⇒ v3.2.2): Extracting archive
 – Upgrading nette/di (v3.0.4 ⇒ v3.0.8): Extracting archive
 – Upgrading nette/bootstrap (v3.0.2 ⇒ v3.1.1): Extracting archive
 – Upgrading nette/caching (v3.0.1 ⇒ v3.1.1): Extracting archive
 – Upgrading nette/database (v3.0.6 ⇒ v3.1.3): Extracting archive
 – Upgrading nette/mail (v3.1.2 ⇒ v3.1.7): Extracting archive
 – Upgrading nette/security (v3.0.4 ⇒ v3.1.3): Extracting archive
 – Upgrading nette/tester (v2.3.2 ⇒ v2.4.0): Extracting archive
 – Upgrading tracy/tracy (v2.7.5 ⇒ v2.8.5): Extracting archive
 – Upgrading nette/forms (v3.0.5 ⇒ v3.1.3): Extracting archive
Generating autoload files

Než vyvedu nějakou blbost na ostrém webu potřeboval bych poradit

  1. je třeba upgradovat ostrý web, když původní verze byla 3.0.5?
  2. pokud ano – mám na ostrý web přepsat složky nette, latte, tracy?
  3. je třeba ještě něco dalšího, např. přepsání composer.json, composer.lock (ten byl upgradovan)?
  4. nemůže dojít na ostrém webu k nějakému konfliktu, např. s verzí PHP nebo povolenými direktivami
  5. jde to nějak jinak, např. spuštěním scriptu na ostrém serveru: patch-CVE-2020–15227.php?
  6. pokud takto upgraduji i starší verze nette, jsou v tom upgradu zohledněny tyto starší verze (podle toho, co jsem četl, bych řekl, že ano)
  7. prosím o jakoukoliv radu jak problém napříč weby vyřešit, dík
dms
Člen | 94
+
+1
-
  1. ano zranitelne verze jsou oznacene cervene https://packagist.org/…/application

Ostatni odpovedi zde https://forum.nette.org/…pusteni-kodu

Pokud chcete vyresit jen tento problem tak nejjednodussi je ten dirty fix zmineny v prispevku

admin@easyweb4u.cz
Backer | 146
+
0
-

dms napsal(a):

  1. ano zranitelne verze jsou oznacene cervene https://packagist.org/…/application

Ostatni odpovedi zde https://forum.nette.org/…pusteni-kodu

Pokud chcete vyresit jen tento problem tak nejjednodussi je ten dirty fix zmineny v prispevku

Díky za odpověď. Já jsem ten příspěvek samozřejmě četl a ty mé dotazy jsou na to, co jsem se v tom (pro mě povrchním s ohledem na závažnost) příspěvku nedočetl. Já se nemohu vnitřně dohadovat o tom, zda mám na ostrém webu přepsat celé složky nette, latte, tracy + composer.lock. Já to potřebuju vědět na 100 %.

Dirty fix: jestli tomu dobře rozumím (tím si nejsem nikdy jist) – stačí soubor MicroPresenter.php smazat a je vystaráno? V jakékoliv verzi?

admin@easyweb4u.cz
Backer | 146
+
0
-

V jednom webu jsem našel soubor: MicroPresenter.php-nette-autoupdate-backup.24813

Co to znamená?

Marek Bartoš
Nette Blogger | 1274
+
+2
-

admin@easyweb4u.cz napsal(a):

V jednom webu jsem našel soubor: MicroPresenter.php-nette-autoupdate-backup.24813

Co to znamená?

Je možné že ti to fixnul sám hosting, velká část českých hostingů to dělala. Je to název z hotfix skriptu

https://gist.github.com/…8b484bcd1385#…

Editoval Marek Bartoš (31. 7. 2021 18:44)

admin@easyweb4u.cz
Backer | 146
+
0
-

Marek Bartoš napsal(a):

admin@easyweb4u.cz napsal(a):

V jednom webu jsem našel soubor: MicroPresenter.php-nette-autoupdate-backup.24813

Co to znamená?

Je možné že ti to fixnul sám hosting, velká část českých hostingů to dělala. Je to název z hotfix skriptu

https://gist.github.com/…8b484bcd1385#…

A tenhle fixnutý nahrazuje původní MicroPresenter.php? Ten já jsem smazal. Jak je vůbec možné, že po smazání toho presenteru aplikace běží jako by se nechumelilo?

Marek Bartoš
Nette Blogger | 1274
+
0
-

Protože se nejspíš nikde nepoužívá. A i kdyby používal, v produkční módu se to nedozvíš, dokud se ho něco nepokusí spustit, není to potřeba.

Backup je ten původní, MicroPresenter.php je ten fixnutý.

Editoval Marek Bartoš (31. 7. 2021 18:52)

admin@easyweb4u.cz
Backer | 146
+
0
-

Marek Bartoš napsal(a):

Protože se nejspíš nikde nepoužívá. A i kdyby používal, v produkční módu se to nedozvíš, dokud se ho něco nepokusí spustit, není to potřeba.

Backup je ten původní, MicroPresenter.php je ten fixnutý.

Áha, a co teď s tím? Vrátit tam původní MicroPresenter.php (tedy fixnutý serverem) nebo nejnovější z verze 3.1.3? Nebo ho tam nedávat a doufat, že nebude na produkčním webu potřeba?

admin@easyweb4u.cz
Backer | 146
+
0
-

admin@easyweb4u.cz napsal(a):

Marek Bartoš napsal(a):

Protože se nejspíš nikde nepoužívá. A i kdyby používal, v produkční módu se to nedozvíš, dokud se ho něco nepokusí spustit, není to potřeba.

Backup je ten původní, MicroPresenter.php je ten fixnutý.

Áha, a co teď s tím? Vrátit tam původní MicroPresenter.php (tedy fixnutý serverem) nebo nejnovější z verze 3.1.3? Nebo ho tam nedávat a doufat, že nebude na produkčním webu potřeba?

No v jednom mém webu (administrační části) po smazání MicroPresenter.php to hodilo chybu (RobotLoader).

Marek Bartoš
Nette Blogger | 1274
+
+1
-

Ideální je aktualizovat nette, fix ze skriptu však stačí. Mazání může mít problémy, kupříkladu ten na který jsi narazil, ideálně se tomu tedy vyhnout.