Web Push bildirishlari orqali yashirincha hujum qilish: "Sleeping Agent" zaifligi

Web Push bildirishlari orqali yashirincha hujum qilish: "Sleeping Agent" zaifligi

May 18, 2026 web-security service-workers push-notifications vulnerability api-security web-platform browser-security exploitation

Yovuz Xavf: Ko‘zga Ko‘rinmaydigan Tahdid

Web Push bildirishnomalari bugungi web ilovalarda katta rol o‘ynaydi. Hamkorlik vositalarida va muhim signal tizimlarida ularni ko‘p ishlatishadi. Lekin bu mexanizm ba’zida xavfli hujumlar uchun yashirin yo‘l bo‘lib qolishi mumkin.

Sleeping Agent deb nomlangan zaiflik shunday bir muammo. Bu zaiflik brauzerlarning Web Push xavfsizligini tekshirishdagi vaqt oralig‘idan foydalanadi.

Zaiflik Qanday Ishlaydi

Web Push APIda userVisibleOnly: true degan talab bor. Bu brauzer va web ilova o‘rtasida “har bir push xabari foydalanuvchiga ko‘rinadigan bildirishnoma bilan keladi” degan kelishuvni bildiradi.

Lekin amalda bu talab to‘g‘ri ishlamaydi.

Hujum qiluvchi Service Worker push signalini olganda ikkita buyruqni ketma-ket bajaradi:

  • showNotification() — bildirishnomani ko‘rsatadi
  • notification.close() — uni darhol yopadi

Natijada bildirishnoma bir lahzali paydo bo‘lib, darhol yo‘qoladi. Brauzer faqat o‘zining ichki ma’lumotlar bazasini tekshiradi. U yerda yozuv borligi uchun talab bajarilgan deb hisoblaydi. Foydalanuvchi esa hech narsa ko‘rmaydi.

Nima Uchun Bu Muhim

Bu zaiflik Web Push API ning butun ishonch tizimini zaiflashtiradi:

Yashirin aloqa: Hujumchilar foydalanuvchi bilmagan holda uzoq muddatli aloqa yo‘lini yaratadilar. Buning uchun faqat zararli web sahifaga bir marta kirish kifoya.

Qoidalarni chetlab o‘tish: Ko‘p qoidalar bildirishnomani foydalanuvchiga sifatida ko‘rsatishni talab qiladi. Bu zaiflik o‘sha talabni buzadi.

Ko‘p brauzerda ta’siri: Chrome, Edge va hatto eski Safari versiyalarida ham bu zaiflik bor.

Oson amalga oshirish: Murakkab vositalar kerak emas. Oddiy brauzerda besh daqiqada ishlatilishi mumkin.

Texnik Tushuntirish

Zaiflik brauzer tekshiruvini Service Worker tugatgandan keyin bajarishi sababli paydo bo‘ladi. Ketma-ketlik quyidagicha:

  1. Push signali keladi
  2. Service Worker showNotification() va notification.close() ni ketma-ket bajaradi
  3. Service Worker tugaydi
  4. Brauzer ma’lumotlar bazasini tekshiradi
  5. Yozuv borligi uchun talab o‘tadi
  6. Push signal tasdiqlanadi

R<|eos|>

Read in other languages:

RU BG EL CS TR SV FI RO PT PL NB NL HU IT FR ES DE DA ZH-HANS EN