Mwepụta mmezi nke PHP 7.3.11, 7.1.33 na 7.2.24, bụ nke nkatọ (CVE-2019-11043) na PHP-FPM (FastCGI Process Manager) ndọtị, nke na-enye gị ohere igbu koodu gị na sistemụ. Iji wakpo sava ndị na-eji PHP-FPM na njikọ Nginx iji mee script PHP, ọ dịlarị n'ihu ọha. .
Mwakpo a ga-ekwe omume na nhazi nginx nke a na-ebuga na PHP-FPM site na ikewa akụkụ nke URL site na iji "fastcgi_split_path_info" na ịkọwa ọnọdụ PATH_INFO, mana na-ebughị ụzọ nyochaa ịdị adị nke faịlụ ahụ site na iji "try_files $ fastcgi_script_name" ntuziaka ma ọ bụ "ọ bụrụ (!-f $) document_root$ fastcgi_script_name)". Nsogbu dịkwa na ntọala e nyere maka ikpo okwu NextCloud. Dịka ọmụmaatụ, nhazi nwere usoro dịka:
ọnọdụ ~ [^/]\.php(/|$) {
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
fastcgi_param PATH_INFO $ fastcgi_path_info;
fastcgi_pass php:9000;
}
Ị nwere ike soro mkpebi nsogbu ahụ na ngwa nkesa na ibe ndị a: , , , , , , . Dị ka ebe a na-arụ ọrụ, ị nwere ike itinye nlele maka ịdị adị nke faịlụ PHP a rịọrọ mgbe akara "fastcgi_split_path_info" gasịrị:
try_files $ fastcgi_script_name = 404;
Nsogbu na-ebute site na mperi mgbe ị na-emegharị ntụnye na faịlụ . Mgbe ị na-ekenye pointer, a na-eche na uru nke PATH_INFO gburugburu ebe obibi ga-enwerịrị prefix nke dabara na ụzọ ederede PHP.
Ọ bụrụ na ntuziaka fastcgi_split_path_info na-akọwapụta ikewa ụzọ edemede site na iji okwu ọhụụ na-enwe mmetụta mgbe niile (dịka ọmụmaatụ, ọtụtụ ihe atụ na-atụ aro iji "^(.+?\.php)(/.*)$"), mgbe ahụ onye na-awakpo nwere ike hụ na otu Edere uru efu na mgbanwe gburugburu PATH_INFO. Na nke a, n'ihu tinyere ogbugbu ide ụzọ_info[0] ka ọ bụrụ efu wee kpọọ FCGI_PUTENV.
Site na ịrịọ URL ahaziri n'ụzọ ụfọdụ, onye na-awakpo nwere ike nweta ngbanwe nke ụzọ_info pointer gaa na baiti mbụ nke usoro “_fcgi_data_seg", na ide ihe efu na byte a ga-eduga na mmegharị nke "char * pos" ntụnye aka na mpaghara ebe nchekwa dị na mbụ. Nke a na-akpọ FCGI_PUTENV ga-eji uru onye mwakpo ahụ nwere ike jikwaa degharịa data na ebe nchekwa a. Ebe nchekwa a kapịrị ọnụ na-echekwa ụkpụrụ nke mgbanwe FastCGI ndị ọzọ, na site n'ịde data ha, onye na-awakpo nwere ike ịmepụta mgbanwe PHP_VALUE efu wee mezuo koodu ha.
isi: opennet.ru
