DoS hujum
DoS (inglizcha: denial-of-service) – xujum qilinayotgan server (nishon) ni faoliyatini vaqtinchalik to’xtatib qo’yish. Bunda xujum qiluvchi nishondagi (target) mavjud xatoliklardan foydalanib unga maxsus noto’gri so’rovlar orqali murojat qilib buffer to’lishini (buffer overflow) ni yuzaga keltiradi. Yana bir usuli nishonga to’xtovsiz juda ko’p so’rovlar jo’natish (flood – so’rovlar bilan bombardimon qilish) orqali ham amalga oshirilishi mumkin. 1-usulda serverdagi script xatosidan foydalanib, unga qing’ir so’rov jo’natib sistemada kritik xatolik (ruxsat etilmagan xotira adresiga murojaat kabilar) yuzaga keltiriladi, server ishdan to’xtaydi. Ushbu usulda serverdagi xatolikni topish talab qilinadi. Misol uchun, serverda foydalanuvchini FIO sini so’rovchi va kiritilgan FIO asosida biror bir amal bajaruvchi dastur (script) ishlayapti deylik. Agar so’ralgan FIO ni o’rniga 100000 belgidan iborat belgilar ketma-ketligi jo’natilsa va dasturda uni uzunligi nazorati ko’zda tutilmagan bo’lsa xatolik yuzaga kelishi mumkin. Bu haqda to’liqroq tushunchaga ega bo’lish Buffer Overflow haqidagi maqolalarni o’qish tavsiya qilinadi. 2-usulda serverning biror ochiq portiga to’xtovsiz so’rovlar jo’natganda server ularni qayta ishlashga ulgurmaydi, ya’ni bir so’rovni qayta ishlayotgan paytda orqasidan yangi so’rov kelsa, yangi so’rov vaqtincha bufferga yozib turiladi. So’rovlar juda ko’p bo’lganda server boshqa klientlardan kelayotgan so’rovlarga javob qaytarolmay qoladi. So’rovlar qancha ko’p bo’lgani sari buffer ham kengayib xotirada katta resursni yeya boshlaydi, natijada serverning ishlashi juda sekinlashadi yoki umaman to’xtab qoladi. Agar serverni quvvati kichik bo’lsa unga kichik vaqt oralig’ida juda ko’p klientlar murojaat qilganda ham DoS yuzaga kelishi mumkin. Odatda xujum qiluvchi xujumni to’xtatishi bilan server yana o’z ishini davom ettirishi mumkin. Har ikkala xolatda ham serverni o’chirib yoqishga (perezagruzka) ham to’g’ri kelishi mumkin. Server (nishon)dan kelayotgan javobni qabul qilish jarayonida xujum qiluvchining o’zi “qotib” qolmasligi uchun xujum qiluvchi IP spoofingdan foydalanadi. Ya’ni jo’natayotgan so’rovlarini boshqa mavjud bo’lmagan IP adres nomidan jo’natishi mumkin (paketning IP zagolovkasidagi ma’lumotlarni o’zgartirish, raw socketlar bilan ishlash va IP, ARP spoofinglar haqida keyingi maqolalarda yozishga harakat qilaman).