• Butun son qiymatining oshib ketishi (Integer overflow).
  • Dasturiy ta’minot xavfsizligini ta’minlashda zaifliklar turlari tasniflab berish




    Download 3,07 Mb.
    bet3/4
    Sana05.06.2024
    Hajmi3,07 Mb.
    #260450
    1   2   3   4
    Bog'liq
    3-topshiriq KH

    SQL in’ektsiya. SQL in’ektsiya hujumlari veb saytlarning eng qadimgi, eng
    keng tarqalgan va eng xavfli zaifliklaridan biri hisoblanadi. SQL in’ektsiya – bu zararli
    SQL soʽrovlarini bajarishga imkon beradigan in’ektsiya hujumining bir turi
    hisoblanadi. Bu soʽrovlar veb ilovalar ma’lumotlar bazasini boshqaradi. Tajavuzkorlar
    dasturning xavfsizlik choralarini chetlab oʽtish uchun SQL in’ektsiyasi zaifliklaridan
    foydalanishi mumkin. Ular veb saytdan autentifikatsiya va avtorizatsiya qilish orqali
    SQL ma’lumotlar bazasining tarkibini aniqlashi mumkin. Ular, shuningdek
    ma’lumotlar bazasidagi ma’lumotlarni qoʽshishi, oʽzgartirishi va oʽchirishi uchun SQL
    in’ektsiya hujumidan foydalanishi mumkin. SQL in’ektsiyasi zaifligi MySQL, Oracle,
    SQL Server yoki boshqa kabi SQL ma’lumotlar bazasidan foydalanadigan har qanday
    veb saytga ta’sir koʽrsatishi mumkin. Jinoyatchilar undan tizimdagi maxfiy
    ma’lumotlar hisoblangan foydalanuvchilar haqida ma’lumotlar, shaxsiy ma’lumotlar,
    intellektual mulk va boshqa ma’lumotlarga ruxsatsiz kirish maqsadida foydalanishi
    mumkin.
    Butun son qiymatining oshib ketishi (Integer overflow). Asosan bu zaiflik
    butun sonli operatsiyaning natijasi ajratilgan xotira maydoniga toʽgʽri kelmasligi
    natijasida sodir boʽladi. Bu zaiflik dasturda xato oʽrniga, odatda kutilmagan natijalarni
    keltirib chiqaradi. Koʽpgina dasturlash tillarida butun sonlar odatda ma’lum
    miqdordagi bitlarga ajratiladi. Masalan, 32-bitli butun sonli ma’lumotlar turi uchun
    ajratilgan boʽsh joy faqat musbat butun sonlar uchun 0 dan 4 294 967 295 gacha yoki
    -2 147 483 648 dan 2 147 483 647 gacha belgili (musbat yoki manfiy) butun sonlarni
    saqlashi mumkin. Belgiga ega butun sonlar holatida, eng birinchi bit odatda butun
    son musbat yoki manfiy qiymatga ega ekanligini ifodalaydi. Biroq, siz 4 294 967 295 + 1
    hisoblashni amalga oshirganingizda va butun son uchun maksimal qiymatdan kattaroq
    natijani saqlashga harakat qilganingizda nima boʽladi? Bu butunlash dasturlash tili va
    kompilyatorga bogʽliq. Afsuski, aksariyat dasturlash tillari va kompilyatorlar hech
    qanday xatolik sodir etilmagandek yakuniy natijani 0 qiymatiga teng qilib
    hisoblashadi. Natijalar belgili butun sonlar uchun yanada kutilmagan boʽlishi mumkin.
    Belgiga ega butun sonning maksimal qiymatidan oshib ketilganida, natija odatda
    teskari belgili songa (masalan musbat boʽlsa manfiyga) aylanadi. Masalan,
    2 147 483 647 + 1 odatda -2 147 483 647 ga teng yoki -2 147 483 647 – 1 boʽlsa
    2 147 483 647 ga teng boʽladi. Bu esa dastur ishlashida juda katta noaniqliklarga olib
    keladi.

    Download 3,07 Mb.
    1   2   3   4




    Download 3,07 Mb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    Dasturiy ta’minot xavfsizligini ta’minlashda zaifliklar turlari tasniflab berish

    Download 3,07 Mb.