QO‘LLANMA · 11 DAQIQA O‘QISH
Buzishning barcha usullari va har birini qanday yopish
Zaifliklarning soha ro'yxati 2025 yil oxirida yangilandi, va undagi ikkita kategoriya yangi. Quyida agent yig'gan mahsulotda aynan nima buziladi, har bir sinf uchun prompt va buni tekshiradigan buyruqlar.
Avval «xavfsizlikni tekshir» degan bitta ibora nega ishlamasligi haqida. Bu predmetsiz iltimos: agent nimani tekshirishni o'zi tanlaydi, tanlagani bo'yicha hisobot beradi va vazifani yopadi. Sinflar bo'yicha tekshirish kerak, va sinflar ro'yxati mavjud.
Ro'yxat yangilandi
OWASP Top 10:2025 o'n uchta tashkilotdan 2,8 million ilovadan ko'proq ma'lumot asosida yig'ilgan. Sakkizta kategoriya shu ma'lumotlar bo'yicha, ikkitasi — amaliyotchilar so'rovi bo'yicha tanlangan: qo'lda allaqachon ko'rilayotgan, skanerlar esa hali ushlamayotgan narsalar.
Xavf bo'yicha tartib: A01 Kirish nazorati, A02 Konfiguratsiya xatolari, A03 Yetkazib berish zanjiri (YANGI), A04 Kriptografiya, A05 Inyeksiyalar, A06 Xavfli loyihalash, A07 Autentifikatsiya, A08 Kod va ma'lumot yaxlitligi, A09 Loglar va ogohlantirishlar, A10 Istisnolarni qayta ishlash (YANGI).
2021 yilga nisbatan nima o'zgardi. Konfiguratsiya xatolari beshinchi o'rindan ikkinchiga ko'tarildi. Zaif bog'liqliklar alohida band bo'lishdan to'xtab, butun yetkazib berish zanjiriga aylandi. SSRF boshqa kategoriyalar ichida eridi. Istisnolarni qayta ishlash paydo bo'ldi — nimadir noto'g'ri ketganda nima bo'lishi.
Kirish nazorati
Birinchi o'rin, va katta farq bilan. U yoki bu shakli sinovdan o'tgan ilovalarning 100 foizida topildi, tarqalganlikning maksimal ko'rsatkichi 20,15 foiz. Bu agent yig'gan mahsulotdagi eng ehtimolli teshik.
Mexanikasi hamma joyda bir xil. Agent avtorizatsiya qo'shdi, odam kirganini tekshirdi va vazifani yopilgan deb hisobladi. «Bu obyekt aynan shu odamniki mi» degan tekshiruv kodda yo'q.
/api/order/1043 manzili buyurtmani beradi, 1044 ni qo'ysang — begonasini beradi. Admin tugmasi interfeysda yashirilgan, ortidagi manzil esa hammaga ochiq. So'rov tanasidagi ortiqcha maydon o'z rolini administratorgacha ko'taradi. Bepul amallar limiti tugmada turibdi, ishlovchi uni sanamaydi.
Umumiy belgi: himoya interfeysda yashaydi. Ekranda chizilgan hamma narsa hujumchi uchun mavjud emas — u so'rovni to'g'ridan-to'g'ri yuboradi.
Agentga yubor: «Kirish nazoratini tekshir. HAR BIR ishlovchi uchun jadvalda yoz: kim chaqira oladi, kimning obyektiga tegadi, kodning qayerida tegishlilik tekshiruvi bor. Alohida tekshiruv faqat klientda bo'lgan joylarni top. Alohida, model qaysi maydonlari so'rov tanasidan oq ro'yxatsiz qabul qilinishini tekshir. Hech narsani tuzatma. Jadval va qator raqamlari bilan teshiklar ro'yxatini ber».
Oxirgi ikki qator majburiy. Ularsiz model yo'l-yo'lakay tuzata boshlaydi, va sen manzara o'rniga diff olasan.
Yetkazib berish zanjiri
Yangi kategoriya va eng kam baholangani. Amaliyotchilar so'rovida u birinchi o'rinni egalladi: yarmi uni yuqori qatorga qo'ydi. So'nggi bir yilda nega bunday bo'lganini tushunish uchun yetarlicha voqea bo'ldi.
2025 yil sentabr — npm'dagi birinchi haqiqiy o'z-o'zidan tarqaluvchi qurt. Skript o'rnatishdan keyin npm tokenlarini, bulut va SSH kalitlarini olardi, o'sha muallifning boshqa paketlarini topib, o'zini ularga joylashtirardi va yangi versiyalarni chop etardi. Odam ishtirokisiz.
2026 yil avgust — xuddi shu sxema, lekin nishon ishlab chiquvchi asboblarining konfiguratsiyalari bo'ldi: Claude, Cursor fayllari, model kalitlari. Foydali yuk to'rt yuzdan ortiq paketga tarqaldi. U Claude Code huklari orqali mustahkamlanardi.
2026 yil mart — axios'ning zararli versiyalari reyestrda uch soatcha yashadi va uchala tizim uchun troyan o'rnatardi. Kirish reyestrni buzish orqali emas, qo'llab-quvvatlovchi bilan yozishmalar orqali bo'ldi.
Agentlar bilan birga paydo bo'lgan alohida usul. Model mavjud bo'lmagan paketni ishonch bilan o'rnatishni maslahat beradi — generatsiya qilingan 2,23 million kod misolidan deyarli har beshinchisi o'ylab topilgan nomni o'z ichiga olgan. Keyin bu nomni begona odam ro'yxatdan o'tkazadi. Bitta tekshiruvda beshta model mustaqil ravishda 127 ta bir xil nom o'ylab topdi, va ulardan 53 tasi bo'sh edi. Shuning uchun agentdan kelgan o'rnatish buyrug'ini ko'z bilan o'qish kerak: bu paket kecha mavjud edimi.
Agentga yubor: «Loyiha bog'liqliklarini tahlil qil. package.json'dagi har biri uchun ayt: u nega bu yerda, muallifi kim, oxirgi relizi qachon, o'zining nechta bog'liqligi bor. Alohida oxirgi bir oyda qo'shilganlarini belgila. Alohida — o'z kodingning o'nta qatori bilan almashtirib olib tashlash mumkin bo'lganlarini. Hech narsani o'chirma, ro'yxat ber».
Sirlar
2025 yil davomida ommaviy GitHub'ga 28,65 million yangi kodga qotirilgan sir sizib chiqdi — bir yilda uchdan birga o'sish. Sirli commitlar ulushi alohida o'lchangan: butun ommaviy GitHub bo'yicha bu 1,5 foiz, sun'iy intellekt yordamchisi bilan qilingan commitlarda esa 3,2 foiz. Ikki barobar ko'p.
Sizib chiqqan kalit qancha yashashi ham o'lchangan. Tuzoq-kalit bilan o'tkazilgan tajribada birinchi begona foydalanish urinishi pushdan o'n bir daqiqa keyin keldi. Keyingi ikki soatda to'rtta mamlakatdan yana beshta urinish bo'ldi.
Commitni o'chirish yetarli emas, va GitHub'ning o'zi shunday tuzilgan. Commit o'chirilgandan, orqaga qaytarilgandan va majburiy pushdan keyin ham fork'lar tarmog'ida o'z heshi bo'yicha ochiq qoladi. Tartib odatdagiga teskari: avval kalitni bekor qilib almashtirasan, keyin tarixni tozalaysan.
Tekshirish: gitleaks detect --source . -v — joriy fayllar bo'yicha emas, butun tarix bo'yicha.
Kirishga ishonch
Inyeksiyalar uchinchi o'rindan beshinchiga tushdi, va bu ular kamaydi degani emas. Ularning turlari orasidagi tarqalish juda katta, va modellar bo'yicha o'lchov buni ko'rsatadi: SQL-inyeksiyalarga qarshi generatsiya qilingan kod holatlarning 80 foizida tekshiruvdan o'tadi, saytlararo skriptingga qarshi esa 13 foizida.
Sababi mexanik. SQL uchun xavfsiz variant har doim to'g'ri: tayyorlangan so'rov ma'lumot qayerdan kelganidan qat'i nazar to'g'ri. Razmetkaga chiqarish uchun esa to'g'rilik kontekstga bog'liq — satr aynan qayerga tushishiga — va bu bilimsiz model ishlaydigan birinchi variantni qo'yadi.
Foydalanuvchi matni chiqish joyiga moslab ekranlanmasdan razmetkaga tushadi. To'lov haqidagi xabar imzo tekshirilmasdan qabul qilinadi — to'lov so'rov bilan qalbakilashtiriladi. Foydalanuvchi havolasi bo'yicha faylni server yuklab oladi, havola esa sening tarmog'ing ichiga olib boradi. Avatar nom kengaytmasi bo'yicha tekshiriladi, ichida esa bajariladigan kod.
Agentga yubor: «Ma'lumot tashqaridan keladigan barcha joylarni top: formalar, manzil parametrlari, fayl yuklash, veb-huklar, begona servislar javoblari. Har biri uchun ayt: nima tekshiriladi, aynan qayerda, va kutilmagan qiymatda nima bo'ladi. Alohida veb-huklarni tekshir: imzo ma'lumot bazaga tushishidan oldin sverka qilinadimi. Ro'yxat ber, tuzatma».
Poygalar va limitlar
Ikkita so'rov bir vaqtda keladi, va kod ikki marta bajariladi: balans qayta sarflanadi, promokod bir necha marta faollashadi, bepul limit parallel chaqiruvlar bilan aylanib o'tiladi.
Eng ko'rinmas guruh, chunki oddiy ishda hammasi to'g'ri. Xato yuklama ostida yoki uni ataylab chaqirganda chiqadi.
Agentga yubor: «Amal roppa-rosa bir marta sodir bo'lishi muhim bo'lgan operatsiyalarni top: yechib olish, faollashtirish, hisoblash, balansni o'zgartirish. Har biri uchun ayt, ikkita bir vaqtdagi so'rovda nima bo'ladi va bu nima bilan yopilgan: unikal cheklov, bazadagi blokirovka yoki idempotentlik kaliti. Alohida chastota cheklovisiz manzillarni sanab o't».
O'lchovlar nima ko'rsatdi
Modellar vazifalarning taxminan 45 foizida xavfsiz bo'lmagan amalga oshirishni tanlaydi — 80 ta topshiriq, yuzdan ortiq model, prompt ataylab xavfsizlik haqida bironta so'zsiz. Ikki yilda raqam qimirlamadi: 2024 yilda 55 foiz o'tish va hozir ham shuncha, sintaktik to'g'rilik esa deyarli chegaragacha o'sgan holda.
Beshta turli asbob bilan yig'ilgan o'n beshta jangovar ilovaning qo'lda pentesti 69 ta ekspluatatsiya qilinadigan zaiflik berdi. U yerda yuz foizli nosozliklar sanoqlardan muhimroq: so'rovni qalbakilashtirishdan himoya va xavfsizlik sarlavhalari bironta ilovada ham yo'q edi.
Promptdagi xavfsizlik talabi tanlab yordam beradi. Mulohaza yurituvchi modellardagi o'lchov sezilarli o'sishni ko'rsatdi, oddiylarida sezilarli yaxshilanish topilmadi. Ya'ni «xavfsiz yoz» iborasi tekshiruv o'rnini bosmaydi.
Nima bilan tekshirish
Hammasiga yigirma daqiqacha: npm audit --omit=dev — bog'liqliklardagi ma'lum teshiklar; npx osv-scanner scan source -r . — xuddi shu, lekin OSV bazasi bo'yicha; gitleaks detect --source . -v — butun tarixdagi sirlar; npx nuclei -u https://sening-sayting — ma'lum CVE va ochiq panellar.
Ustiga na agent, na asbob kerak bo'lmaydigan to'rtta qo'l tekshiruvi. Mahsulotingni begona brauzerda kirmasdan och va manzillar bo'ylab yur. Manzildagi identifikatorni qo'shnisiga almashtir. Bitta so'rovni ketma-ket ikki marta yubor. Butun commit tarixi bo'ylab o'z kalitlaringni qidir.
Agar bazang Supabase kabi tayyor bekendda bo'lsa — tashqaridan ochiq har bir jadvalda qatorli himoya yoqilgan bo'lishi shart. Aynan uning yo'qligi vaybkod-platformalardan birida 9,3 bahosi bilan kritik zaiflik berdi: generatsiya qilingan sxemalar siyosatlarsiz kelardi, va har kim begona jadvallarni o'qib, o'zgartira olardi.
Avtomatika nimani topmaydi
Chegara halol va uni oldindan bilish kerak. Skanerlar ma'lum namunalarni topadi: eskirgan bog'liqlik, yo'q sarlavha, tanish inyeksiya shabloni. Mantiqni ular tushunmaydi.
Qonuniy amallar ketma-ketligi orqali biznes-qoidani aylanib o'tish, taxmin qilingan identifikator bo'yicha begona obyektga kirish, turli yo'llar bilan ikki marta qo'llangan promokod — bularning hammasi har qanday skanerdan yashil o'tadi.
Chiqarishdan oldingi chek-list
Har bir ishlovchida kimning obyektini berayotgani tekshirilgan. Model maydonlari oq ro'yxat bo'yicha qabul qilinadi, rol so'rov tanasidan o'qilmaydi. Qatorli himoya tashqaridan ochiq barcha jadvallarda yoqilgan.
Kalitlar muhit o'zgaruvchilarida yotadi, commit tarixi sirlar skaneri bilan yurgizilgan. Qachondir sizib chiqqan kalitlar bekor qilinib almashtirilgan — fayllardan o'chirish kam.
Bog'liqliklar ro'yxati ko'z bilan o'qilgan, yangi qo'shilganlari mavjudlikka tekshirilgan. Veb-huklar imzolari bazaga yozishdan oldin sverka qilinadi. Pul bilan bog'liq operatsiyalar qayta bajarilishdan himoyalangan.
Debag rejimi o'chirilgan, batafsil xatolar tashqariga chiqmaydi. Xavfsizlik sarlavhalari turibdi, so'rovni qalbakilashtirishdan himoya yoqilgan.