Turli OTlar kodlarining uzunligi




Download 3,33 Mb.
Pdf ko'rish
bet99/133
Sana20.05.2024
Hajmi3,33 Mb.
#244665
1   ...   95   96   97   98   99   100   101   102   ...   133
Bog'liq
Kiberxavfsizlik asoslari (21.04.2021)

Turli OTlar kodlarining uzunligi 
Tizim 
Dasturdagi kod uzunligi 
Netscape 
17 mln. 
Space Shuttle 
10 mln. 
Linuxkernel 2.6.0 
5 mln. 
Windows XP 
40 mln. 
Mac OS X 10.4 
86 mln. 
Boeing 777 
7 mln. 
Tahlillar natijasi har 10 000 ta qator kodda 5 ta bag mavjudligini 
ko‘rsatadi. Boshqacha aytganda, o‘rtacha 3kbayt .exe faylda 50 tacha 
bag bo‘ladi. 
Dasturiy vositalar injineriyasida dasturning o‘z vazifasini kafolatli 
bajarishiga harakat qilinsa, 
xavfsiz
dasturiy vositalar injineriyasida esa 
o‘z vazifasini xavfsiz bajarishi talab etiladi. Biroq, amalda butunlay 
xavfsiz dasturiy vositaning bo‘lishi mumkin emas. 
Dasturiy mahsulotlarda zaiflikka tegishli quyidagi tushunchalar 
mavjud. 
Nuqson. 
Dasturni amalga oshirishdagi va loyihalashdagi 
zaifliklarning barchasi nuqson hisoblanadi va uning dasturiy vositalarda 
mavjudligi yillar davomida bilinmasligi mumkin.
Bag. 
Baglar dasturiy ta’minotni amalga oshirish bosqichiga tegishli 
muammo bo‘lib, ularni osongina aniqlash mumkin. Misol sifatida 
dasturlashdagi 
buferning to‘lib-toshishi
(Buffer overflow) holatini 
keltirish mumkin. 
Xotiraning to‘lib-toshishi. 
Amalda ko‘p uchraydigan dasturlash 
tillaridagi kamchiliklar, odatda, taqiqlangan formatdagi yoki hajmdagi 
ma’lumotlarning kiritilishi natijasida kelib chiqadi. Bu turdagi tahdidlar 
ichida keng tarqalgani – xotiraning to‘lib-toshishi tahdidi. 
Masalan, foydalanuvchidan web-saytga ma’lumotlar kiritilishi 
talab etilsa (ismi, familiyasi, yili va h.), foydalanuvchi tomonidan 
kiritilgan “ism” maydonidagi ma’lumot serverdagi 
𝑁
ta belgi hajmiga 
ega sohaga yoziladi. Agar kiritilgan ma’lumot uzunligi 
𝑁
dan katta 
bo‘lsa, xotiraning to‘lib-toshishi hodisasi sodir bo‘ladi. 


184 
Agar buzg‘unchi tomonidan o‘ziga “kerakli” ma’lumot kiritilsa, bu 
o‘z navbatida kompyuterning buzilishiga olib keladi.
Quyida C dasturlash tilida yozilgan kod keltirilgan, agar bu kod 
kompilyasiya qilinsa, xotiraning to‘lib-toshishi hodisasi sodir bo‘ladi. 
int main() 

int buffer [10]; 
buffer [20] =37; 

Bu yerda mavjud muammo - 10 bayt o‘lchamli xotiraga 20 baytli 
ma’lumot yozilishi. Bu esa xotiraning ruxsat etilmagan manziliga ham 
murojaatga sabab bo‘ladi. 

Download 3,33 Mb.
1   ...   95   96   97   98   99   100   101   102   ...   133




Download 3,33 Mb.
Pdf ko'rish