Jenkins Docker imijlarida xavfli zaiflik aniqlandi: Xakerlar tarmoq aloqasini egallab olish imkoniga ega bo‘ldi!

2025-yil 10-aprel kuni Jenkins jamoasi tomonidan xavfsizlik bo‘yicha e’lon qilingan yangi zaiflik minglab tashkilotlarning CI/CD (Continuous Integration / Continuous Deployment) jarayonlariga tahdid solmoqda.

Mazkur zaiflik Jenkins’ning keng qo‘llaniladigan Docker imijlarida SSH host kalitlarini boshqarishda aniqlangan bo‘lib, tajovuzkorlarga Jenkins boshqaruv serveri (controller) va qurilish agentlari (build agent) o‘rtasidagi tarmoq aloqasiga xakerlik qilish, ya’ni “man-in-the-middle” (MITM) hujumini amalga oshirish imkonini beradi.

Mazkur zaiflik CVE-2025-32754 va CVE-2025-32755 identifikatorlari ostida ro‘yxatdan o‘tgan bo‘lib, quyidagi Docker imijlariga ta’sir ko‘rsatadi:

1. CVE-2025-32754

Ushbu zaiflik Jenkinsning ssh-agent nomli Docker tasvirlariga (image) taalluqli bo‘lib, ayniqsa Debian operatsion tizimi asosida yaratilgan va 6.11.1 versiyasi hamda undan avvalgi versiyalarni qamrab oladi. Bu zaiflik orqali hujumchi Jenkins serveri (controller) va SSH agenti o‘rtasidagi tarmoqni ushlab qolib (man-in-the-middle hujumi), quyidagi xavfli harakatlarni amalga oshirishi mumkin:

  • Tarmoqdagi ma’lumotlarni egallab olish
  • Ruxsatsiz kirish
  • Maxfiy ma’lumotlarni o‘g‘irlash
  • Build jarayonlarini o‘zgartirib yuborish

Ushbu zaiflikning xavf darajasi juda yuqori deb baholangan va CVSS 3.1 reytingi — 9.1 ball (kritik daraja) bilan baholangan.

2. CVE-2025-32755

Ikkinchi zaiflik esa Jenkinsning ssh-slave nomli Docker tasvirlariga tegishli. Bu Docker tasvirlari ham Debian asosida ishlab chiqilgan va barcha versiyalarida mavjud. Ushbu zaiflik ham xuddi yuqoridagi kabi Jenkins serveri va SSH agent o‘rtasidagi tarmoq aloqasini egallab, hujumchini quyidagi xatti-harakatlarni amalga oshirish imkoniyati bilan ta’minlaydi:

  • Ma’lumotlarni ushlab qolish yoki o‘zgartirish
  • Maxfiy ma’lumotlarni o‘g‘irlash
  • Build jarayoniga zarar yetkazish yoki nazoratni qo‘lga olish

Bu zaiflik ham juda xavfli deb topilgan va CVSS 3.1 bahosi — 9.1 ball (kritik daraja) etib belgilangan.

Zaiflik sabab Debian asosida tayyorlangan Jenkins imijlarida SSH host kalitlari Docker imiji yaratish jarayonida generatsiya qilinadi. Natijada, bitta versiyadagi barcha konteynerlar bir xil SSH kalitlaridan foydalanadi.

Bu holat SSH texnologiyasining asosiy tamoyiliga zid — aslida har bir server yoki agent o‘ziga xos va noyob kalitga ega bo‘lishi kerak.

Hujumchi Jenkins boshqaruv serveri bilan agent o‘rtasidagi tarmoq aloqasini egallab olsa, u quyidagi xatti-harakatlarni amalga oshirishi mumkin:

  • Build jarayonlariga zarar yetkazish yoki ularni manipulyatsiya qilish;
  • Maxfiy ma’lumotlar va autentifikatsiya kalitlarini o‘g‘irlash;
  • Zararkunanda kodlarni build jarayoniga kiritish;
  • Ta’minot zanjiri (Supply Chain) hujumlarini amalga oshirish.

Jenkins/ssh-agent (Debian asosidagi):

  • 6.11.1 versiyasi va undan avvalgi barcha imijlar;
  • debian, stretch, bullseye, yoki bookworm bazasidagi imijlar.

Jenkins/ssh-slave (Eskirgan va endi yangilanmaydi):

  • latest, jdk11, latest-jdk11, revert-22-jdk11-JENKINS-52279.

Eslatma: Alpine, Windows yoki Nanoserver asosidagi imijlar ushbu zaiflikdan himoyalangan.

Jenkins jamoasi 6.11.2 versiyali yangi imijlarni chiqardi. Unda SSH host kalitlari imij yaratish vaqtida emas, balki konteyner birinchi ishga tushirilganda avtomatik tarzda generatsiya qilinadi.

Bu esa har bir konteynerga noyob SSH kalitlarni taqdim etadi va MITM hujumining oldini oladi.

Tavsiyalar:

  • Jenkins Docker imijlaridan foydalanayotgan barcha tashkilotlar darhol jenkins/ssh-agent imijlarini 6.11.2 yoki undan yuqori versiyaga yangilashi lozim.
  • Jenkins/ssh-slave imijlaridan foydalanayotganlar imkon qadar tezroq jenkins/ssh-agent imijlariga o‘tishi kerak — chunki eski imijlarga yangilanish chiqmaydi.
  • Docker imijingiz versiyasini tekshiring va yangilang.
  • SSH host kalitlarini tekshirib, noyobligiga ishonch hosil qiling.
  • Tarmoq xavfsizligini kuchaytiring.

Build va CI/CD jarayonlari xavfsizligi har qachongidan ham muhim. Jenkins Docker imijlaridagi ushbu zaiflik ko‘rsatib turibdiki, hatto eng mashhur va keng tarqalgan vositalarda ham katta xatoliklar uchrashi mumkin.

Zamonaviy xavfsizlikda eng kuchli himoya vositasi — bu doimiy ravishda tizimlarni yangilab borish va zaifliklarga tezkor munosabat bildirishdir.