Skip to content

Apache Pinot’da topilgan muhim xavfsizlik zaifligi hujumchilarga autentifikatsiyani bypass qilish imkonini beradi

Apache Pinot, LinkedIn, Uber va Microsoft kabi yirik kompaniyalar tomonidan real vaqtda analitika uchun ishlatiladigan ochiq manbali distributiv OLAP ma’lumotlar bazasi, yaqinda juda jiddiy xavfsizlik zaifligiga duch keldi. CVE-2024-56325 deb nomlangan bu zaiflik, tizimga ruxsatsiz kirish imkonini beruvchi autentifikatsiyani bypass qilish imkoniyatini yaratadi. Ushbu zaiflik CVSS v3 shkalasida 9.8 ball bilan baholangan, ya’ni eng yuqori darajadagi xavflilikka ega.

Zaiflikning asosiy sababi, Apache Pinot-ning AuthenticationFilter klassi (org.apache.pinot.core.auth.AuthenticationFilter) da maxsus belgilarni noto’g’ri neytrallashdir. Bu klass API endpointlari uchun URI tekshiruvini boshqaradi. Hujumchilar maxsus kodlangan ketma-ketliklardan (masalan, %2e%2e/ yoki null-byte in’ektsiyalari) foydalangan holda HTTP so’rovlarini yuborib, yo’l normalizatsiyasini chetlab o’tishlari mumkin.

Masalan, quyidagi payload shouldAllowUnauthenticatedAccess() metodida yetarlicha tozalash amalga oshirilmaganligini suiiste’mol qilib, /config yoki /tables kabi cheklangan endpointlarni ochiq yo’llar sifatida ko’rsatadi.

Bu zaiflik CWE-707 («Boshqaruv Elementlarini Neytrallashdagi Xatolar») ga mos keladi va quyidagi versiyalarga ta’sir qiladi:

  • Apache Pinot Broker: 0.12.0 dan 1.2.0 gacha
  • Apache Pinot Controller: 0.7.0 dan 1.2.0 gacha

Zaiflikdan foydalangan hujumchilar autentifikatsiyadan o’tgan foydalanuvchilar bilan bir xil huquqlarga ega bo’lishadi. Bu ularga ichki API-larga kirish, Zookeeper konfiguratsiyalariga kirish (/appConfigs endpointi orqali) va Groovy skriptlarini bajarish interfeyslariga kirish imkonini beradi. Xavfsizlik mutaxassislari bu zaiflikning masofadan turib kod bajarish (RCE) uchun to’g’ridan-to’g’ri yo’l ochishini tasdiqladilar.

Apache Pinot’ning arxitekturasi – petabayt miqyosidagi ma’lumotlar to’plami bo’yicha past kechikishli so’rovlar uchun mo’ljallangan – buzilgan instanslarni yuqori qiymatli nishonga aylantiradi. Hujumchilar quyidagi amallarni bajara olishadi:

  • Real vaqtda analitika kanallaridan sezuvchan shaxsiy ma’lumotlarni (PII/PHI) o’g’irlash
  • Moliyaviy hisobot metrikalarini soxta yozuvlar orqali manipulyatsiya qilish
  • Ishlab chiqarish muhitlarida IoT sensorlari analitikasini buzish
  • Kafka yoki Hadoop klasterlari kabi integratsiyalangan tizimlarga kirish

Trend Micro’ning Zero Day Initiative (ZDI) tashkiloti bu zaiflikni ZDI-CAN-24001 deb belgiladi va uni foydalanish uchun faqat asosiy HTTP manipulyatsiya ko’nikmalarini talab qilishini tasdiqladi.

Apache ushbu zaiflikni Pinot 1.3.0 versiyasida Java-ning URI.normalize() metodi va regex-ga asoslangan yo’l tekshiruvi orqali hal qildi. Administratorlar quyidagi choralarni ko’rishlari kerak:

  1. Versiyani yangilash: Pinot-ning eng so’nggi versiyasiga (1.3.0 yoki undan yuqori) o’tish.
  2. RBAC-ni joriy qilishpinot.controller.access.protocols=http+rbac orqali rolga asoslangan kirish nazoratini yoqish.
  3. Groovy skriptlarini o’chirishpinot.server.instance.enable.groovy=false orqali Groovy skriptlarini o’chirish.
  4. WAF qoidalarini qo’llash..%252e%252e yoki %00 ketma-ketliklarini o’z ichiga olgan URI-larni bloklovchi WAF qoidalarini joriy qilish.

Qo’shimcha tavsiyalar

  1. Forensik Audit: Tizimga kirish loglarini tekshirib, autentifikatsiyadan o’tmagan IP manzillaridan kelgan /.. so’rovlariga HTTP 200 javoblari kabi namunalarni aniqlang.
  2. Input Validation: Barcha kirish ma’lumotlarini qat’iy tekshirish va sanitizatsiya qilishni ta’minlash.
  3. Runtime Monitoring: Tizimni real vaqtda kuzatib borish va yangi xavfsizlik zaifliklarini aniqlash uchun monitoring vositalaridan foydalanish.
  4. Xavfsizlik Mashqlari: Muntazam ravishda xavfsizlik mashqlarini o’tkazish va xodimlarni xavfsizlik bo’yicha o’qitish.

Apache Pinot-dagi ushbu zaiflik yuqori performansli ma’lumotlar infratuzilmasida autentifikatsiya mantiqining so’rovlarni optimallashtirishdan ortda qolishi natijasida yuzaga kelgan. Bu hodisa Elasticsearch (CVE-2024-35253) va MongoDB Atlas (CVE-2024-48721) kabi boshqa distributiv tizimlarda ham uchraydigan xavfsizlik muammolarini eslatadi. IBM-ning 2025-yilgi Tahliklar Indeksiga ko’ra, ma’lumotlar buzilishlarining 78% autentifikatsiyani bypass qilish zaifliklari natijasida yuzaga keladi. Shuning uchun, distributiv arxitekturalarda kirish ma’lumotlarini tekshirish va sanitizatsiya qilishni ustuvor qilish juda muhimdir.

Ushbu zaiflikni bartaraf etish va kelajakda shunga o’xshash xavflardan himoyalanish uchun tizim administratorlari yuqorida keltirilgan tavsiyalarga amal qilishlari zarur. Xavfsizlikni doimiy ravishda yangilab borish va monitoring qilish orqali tizimlarni himoya qilish mumkin.