Ngemva konyaka wentuthuko eshicilelwe ukukhululwa kwephrojekthi Snuffleupagus 0.5.1, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΠ΅Π³ΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΊ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΡ PHP7 Π΄Π»Ρ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ ΠΈ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠΈΠΏΠΎΠ²ΡΡ
ΠΎΡΠΈΠ±ΠΎΠΊ, ΠΏΡΠΈΠ²ΠΎΠ΄ΡΡΠΈΡ
ΠΊ ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ Π² Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΡ
PHP-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ
. ΠΠΎΠ΄ΡΠ»Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ama-virtual patches Π΄Π»Ρ ΡΡΡΡΠ°Π½Π΅Π½ΠΈΡ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ
ΠΏΡΠΎΠ±Π»Π΅ΠΌ Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈΡΡ
ΠΎΠ΄Π½ΡΡ
ΡΠ΅ΠΊΡΡΠΎΠ² ΡΡΠ·Π²ΠΈΠΌΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΡΡΠΎ ΡΠ΄ΠΎΠ±Π½ΠΎ Π΄Π»Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠΈΡΡΠ΅ΠΌΠ°Ρ
ΠΌΠ°ΡΡΠΎΠ²ΠΎΠ³ΠΎ Ρ
ΠΎΡΡΠΈΠ½Π³Π°, Π½Π° ΠΊΠΎΡΠΎΡΡΡ
Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±ΠΈΡΡΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠ°Π½ΠΈΡ Π²ΡΠ΅Ρ
ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ
ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² Π°ΠΊΡΡΠ°Π»ΡΠ½ΠΎΠΌ Π²ΠΈΠ΄Π΅. ΠΠ°ΠΊΠ»Π°Π΄Π½ΡΠ΅ ΡΠ°ΡΡ
ΠΎΠ΄Ρ ΠΎΡ ΡΠ°Π±ΠΎΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΎΡΠ΅Π½ΠΈΠ²Π°ΡΡΡΡ ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠ΅. ΠΠΎΠ΄ΡΠ»Ρ Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° ΡΠ·ΡΠΊΠ΅ Π‘ΠΈ, ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΠΎΡΠΌΠ΅ ΡΠ°Π·Π΄Π΅Π»ΡΠ΅ΠΌΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ (Β«extension=snuffleupagus.soΒ» Π² php.ini) ΠΈ isatshalaliswa ngu ilayisensi ngaphansi kwe-LGPL 3.0.
Snuffleupagus ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΈΡΡΠ΅ΠΌΡ ΠΏΡΠ°Π²ΠΈΠ», ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊ ΡΠΈΠΏΠΎΠ²ΡΠ΅ ΡΠ°Π±Π»ΠΎΠ½Ρ Π΄Π»Ρ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ Π·Π°ΡΠΈΡΡ, ΡΠ°ΠΊ ΠΈ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π° Π΄Π»Ρ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Ρ
ΠΎΠ΄Π½ΡΡ
Π΄Π°Π½Π½ΡΡ
ΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΡΡΠ½ΠΊΡΠΈΠΉ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠ°Π²ΠΈΠ»ΠΎ Β«sp.disable_function.function(Β«systemΒ»).param(Β«commandΒ»).value_r(Β«[$|;&`\\n]Β»).drop();Β» ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΏΠ΅ΡΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π² Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ°Ρ
ΡΡΠ½ΠΊΡΠΈΠΈ system(). ΠΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΡΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ Π΄Π»Ρ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ°ΠΊΠΈΡ
ΠΊΠ»Π°ΡΡΠΎΠ² ΡΡΠ·Π²ΠΈΠΌΠΎcΡΠ΅ΠΉ, ΠΊΠ°ΠΊ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, ezihlobene ngokwenziwa kwedatha, engaphephile ukusetshenziswa komsebenzi we-PHP mail(), ukuvuza kokuqukethwe kwe-Cookie ngesikhathi sokuhlaselwa kwe-XSS, izinkinga ngenxa yokulayisha amafayela anekhodi esebenzisekayo (ngokwesibonelo, ngefomethi phar), ukukhiqizwa kwenombolo okungahleliwe kwekhwalithi empofu kanye esikhundleni ukwakhiwa okungalungile kwe-XML.
ΠΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΡΠ΅ Π² Snuffleupagus ΡΠ΅ΠΆΠΈΠΌΡ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ Π·Π°ΡΠΈΡΡ PHP:
- Nika amandla ngokuzenzakalelayo amafulegi "avikelekile" kanye "ne-samesite" (ukuvikelwa kwe-CSRF) kumakhukhi, ukubethela Ikhukhi;
- Isethi eyakhelwe ngaphakathi yemithetho ukuhlonza iminonjana yokuhlaselwa kanye nokuyekethisa kwezicelo;
- Kuphoqelelwe ukwenziwa kusebenze komhlaba wonke kwe-"okuqinile" (isibonelo, ivimba umzamo wokucacisa iyunithi yezinhlamvu uma ulindele inani eliyingqikithi njengengxabano) kanye nokuvikelwa uhlobo lokukhohlisa;
- Ukuvimbela okuzenzakalelayo ama-protocol wrappers (ngokwesibonelo, ukuvimbela okuthi "phar://") ngokugunyazwa kwabo okusobala;
- Ukwenqatshelwa ekusebenziseni amafayela abhalekayo;
- Izinhlu ezimnyama nezimhlophe ze-eval;
- Kuyadingeka ukuze unike amandla ukuhlolwa kwesitifiketi se-TLS uma usebenzisa
curl;
- Ukwengeza i-HMAC ezintweni ze-serialized ukuqinisekisa ukuthi i-deserialization ithola idatha egcinwe uhlelo lokusebenza lwangempela;
- Cela imodi yokungena;
- Ukuvimbela ukulayishwa kwamafayela angaphandle ku-libxml ngezixhumanisi kumadokhumenti e-XML;
- Ikhono lokuxhuma izibambi zangaphandle (upload_validation) ukuhlola nokuskena amafayela alayishiwe;
Phakathi kwe izinguquko Π² Π½ΠΎΠ²ΠΎΠΌ Π²ΡΠΏΡΡΠΊΠ΅: Π£Π»ΡΡΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° PHP 7.4 ΠΈ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡ Ρ Π½Π°Ρ
ΠΎΠ΄ΡΡΠ΅ΠΉΡΡ Π² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ Π²Π΅ΡΠΊΠΎΠΉ PHP 8. ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΆΡΡΠ½Π°Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠΎΠ±ΡΡΠΈΠΉ ΡΠ΅ΡΠ΅Π· syslog (Π΄Π»Ρ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Π° Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π° sp.log_media, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ php ΠΈΠ»ΠΈ syslog). ΠΠ±Π½ΠΎΠ²Π»ΡΠ½ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅ΠΌΡΠΉ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π½Π°Π±ΠΎΡ ΠΏΡΠ°Π²ΠΈΠ», Π² ΠΊΠΎΡΠΎΡΡΠΉ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ Π½ΠΎΠ²ΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π° Π΄Π»Ρ Π²ΡΡΠ²Π»Π΅Π½Π½ΡΡ
Π² ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ Π²ΡΠ΅ΠΌΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ ΠΈ ΡΠ΅Ρ
Π½ΠΈΠΊ Π°ΡΠ°ΠΊ Π½Π° web-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. Π£Π»ΡΡΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° macOS ΠΈ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ Π½Π΅ΠΏΡΠ΅ΡΡΠ²Π½ΠΎΠΉ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ Π½Π° Π±Π°Π·Π΅ GitLab.
Source: opennet.ru