XÜSUSİ DÖVLƏT MÜHAFİZƏ XİDMƏTİ
XÜSUSİ RABİTƏ VƏ İNFORMASİYA
TƏHLÜKƏSİZLİYİ DÖVLƏT AGENTLİYİ

KOMPÜTER İNSİDENTLƏRİNƏ QARŞI MÜBARİZƏ
MƏRKƏZİ

İnsident bildir

Xəbərlər > Glibc-da Linux kodunu uzaqdan yerinə yetirilməsinə gətirib çıxaran kritik boşluq aşkar edilib.

6 Fev 2015

 Glibc - open, malloc, printf və s. kimi sistem çağırışlarını və əsas funksiyaları təmin edən C kitabxanasıdır (library). C kitabxanası bütün dinamik şəkildə tərtib edilmiş proqramlar üçün istifadə edilir. O, GNU əməliyyat sistemləri üçün Free Software Foundation yazılıb. Glibc GNU LGPL lisenziyası ilə buraxılıb.
Glibc sistem kitabxanasında sistemdə kodun yerinə yetirilməsinin təşkili üçün istifadə edilə bilən kritik boşluqdur. (CVE-2015-0235) və hostun adının IP-ünvana dəyişdirilməsi üçün bir çox proqramlarda istifadə edilən gethostbyname() və gethostbyname2() funksiyalarında xüsusi rəsmiləşdirilmiş məlumatların emalında aşkar edilir. GHOST kod adı almış boşluq təhlükəsizlik səviyyəsi üzrə Bash və OpenSSL ilə müqayisə edilir. Boşluğu göstərmək üçün 32- və 64-kateqoriyalı sistemlərdə bütün mövcud əlavə müdafiə mexanizmlərindən (ASLR, PIE, NX) nəzərə almadan Exim poçt serverində kodun uzaqdan yerinə yetirilməsini təşkil etməyə imkan verən eksploitin iş prototipi hazırlanıb

Gethostbyname() və gethostbyname2()-də istifadə edilən __nss_hostname_digits_dots() funksiyada buferin qədərindən artıq doldurulması problemə səbəb olub. Gethostbyname() və gethostbyname2() çağırışlarının köhnəlməsinə baxmayaraq (getaddrinfo() istifadə edilməlidir), onlar bir çox aktual əlavələrdə hostun adınının dəyişdirilməsi üçün hələ də tətbiq edilir. Hücum DNS vasitəsilə və getaddrinfo()-nun yalnız inet_aton() uğursuz yerinə yetirilməsi zaman tətbiq edilmiş üstün suid-utilitlərdən əldə edilən məlumatların geri yoxlanması üçün gethostbyname() istifadə edən server proqramlarında çətinləşdirilib. Məsələn, boşluq Exim ("helo_verify_hosts", "helo_try_verify_hosts" və ya ACL "verify = helo" quraşdırmalarını istifadə edərək), procmail və clockdiff-də təsdiq edilib.

Maraqlıdır ki, bu problem 2000-ci ilin noyabr ayında buraxılmış 2.2 versiyasından başlayaraq Glibc kodunda mövcuddur. Bununla belə, problem 2013-cü ilin may ayında düzəldilmiş səhvin təhlükəsizliyə aid ciddi problemlərə münasibəti olduğunu qeyd etmədən susaraq aradan qaldırılmışdır. Glibc 2.18 və yeni buraxılışlar boşluğa məruz qalmayıblar. Məlumat üçün bildiririk ki, boşluq Glibc-in yeni versiyaları, məsələn Fedora və Ubuntu son versiyaları, əsasında qurulmuş distributivlərdə aşkar edilmir.
Bununla belə, uzun müddət davam etdirilən təcili yeniləmə tələb edən versiyaları boşluğa məruz qalır. Xüsusi olaraq, problem Debian 7 (wheezy), Red Hat Enterprise Linux 6 və 7, CentOS 6 və 7, Ubuntu 10.04 və 12.04, SUSE Linux Enterprise 10 və 11-də aşkar edilir. Hazırda Ubuntu 10.04/12.04, Debian 7 və RHEL 7,6,5 üçün artıq yeniləmə buraxılıb. SUSE və CentOS üçün yeniləmələr hazırlanmaqdadır.

Kompüter İnsidentlərinə qarşı Mübarizə Mərkəzi tövsiyyə edir ki, Glibc-in yenilənməsindən sonra şəbəkə əlavələrini yenidən işə salmağı unutmayın.

 

© Bütün hüquqlar qorunur. Xəbərlərdən istifadə edərkən www.cert.gov.az saytına istinad zəruridir.