Apache Struts 2’dagi o‘ta xavfli zaiflik: millionlab ilovalar ma’lumotlar sizib chiqishi xavfi ostida

Kiberxavfsizlik sohasida navbatdagi jiddiy tahdid aniqlandi. Dunyoda keng qo‘llaniladigan Apache Struts 2 freymvorkida o‘ta xavfli zaiflik aniqlanib, u millionlab veb-ilovalar va serverlarni jiddiy xatar ostida qoldirmoqda. Ushbu kamchilik CVE-2025-68493 identifikatori ostida ro‘yxatga olingan bo‘lib, hujumchilarga maxfiy ma’lumotlarni qo‘lga kiritish yoki tizim ishini izdan chiqarish imkonini beradi.

Zaiflikning mohiyati nimada?

Mazkur zaiflik XML External Entity (XXE) injection turiga mansub bo‘lib, Apache Struts 2 tarkibidagi XWork komponenti bilan bog‘liq. Ushbu komponent XML konfiguratsiya fayllarini qayta ishlash uchun mas’ul bo‘lib, ma’lum sharoitlarda XML kiritmalarini yetarli darajada tekshirmaydi.

Natijada, zararli XML so‘rovlari orqali:

  • tashqi entitilar chaqirilishi,
  • server ichidagi fayllarga ruxsatsiz murojaat qilinishi,
  • yoki ichki tarmoq resurslariga so‘rov yuborilishi mumkin bo‘ladi.

Bu esa XXE hujumlari uchun qulay sharoit yaratadi.

Qaysi versiyalar xavf ostida?

Mutaxassislar aniqlashicha, zaiflik Struts 2’ning bir nechta asosiy versiyalariga ta’sir ko‘rsatadi:

  • Struts 2.0.0 – 2.3.37 (qo‘llab-quvvatlash muddati tugagan)
  • Struts 2.5.0 – 2.5.33 (qo‘llab-quvvatlash muddati tugagan)
  • Struts 6.0.0 – 6.1.0 (faol qo‘llab-quvvatlanayotgan)

Ayniqsa, hanuzgacha eskirgan (End-of-Life) versiyalardan foydalanayotgan tashkilotlar yuqori xavf guruhiga kiradi.

Hujum oqibatlari qanday bo‘lishi mumkin?

CVE-2025-68493 muvaffaqiyatli ekspluatatsiya qilinganda quyidagi jiddiy oqibatlarga olib kelishi mumkin:

  • Maxfiy ma’lumotlarning oshkor bo‘lishi
    Konfiguratsiya fayllari, ma’lumotlar bazasi parollari, API kalitlari va boshqa muhim sirlar qo‘lga tushishi mumkin.
  • SSRF hujumlari (Server-Side Request Forgery)
    Server ichki tarmog‘idagi boshqa xizmatlar va resurslar hujum ostiga olinadi.
  • Xizmat ko‘rsatishni rad etish (DoS)
    Maxsus tayyorlangan XML yuklamalar orqali ilova ishlashi izdan chiqarilishi mumkin.

Aynan shu sababli zaiflik “Important” (juda muhim) darajadagi xavf sifatida baholangan.

Zaiflik kim tomonidan aniqlangan?

Ushbu kamchilik ZAST.AI kompaniyasi xavfsizlik tadqiqotchilari tomonidan aniqlangan va mas’uliyatli tarzda Apache Struts jamoasiga xabar qilingan. Shundan so‘ng ishlab chiquvchilar tomonidan tezkor choralar ko‘rilgan.

Rasmiy yechim va tavsiyalar

Apache ushbu muammoni bartaraf etish uchun Struts 6.1.1 versiyasini taqdim etdi. Ushbu versiya:

  • zaiflikni to‘liq yopadi,
  • orqaga moslikni (backward compatibility) saqlab qoladi,
  • mavjud ilovalarni buzmasdan yangilash imkonini beradi.

Shu sababli, darhol yangilash eng to‘g‘ri va tavsiya etiladigan yechim hisoblanadi.

Vaqtinchalik himoya choralar

Agar tashkilot hozircha yangilash imkoniga ega bo‘lmasa, vaqtinchalik choralar ko‘rilishi mumkin:

  • Tashqi entitilarni o‘chirib qo‘ygan maxsus SAXParserFactory sozlash
    xwork.saxParserFactory parametrini xavfsiz parserga yo‘naltirish orqali.
  • JVM darajasida himoya
    Quyidagi tizim parametrlari orqali tashqi XML resurslarini global o‘chirish:
    • -Djavax.xml.accessExternalDTD=""
    • -Djavax.xml.accessExternalSchema=""
    • -Djavax.xml.accessExternalStylesheet=""

Bu choralar vaqtinchalik himoya bersa-da, yangilash o‘rnini bosa olmaydi.

Apache Struts 2’dagi CVE-2025-68493 zaifligi yana bir bor shuni ko‘rsatadiki, eskirgan texnologiyalar va kechiktirilgan yangilanishlar jiddiy kiberxavflarga olib keladi. XML kabi keng tarqalgan formatdagi kichik kamchilik ham butun tizim xavfsizligini izdan chiqarishi mumkin.

Tashkilotlar:

  • Struts 2’dan foydalanayotgan barcha tizimlarni inventarizatsiya qilishi,
  • imkon qadar tezroq 6.1.1 versiyasiga o‘tishi,
  • vaqtinchalik himoya choralarini nazorat ostida qo‘llashi

lozim.

Bugungi kunda kiberxavfsizlik — bu faqat muammo yuzaga kelganda emas, balki oldindan ko‘riladigan choralar orqali ta’minlanadigan jarayon ekanini unutmaslik kerak.