Apache httpd-də saytın kök kataloqundan kənara daxil olmağa imkan verən başqa bir boşluq

Apache http serveri üçün yeni hücum vektoru tapılıb, o, 2.4.50 yeniləməsində düzəlişsiz qalıb və saytın kök kataloqundan kənar ərazilərdən fayllara daxil olmağa imkan verir. Bundan əlavə, tədqiqatçılar müəyyən qeyri-standart parametrlər olduqda nəinki sistem fayllarını oxumağa, həm də onların kodunu serverdə uzaqdan icra etməyə imkan verən üsul tapıblar. Problem yalnız 2.4.49 və 2.4.50 buraxılışlarında görünür, əvvəlki versiyalar təsirlənmir. Yeni zəifliyi aradan qaldırmaq üçün Apache httpd 2.4.51 tez buraxıldı.

Özündə yeni problem (CVE-2021-42013) 2021-dakı orijinal zəifliyə (CVE-41773-2.4.49) tamamilə bənzəyir, yeganə fərq “..” simvollarının fərqli kodlaşdırılmasıdır. Xüsusilə, buraxılış 2.4.50-də nöqtəni kodlaşdırmaq üçün "%2e" ardıcıllığından istifadə etmək imkanı bloklandı, lakin ikiqat kodlaşdırma imkanı əldən verildi - "%%32%65" ardıcıllığını təyin edərkən server onu deşifrə etdi. "%2e" və sonra " .", yəni. əvvəlki qovluğa getmək üçün "../" simvolları ".%%32%65/" kimi kodlaşdırıla bilər.

Kod icrası vasitəsilə zəiflikdən istifadəyə gəldikdə, bu, mod_cgi aktivləşdirildikdə və CGI skriptlərinin icrasına icazə verilən əsas yoldan istifadə edildikdə mümkündür (məsələn, ScriptAlias ​​direktivi aktivdirsə və ya ExecCGI bayrağı Seçimlər direktivi). Uğurlu hücum üçün məcburi tələb həm də açıq şəkildə /bin kimi icra edilə bilən faylları olan qovluqlara və ya Apache parametrlərində “/” fayl sistemi kökünə çıxışın təmin edilməsidir. Belə giriş adətən verilmədiyi üçün kod icra hücumlarının real sistemlərə tətbiqi azdır.

Eyni zamanda, http serverinin işlədiyi istifadəçi tərəfindən oxuna bilən ixtiyari sistem fayllarının məzmununu və veb skriptlərin mənbə mətnlərini əldə etmək hücumu aktual olaraq qalır. Belə bir hücumu həyata keçirmək üçün saytda “Cgi-bin” kimi “Alias” və ya “ScriptAlias” (DocumentRoot kifayət deyil) direktivlərindən istifadə etməklə konfiqurasiya edilmiş kataloqun olması kifayətdir.

Serverdə “id” yardım proqramını icra etməyə imkan verən istismar nümunəsi: curl 'http://192.168.0.1/cgi-bin/.%%32%65/.%%32%65/.%% 32%65/.%% 32%65/.%%32%65/bin/sh' —data 'echo Content-Type: text/plain; əks-səda; id' uid=1(daemon) gid=1(daemon) qrupları=1(daemon)

/etc/passwd məzmununu və veb skriptlərdən birini göstərməyə imkan verən istismar nümunəsi (skript kodunu çıxarmaq üçün skriptin icrası aktivləşdirilməmiş “Alias” direktivi vasitəsilə müəyyən edilmiş kataloq göstərilməlidir. əsas kataloq olaraq): curl 'http://192.168.0.1 .32/cgi-bin/.%%65%32/.%%65%32/.%%65%32/.%%65%32/.% %65%192.168.0.1/etc/passwd' curl 'http: //32/aliaseddir/.%%65%32/.%%65%32/.%%65%32/.%%65%32/. %%65%2/usr/local/apacheXNUMX/cgi -bin/test.cgi'

Problem əsasən Fedora, Arch Linux və Gentoo kimi davamlı yenilənən paylamalara, həmçinin FreeBSD portlarına təsir göstərir. Debian, RHEL, Ubuntu və SUSE konservativ server paylamalarının stabil filiallarındakı paketlər zəiflikdən təsirlənmir. Əgər “hamısına rədd cavabı tələb et” parametrindən istifadə edərək qovluqlara giriş açıq şəkildə rədd edilərsə, problem yaranmır.

Mənbə: opennet.ru

Добавить комментарий