
Chyba umožňujúca vzdialené vykonávanie kódu v PHP7
Chyba CVE-2019-11043, ktorá bola prednedávnom opravená, umožňuje jednoduché vzdialené vykonanie kódu na serveri s PHP 7. Skript demonštrujúci túto chybu bol zverejnený na GitHube.
Zraniteľné sú server NGINX používajúce php-fpm (PHP FastCGI Process Manager) so špecifickou konfiguráciou. Konfigurácia musí používať direktívu fastcgi_split_path_info s regulárnym výrazom zachytávajúcim začiatok a koniec vstupu, ktorý sa dá oklamať znakom nového riadku. Tento vstup musí byť ďalej nastavený vo FastCGI parametri PATH_INFO. Poslednou podmienkou je chýbajúca kontrola existencie PHP skriptu, na ktorý sa požiadavka forwarduje.
Aj keď zverejnený exploit zneužíva optimalizáciu spracovania FastCGI premenných, ktorá je implementovaná iba v PHP 7, nie je vylúčené, že existuje technika, ktorá funguje aj v PHP 5.
PHP nepoužívam a ani bych nikdy nechcel, je to jazyk jak za trest, nekonzistentný (pol funkcií v tvare some_function() druhá polovica v tvare someFunction(), pre arraye polovica funkcií má slovo array v názve, polovica nemá, atd), chaotický (snaď jediný jazyk, ktorý má ternary operator asociovaný zľava) a deravý(tento príspevok je len jeden z príkladov).
Táto chyba nesúvisí až tak s konkrétnym jazykom, ale so spracovaním FastCGI, a mohla by sa vyskytnúť aj v inej implementácii. Konkrétne jadrom tejto chyby je pointerová aritmetika v C.
PHP je nástroj ako každý iný a v poslednej dobe niekoľkých rokov je to použiteľný jazyk tiež ako kopec iných.
I tak mi PHP prijde ako humus, a to sa nezmení. Som odporca C#, Java, PHP a SQL. Osobne radšej preferujem jazyky ako JS, Golang, Raku (Perl 6), Rust, C, Erlang, či trocha aj Python (ale pracujem s hlavne prvými dvomi).
Zato v JS je ta typová exaktnost vážně slast...
O typovosti som nehovoril, a inak pocul si termín TypeScript?
... P. s. ani JS co sa týka typovosti zas taký problém nie je, pokial nerobíš prapodiviny ako že chceš od čísla odčítať objekt s retazcami.
https://www.destroyallsoftware.com/talks/wat
Viděl jsem to za ty léta už asi 10x a pořád se u toho tlemím
Jj...
Pokud by mel nekdo zajem o serious talk o JavaScriptu, tak urcite tohle. Na Venkata jsou na konfenecich vzdy plne saly, treba na tehle sedeli lidi i na schodech, pac na ne nezbylo misto. Vim to, pac jsem mel tu cest tam take byt pritomen...
jop o týchto prapodivnostiach hovorím, inak toto ma furt rozosmeje, videl som to už stovku krát, ale aj tak sa rozosmejem když to vidím.