logo

DASTURIY MAHSULOTLAR XAVFSIZLIGI

Yuklangan vaqt:

08.08.2023

Ko'chirishlar soni:

0

Hajmi:

646.216796875 KB
DASTURIY MAHSULOTLAR XAVFSIZLIGI  
 
Reja:  
1. Dasturiy mahsulotlar xavfsizligi muammolari 
2. Dasturiy mahsulotlarda mavjud zaifliklar 
3. Zararkunanda dasturlarning tahlili 
4. Malwarebytes yordamida skanerlashni o rnatish va boshqarish ʻ
 
  Dasturiy mahsulotlar xavfsizligi muammolari 
Dasturiy   mahsulotlar   xavfsizligi   hozirgi   kunda   kelib,   kriptografiya,
ruxsatlarni   nazoratlash   va   xavfsizlik   protokollari   kabi   muhim   sanaladi.   Bunga
sabab, axborotlarning vertual xavfsizligi dasturi vositalar orqali amalga oshiriladi.
Bundan kelib chiqadiki, agar dasturiy vosita tahdidga uchragan taqdirda, xavfsizlik
mexanizmi ham barbod bo ladi. ʻ
Barcha   dasturiy   vositalarda   zaifliklar   mavjud   bo lib,   ularning   muhimlik	
ʻ
darajalari   turlichadir.   Masalan,   qiymati   165   mil.   $   ni   tashkil   etgan   NASA   Mars
Lander,   Mars   sayyorasi   yuzasiga   qo nish   vaqtida   halokatga   uchragan.   Bungan	
ʻ
sabab   esa,   oddiy   ingliz   va   metr   uzunlik   o lchovlari   orasidagi   farq   sanalgan.	
ʻ
Bundan   tashqari,   Denver   xalqaro   ayroportidagi   yuklarni   ushlash   tizimida
foydalanilgan   dasturiy   vositadagi   kamchilik   natijasida,   11   oy   davomida   kuniga   1
mil.$ dan zarar ko rilgan. 	
ʻ
Dasturiy   vositalarda   xavfsizlik   muammolarini   mavjudligi   bir   nechta   omillar
bilan belgilanadi: 
– dasturiy vositalarning ko plab dasturchilar tomonidan yozilishi 	
ʻ
(komplekslilik); 
– dasturiy mahsulotlar yaratilishida inson ishtiroki; – dasturchining malakasi 
yuqori emasligi; – dasturlash tillarining xavfsiz emasligi. 
Yaratiladigan dasturiy vositalar o zida millionlab kodlarni tashkil etib, quyida	
ʻ
bularga aniq misollar keltirilgan. 
3.7.1-jadval.   Tizim va kodlar uzunligi 
Tizim  Dasturdagi kodlar uzunligi 
Netscape  17 mil. 
Space  10 mil 
Linuxkernel 2.6.0  5 mil 
Windows XP  40 mil 
Mac OS X 10.4  86 mil 
Boeing 777  7 mil   Tahlillar natijasi shuni ko rsatadiki har 10 000 qator kodda, 5 ta bag mavjudʻ
bo lar ekan. Boshqacha qilib aytilganda o rtacha 3 kbayt .exe faylda 50 taga yaqin	
ʻ ʻ
bag bo ladi. 	
ʻ
Dasturiy vositalardagi mavjud tahdidlar odatda dasturlash tillari imkoniyatlari
bilan   belgilanadi.   Masalan,   nisbatan   quyi   dasturlash   tillari   dasturchidan   yuqori
malakani   talab   etgani   bois,   ularda   ko plab   xavfsizlik   muammolari   paydo   bo ladi.	
ʻ ʻ
Masalan,   C#,   Java   dasturlash   tillari   C   yoki   C++   dasturlash   tillariga   nisbatan
xavfsizdir. Sababi bu dasturlash tillarida ko plab muammolar  avtomatik ravishda,	
ʻ
kompilyasiya jarayonida aniqlanadi. 
Dasturiy mahsulotlarda mavjud zaifliklar  Odatda zararli dasturiy vositalar 
ikki turga bo lanadi: 	
ʻ – dasturlardagi zaifliklar (atayin qilinmagan); – 
zararkunanda dasturlar (atayin qilingan). 
Birinchi   turga   asosan,   dasturchi   tomonidan   yo l   qo yilgan   xatolik   natijasida	
ʻ ʻ
kelib   chiqqkan   zararli   dasturlar   misol   bo lsa,   ikkinchi   turga   buzg’unchilik	
ʻ
maqsadida yozilgan maxsus dasturiy mahsulotlar (viruslar) misol bo ladi. 	
ʻ
 Quyida hozirda dasturiy vositalarda dasturchilar tomonidan yo l qo yiladigan
ʻ ʻ
tahdid va kamchiliklar bilan tanishib chiqiladi. 
Xotiraning   to lib   toshishi   (Buffer   overflow).	
ʻ   Amalda   ko p   uchraydigan	ʻ
dasturlash   tillaridagi   kamchiliklar   odatda,   taqiqlangan   formatdagi   yoki   hajmdagi
ma‘lumotlar   kiritilishi   natijasida   kelib   chiqadi.   Bu   turdagi   tahdidlar   ichida   keng
tarqalgani bu – xotiraning to lib toshish tahdidi sanaladi. 	
ʻ
Masalan,   veb   saytda   foydalanuvchidan   ma‘lumotlar   kiritilishi   talab   etilsa
(ismi, familyasi, yili, va hak.), foydalanuvchi tomonidan kiritilgan 
―ism   maydonidagi   ma‘lumot   serverdagi   N   ta   belgi   hajmiga   ega   sohaga
yoziladi. Agar kiritilgan ma‘lumot uzunligi N dan katta bo lgan holda, xotiraning	
ʻ
to lib toshishi hodisasi yuzaga keladi. 	
ʻ
Agar   buzg’unchi   tomonidan   ―kerakli   ma‘lumot   kiritilsa,   bu   o z   navbatida	
ʻ
kompyuterni buzulishiga olib keladi.  Quyida   C   dasturlash   tilida   yozilgan   kod   keltirilgan   bo lib,   agar   bu   kodʻ
kompilyasiya qilinsa xotiraning to lib toshishi hodisasi kelib chiqadi. 	
ʻ
int main() { 
int buffer [10]; buffer [20] =37; 
} 
Sababi 10 bayt o lchamdagi xotiraning 20 baytiga ma‘lumot yozilmoqda. Bu	
ʻ
esa xotiraning ruxsat etilmagan manziliga murojaatni keltirib chiqaradi. 
Agar   dasturiy   mahsulot   autentifikatsiyani   ta‘minlash   maqsadida   yaratilgan
bo lib,   autentifikatsiya   natijasi   bir   bit   bilan   ifodalanadi.   Agar   xotiraning   to lib	
ʻ ʻ
toshishi natijasida ushbu bit buzg’unchi tomonidan muofaqiyatli o zgartirilsa Tridi	
ʻ
o zini   Alisa   deb   tanishtirish   imkoniyatiga   ega   bo ladi.   Bu   holat   quyidagi   3.7.1–	
ʻ ʻ
rasmda   keltirilgan.   Bu   erda   F   autentifikatsiyadan   muvafaqiyatli   o tilmaganligini	
ʻ
bildiradi.   Agar   Tridi   F   (0   ni)   maydon   qiymatini   T   (1   ga)   o zgartirsa,   dasturiy	
ʻ
ta‘minot   Tridini   Alisa   sifatida   taniydi   va   unga   resurslaridan   foydalanish
imkoniyatini yaratadi (3.7.2 – rasm). 
3.7.1-rasm Xotira va mantiqiy bayroq 
 
 3 .7.2 – rasm. Sodda xotirani to lib toshishi 	
ʻ
Xotirani   to lib   toshish   hodisasini   chiqurroq   o rganishdan   oldin   zamonaviy	
ʻ ʻ
kompyuterning   xotira   tuzilishi   bilan   tanishilib   chiqiladi.   Kompyuter   xotirasining
soddalashgan ko rinishi quyidagi 3.7.3 – rasmda keltirilgan. 
ʻ   3.7.3 – rasm. Xotiraning tuzilishi 
Bu   erda   text   madonida   kodlar   saqlanib,   data   sohasida   static   kattaliklar
saqlanadi.   Help   sohasi   dinamik   ma‘lumotlarga   tegishli   bo lib,  ʻ stack   ni   prosessor
uchun   «keraksiz   qog’oz»   vazifasini   o taydi.   Masalan,   dinamik   lokal	
ʻ
o zgaruvchilar,   funksiya   parametlari,   funksiyalarning   qaytrish   manzillari   kabi	
ʻ
ma‘lumotlar  stack  da saqlanadi.   Stack   pointer   yoki   SP   esa  stackni  eng yuqorisini
ko rsatadi. Rasmda stackni quyidan yuqoriga chiqishi holati bilan ifodalangan. 
ʻ
Stackni   avariyaga   uchratish .   Stackni   avariyaga   uchrash   hodisasi   asosan
xotirani   to lib   toshishi   natijasida   kelib   chiqadi.   Bu   turdagi   tahdidda   Tridi	
ʻ
funksiyalarni   chaqirilishi   davomida   stackni   tekshiradi.   Funksiyani   chaqirish
davomida stackdan foydalanish tartibi quyidagi kodda keltirilgan. 
void func(int a, int b) 
{ char buffer[10]; 
}  
void main() 
{ func(l,2); 
}  
Qachonki   func   funksiyasi   chaqirilganda   funksiyaning   parametrlari   stack   da
itarib chiqariladi (3.7.4 – rasm). 
   
3.7.4 – rasm. Stackga misol 
Bu erda stack funksiyani bajarilishi davomida  buffer  massivini yaratish uchun
foydalanilmoqda. Bundan tashqari stack funksiyani qaytaruvchi, funksiya bajarilib
bo linganidan keyin o tishi kerak bo lgan manzilini ham o zida saqlaydi. Rasmdaʻ ʻ ʻ ʻ
ko rsatilgani kabi 
ʻ buffer  qaytuvchi manzildan (ret) dan yuqorida joylashgan, ya‘ni,
qaytaruluvchi   manzildan   so ng  	
ʻ buffer   stackda   yuklanadi.   Natijada,   agar   xotirani
to lib   toshishi   yuzaga   kelsa,   u   holda   xotiraning  	
ʻ ret   sohasi   qaytadan   yoziladi.   Bu
tahdid natijasida olinishi mumkin bo lgan, real natija. 	
ʻ
Agar Tridi tomonidan xotira to ldirilsa va qaytaruvchi manzil tasodifiy bitlar 
ʻ
bilan to ldirilsa, u holda dastur mavjud bo lmagan manzilga sakraydi va tizim	
ʻ ʻ
avriyaga uchraydi (3.7.5 – rasm). 
 
  3.7.5 – rasm. Xotiraning to lib toshish muammosi 	
ʻ
Bu   holda  dastur   ishini   to xtatgandan   Tridi   xursand   bo lishi   aniq.  Agar   Tridi	
ʻ ʻ
yanada   aqlliroq   bo lsa   va   buferni   tasodifiy   bitlar   bilan   emas,   balki   muhim   xotira	
ʻ manzili   bilan   to ldirsa   va   bu   xotira   manziliga   biror   zararli   dastur   bo lsa,   u   holdaʻ ʻ
jiddiyroq muammo bo lishi aniq (3.7.6 – rasm). 	
ʻ
 
 
3.7.6 – rasm. Zararli kodni yuklash 
Bu   holda   Tridi   quyidagi   ikki   muammoga   duch   kelishi   mumkin.   Birinchisi,
Tridi   zararkunanda   dusturni   xotiraning   qaysi   manziliga   yozilganini   bilmaydi.
Ikkinchisi esa, stackda funksiyani qaytuvchi manzilini aniq bilmaydi. 
Quyidagi   ikki   sodda   xiyla   natijasida,   xotirani   to lib   toshish   jarayonini	
ʻ
tezlashtirish mumkin. Birinchisi bu, zararkunanda dastur kodini xotira bo shliqlari	
ʻ
bilan   (NOP)   to ldirish   bo lsa,   ikkinchisi   esa,   istalgan   takrorlanuvchi   qaytuvchi	
ʻ ʻ
manzilni qo yishdir (3.7.7 – rasm). 	
ʻ
  3.7.7 – rasm. Xotirani NOP bilan to ldirish 	
ʻ Bu tahdid odatda ko plab, dasturiy mahsulot uchun kerakli bo lgan ʻ ʻ
serial kalitlarni buzishda keng foydalaniladi. 
O rtadan   turib   o zgartirish	
ʻ ʻ .   C   dasturlash   tilida   strcpy(buffer,   input)
funksiyasi mavjud bo lib, u 	
ʻ input  ma‘lumotni  buffer  ga ko chirib yozishni bajaradi.	ʻ
Bu   holda   xotirani   to lib   toshishidan   saqlash   uchun,  	
ʻ input   ma‘lumotni   o lchamini	ʻ
tekshirish   talab   etiladi.   Bu   himoya   usuli   faqat   o lchamni   tekshirib,   ma‘lumot	
ʻ
tarkibini   tekshirmaydi.   Bu   holda   o rtadan	
ʻ   turib   o zgartirish  	ʻ tahdidi   bo lishi	ʻ
mumkin. 
Bunga quyidagicha misol keltirish mumkin. Masalan, foydalanuvchi 
Veb   sahifadan   turib   ma‘lumotlarni   kiritdi   va   u   quyidagi   so rov   shaklida	
ʻ
ifodalandi: 
http://www.things.com/orders/final&custID=l12&num=55A&qty=20&price=
10& shipping=5&total=205 
Server   tomonidan   bu   ma‘lumot   quyidagicha   tahlillanadi:   foydalanuvchining
ID raqami 112 ga teng foydalanuvchi har birining narxi 10 $ dan bo lgan 55 tartib
ʻ
raqamli mahsulotdan 20 ta sotib oldi va 5 $ etkazib berish narxi bilan jami 205 $
dollar to lovni amalga oshirgan. Bu so rov server tomonidan tekshirilganida hech	
ʻ ʻ
qanday xatolik topilmadi. 
Ammo Tridi bu qo rovni quyidagi so rov bilan almashtirsa,nima hodisa ro y	
ʻ ʻ ʻ
beradi ? 
http://www.things.com/orders/final&custID=112&num=55A&qty=20&price
=10& shipping=5&total=25 
Bu   so rov   ham   oldingisi   kabi   server   tomonidan   tekshirishdan   muofaqqiyatli	
ʻ
o tadi, ammo uning manosi tamomila boshqa !!! 	
ʻ
Tezkor murojat sharti tahdidi  ( Race condition yoki race hazard). Bu dasturiy
mahsulotning   yoki   elektron   tizimning   o zini   tutish   holati   bo lib,   chiqish   qiymati	
ʻ ʻ
boshqarib bo lmas boshqa hodisalar ketma-ketligi yoki vaqtiga bog’liq bo ladi. 	
ʻ ʻ
Dasturlashda   bu   holda   xatolik   yuzaga   kelib,   ikkita   signal   birinchi   chiqish
uchun harakat qiladi. Bu hodisa asosan, dasturlashda parallel hisoblashda (thread)
yuzaga keladi.  Quyida   ikkita   oqim   tomonidan   o z   qiymatini   birga   oshirish   uchun   bajarganʻ
tezkor   murojati   keltirilgan.   Agar   tizim   to g’ri   ishlaganda   quyidagi   natija   olinishi	
ʻ
shart edi. 
3.7.8– rasm. Tiqilinch holati.  
Ammo, tezkor murojaat natijasida quyidagi holat kelib chiqdi: 
3.7.9– rasm. Tiqilinch holatdan chiqish holati.  
Bu   tahdid   mavjud   dasturiy   mahsulotlarda   time-of-check-to-time-of-use
(TOCTTOU) zaifligi mavjud bo ladi. 	
ʻ
Odatda bu tahdidlarni oldini olishda dasturlash tillarida global o zgaruvchini	
ʻ
qulflab qo yish usullaridan foydalaniladi. 	
ʻ
SQL   ineksiya   (SQL   injection).   SQL   ineksiya   tahdidi   ma‘lumotlar   bazasiga
tegishli   bo lgan   tahdid   bo lib,   SQL   so rovlarga   taqiqlangan   belgilarni   kiritish   va
ʻ ʻ ʻ
buning natijasida ma‘lumotlar bazasida boshqa natija olishga qaratilgan. Bu tahdid
turi   eng   ko p   uchraydigan   tahdid   turi   bo lib,   uning   hajmi   yildan   –   yilga   ortib
ʻ ʻ
bormoqda. 
Bu tahdid asosan taqiqlangan belgilarni tekshirmaslik natijasida kelib chiqadi. 
Quyida ushbu zaiflikni o z ichiga olgan SQL so rovi keltirilgan: 	
ʻ ʻ statement = " SELECT  *  FROM  users  WHERE  name = '" + userName + "';"
Bu so rovga asosan aynan kerakli foydalanuvchi nomi ma‘lumotlar bazasidanʻ
qidirilmoqda. Agar bu so rov buzg’unchi tomonidan user Name o rniga ' OR '1'='1 	
ʻ ʻ
kiritilsa, quyidigi so rov hosil bo ladi: 	
ʻ ʻ
SELECT  *  FROM  users  WHERE  name = ''  OR  '1'='1'; 
Natijada   ma‘lumotlar   bazasidan   barcha   foydalanuvchilar   to g’risidagi	
ʻ
ma‘lumotlar   chiqariladi.   Bu   erda   quyidagi   taqiqlangan   belgilar   birikmasidan   ham
foydalanish mumkin. 
' OR '1'='1' -- 
' OR '1'='1' ({ ' OR '1'='1' /* 
  Bu tahdidlarni oldini olishda kiruvchi so rov maxsus belgilarga tekshirilishi	
ʻ
kerak. Ammo, bu so rovlarni kundan-kunga yangi turlari kelib chiqmoqda. 	
ʻ
 
Zararkunanda dasturlarning tahlili 
Dasturiy vositalar bilan uchrab turadigan tahdidlarning ikkinchisi bu – atayin
yozilgan   zararli   dasturiy   vositalardir.   Bunday   dasturiy   vositalar   malakali
dasturchilar tomonidan yozilgan bo lib, ular aniq maqsadga qaratilgan bo ladi. Bu	
ʻ ʻ
toifadagi dasturlarni aniqlashda va tahlillashda odatda statik va dinamik tahlillash
usullaridan keng foydalaniladi. 
Har bir tahlillash o z navbatida sodda va murakkab tahlillashlarga bo linadi. 	
ʻ ʻ
Sodda statik tahlillash.   Zararkunanda dasturiy vositalarnining   sodda statistik
tahlili deyilganda ular haqida dastlabki ma‘lumotlarni olishdan iborat bo lgan tahlil	
ʻ
tushuniladi.   Bu   tahlil   natijasida   zararkunanda   dasturlarning   (ZD)   kodlarning
tuzulishi,   dasturiy   tomondan   tuzulishi,   qaysi   biblotekalardan   foydalanganligi   va
h.k. 
lar haqida ma‘lumot olish mumkin. 
ZDlarni   dastlabki   tahlil   qilishda   antivirus   vositalari   keng   foydalaniladi.
Odatda   ikki   turdagi,   fayl   signaturasiga   asoslangan   (masalan,   Kasperskiy)   va
evristikaga   asoslangan   (masalan,   ESET   NOD32)antivirus   vositalaridan   keng
foydalaniladi.   Signaturaga   asoslangan   antivirus   dasturlar   ZD   larni   o zining	
ʻ bazasida mavjud yoki mavjud emasligini tekshiradi. Bu esa ZD topishda har doim
ham katta foyda bermaydi. Evristikaga asoslangan antivirus vositalari signaturaga
asoslangan antiviruslarga qaraganda ancha keng imkoniyatga ega bo lib, ZD larniʻ
topishda keng foydalaniladi. 
Amalda   ZD   statistik   tahlil   o tkazishda   ular   bir   nechta   antivirus   vositalari	
ʻ
yordamida   tekshiriladi   va   ulardan   olingan   natijalar   tahlil   etiladi.   Ushbu   vazifani
bajarishda   http://www.virustotal.com/   onlayn   ZD   tahlili   vositasi   keng
foydalaniladi.   Ushbu   onlayn   tahlillash   vositasi   nafaqat   ZD   bir   nechta   antivirus
vositalari yordamida testlaydi, balki ularning dasturiy tomondan tuzulishini va ular
haqida qo shimcha ma‘lumotlarni beradi. 	
ʻ
ZD   statistik   tahlil   qiliShda   quyidagi   usullardan   foydalaniladi:   XESH   qiymat
asosida   tahlillash.   Xesh   funksiyalash   ZD   aniqlash   uchun   kerakli   bo ladigan	
ʻ
dastlabki   tahlillash   usullaridan   biri   bo lib,   unga   asosan   ixtiyoriy   xesh   qiymatni	
ʻ
hisoblab   beruvchi   algoritmlar   asosida   (masalan,   MD5,   SHA1)ZD   xesh   qiymati
hisoblanadi.  Ushbu olingan xesh qiymat asosida quyidagilarni aniqlash mumkin: 
- Xesh   qiymatni   dasturning   (masalan,   tahlillanuvchi   ZD)   yorliqi   sifatida
foydalanish; 
- Olingan xesh qiymatni boshqa ZD tahlillovchi dasturlar uchun yuborish; 
- Olingan   xesh   qiymatni   onlayn   tarzda   qidiriSh   va   ZD   ro yxatida   mavjud/	
ʻ
mavjud emasligini aniqlash. 
ZD   lardan   “qatorlarni   (strings)”   aniqlash.   Har   bir   dasturiy   vosita
yaratilishida   ma‘lum   ketma-ketmaliklan   iborat   bo lgan   matn   shaklidagi	
ʻ
ma‘lumotlardan   foydalaniladi.   Masalan,   ―GDI32.DLL,   ―99.124.22.1,   ―Mail
system   DLL   is   invalid.!Send   Mail   failed   to   send   message   va   hak.   Albatta,
yaratilgan dasturiy vositalar yakunida ular .exe, .dll fayl shakllarida assemblanadi.
Boshqa   so z   bilan   aytganda,   bu   kengaytmadagi   fayllar   o n   oltilik   (hex)sanoq	
ʻ ʻ
sistemasida   ifodalanadi   (0x42,   0x41,   0x44BAD).Belgilarni   16   lik   sanoq   tizimiga
o tkazishda   odatda   ASCII   (8-bit)va   Unicode   (16-bit)kodlash   standartlaridan	
ʻ
foydalaniladi. Ushbu standartlarda har bir kelgan belgilar ketma-ketligi oxiri 0x00
bilan tugaydi. Buning manosi esa so zning tuguganligini anglatadi. 	
ʻ Siqilgan ZD.  Odatda ZD vositalar statistik tahlillarga bardoshli bo lishi uchunʻ
ular siqiladi.  Quyida haqiqiy va siqilgan holatdagi fayl ko rinishi keltirilgan. 	
ʻ
  3.7 .10-rasm. Siqilgan va haqiqiy fayl ko rinishi 	
ʻ
Portable   Executable   (PE)fayl   formati.   Ushbu   fayl   formati   tarkibiga
yuklanuvchi,   kutubxona   fayl   kengaytmalari   kiradi
(masalan, .cpl, .exe, .dll, .ocx, .sys, .scr, .drv, .efi, .fon) va ular Windows OT uchun
foydalaniladi. ZD larda kutubhona fayllaridan asosan  import  (import)qilish orqali
asosiy   dasturga   bog’lanadi.   Ushbu   bog’lanish   uch   turda   amalga   oshirilishi
mumkin: statik, dinamik va yuklanganda. 
Statik   turdagi   bog’lanishlarga   ko ra   kutubxona   fayllari   to liq   ko chirilib	
ʻ ʻ ʻ
asosiy dastur ichiga tashlanadi. Bu turdagi bog’lanishlar asosan UNIXva LinuxOT
da keng foydalaniladi. Bunda asosiy dastur kodi va kutubxonaga tegishli kodlarni
ajratish qiyin bo ladi. 	
ʻ
Yuklanganda   talab   etiladigan   bog’lanishlar   asosan   ZD   yaratishga   keng
foydalanilib,   unga   asosan   faqat   funksiya   chaqirilgan   paytda   bog’lanish   amalga
oshiriladi. 
Ko plab Windows OTlari boshqa dasturlarga o z resurslaridan foydalanishga	
ʻ ʻ
ruxsat   beradi.   PE   fayllar   o zida   har   bir   kutubxona   va   kutubxonadagi   funksiyalar	
ʻ
haqidagi ma‘lumotni saqlaydi. 
Ko plab   mavjud   DLL   (Dynamic-link   library)   fayllar   o zida   ko plab	
ʻ ʻ ʻ
funksiyalarni saqlaydi. Quyida WINDOWS OT ga tegishli DLL fayllar va ularning
vazifasi keltirilgan:  
3.7.2-jadval.   DLL fayllar va ularning vazifalari 
DLL   Tavsifi   Kernel32.dll  Ushbu   DLL   fayl   keng   tarqalgan   bo lib   asosan   o zak   funksiyalardanʻ ʻ
tashkil   topgan,   masalan,   xotirani,   fayllarni   va   qurilmani   boshqarish   va
unga egalik qilish 
( http://www.geoffchappell.com/studies/windows / win32/kernel32/api/ )  
Advapi32.dll  Ushbu   DLL   fayl   WINDOWS   OT   ning   kengaytirilgan   imkoniyatlarini
boshqarishda,   masalan,   xizmatlarni   va   registorlarni   boshqarishda
foydalaniladi 
(http://www.geoffchappell.com/studies/windows/win32/advapi32/api/etw
/index.htm?tx=14). 
User32.dll  Ushbu DLL fayl foydalanuvchi interfeysini tashkil etuvchilarni, masalan,
tugmalar,   skrol   barslar,   foydalanuvchi   harakatlariga   javob   beruvchi
vazifalarni bajaruvchi funksiyalardan iborat. 
Gdi32.dll  Ushbu   DLL   fayl   grafik   holatni   namoyish   etish   va   boshqarish   uchun
kerakli bo lgan funksiyalardan iborat. 	
ʻ
Ntdll.dll  Ushbu   DLL   fayl   WINDOWS   OT   o zagining   foydalanuvchi   rejimidagi	
ʻ
ko rinishini   ifodalovchi   funksiyalardan   iborat.   Ushbu   vazifalarni   odatda	
ʻ
Kernel32.dll   va   Advapi32.dll   kutubxonasini   chaqirish   orqali   bajaradi,
masalan, jarayonlarni boshqarish, vazifalarni yashirish va hak. 
WSock32.dll 
va Ws2_32.dll Ushbu   DLL   fayllar   tarmoqqa   tegishli   bo lib,   tarmoqqa   tegishli   bo lgan	
ʻ ʻ
vazifalarni bajararidigan funksiyalardan iborat. 
Wininet.dll  Ushbu   DLL   fayl   tarmoqning   yuqori   vazifalarini   bajaruvchi
funksiyalardan   iborat   bo lib,   tarmoq   protokollari,   FTP,   HTTP,   va   NTP	
ʻ
larni nazoratlaydi. 
PE fayl sarlavhasi va bo limlari.	
ʻ   PE fayllari sarlavhasi ularni import qilganda
qaraganda   ko proq   ma‘lumotlarni   o zida   saqlaydi.   PE   fayllar   bir   nechta	
ʻ ʻ
bo limlardar   iborat   bo lib,   bu   bo limlar   va   ularda   saqlanadigan   ma‘lumotlar	
ʻ ʻ ʻ
quyidagilar: 
3. 7.3–jadval.   PE fayllar 
.text  Ushbu bo lim CPU da yuklanuvchi kodlardan iborat. 	
ʻ .rdata  Dasturda   mavjud   global   e‘lon   qilingan   faqat   o qish   huquqiga   egaʻ
ma‘lumotlardan tashkil topgan. 
.data  Dastur orqali boshqariladigan global ma‘lumotlarni saqlaydi. 
.idata  Ba‘zida   mavjud   bo ladi   va   o zida   import   qilinadigan   funksiya	
ʻ ʻ
ma‘lmotlarini saqlaydi. Ushbu bo lim mavjud bo lmasa, ushbu holda	
ʻ ʻ
ma‘lumotlar .rdata bo limida saqlanadi. 	
ʻ
.edata  Ba‘zida   mavjud   bo ladi   va   o zida   eksport   qilinadigan   funksiya
ʻ ʻ
ma‘lmotlarini saqlaydi. Ushbu bo lim mavjud bo lmasa, ushbu holda	
ʻ ʻ
ma‘lumotlar .rdata bo limida saqlanadi. 	
ʻ
.pdata  64-bitli   tizimlarda   mavjud   bo ladi   va   xatoliklarni   tuzatiSh	
ʻ
ma‘lumotlarini saqlaydi. 
.rsrc  Funksiyalarni bajarishda kerakli bo lgan resurslarni o zida saqlaydi. 
ʻ ʻ
.reloc  Kutubxona   fayllarini   qayta   joylashtirish   uchun   kerakli   bo lgan	
ʻ
ma‘lumotlarni saqlaydi. 
PE   sarlavhasi   ZD   tahlil   qilishda   kerak   bo ladigan   ko plab   muhim	
ʻ ʻ
ma‘lumotlarga ega. Ular quyidagi jadvalga keltirilgan: 
3.7.3–jadval
Imports  ZD foydalanilgan kutubxona fayllari 
Exports  Kutubxona   ichidagi   boshqa   kutubxona/   dastur   orqali
chaqirilgan funksiyalar 
Time Date Stamp Dastur kompilyasiya qilingan vaqti 
Sections  Fayldagi bo lim nomi, uning xotiradagi va diskdagi o lchami 	
ʻ ʻ
Subsystem  Dasturni buyruqlar satri shaklida yoki foydalanuvchi interfeysi
shaklida ishlashini ko rsatadi 	
ʻ
Resources  Faylda   mavjud   ikonkalar,   menyular,   qatorlar   va   boshqa
malumotlar. 
Murakkab   statik   tahlil.   Sodda   statik   va   dinamik   tahlillash   usullari
foydalanishda   qulay   sanalsada,   zararkunandan   dasturlar   haqida   to liq   ma‘lumot	
ʻ
olishga   imkon   bermaydi.   Shuning   uchun   amalda   bu   usullarning   kengaytirilgan shakli   keng   foydalaniladi.   Murakkab   statik   tahlilning   mohiyati   teskari   injinerlik
xossasidan   foydalangan   holda,   ZD   ni   disassembrlash   amali   orqali   tahlil   qilishga
asoslangan.   Labaratoriya   ishining   nazariy   qismida   x86   arxitekturasi   va   unda
dizassembrlash amali bilan tanishilib chiqiladi. 
ZD yaratishda yuqorida dasturlash tilidan foydalaniladi va mashina kodini 
hosil   qilishda   kompilyatorlardan   foydalaniladi.   Dizassembrlashda   mashina
kodidan   assembler   kod   hosil   qilinadi   va   uni   tahlillash   orqali   ZD   haqida   xulosa
chiqariladi.  Quyida ushbu jarayonda keltirilgan: 
 
3.7.11-rasm.Malware dasturi ishlash prinspi modeli. 
Yuqoridagi   3.7.11   -   rasmda   keltirilgan   soddalashtirilgan   model   quyida
keltirilgan olti turli darajalardan iborat: 
Qurilma   (Hardware).   Qurilma   darajasi   fizik   sath   bo lib,   elektrikʻ
sxemalardan iborat va bu qurilmalarda mantiqiy amallar, XOR, AND, OR va NOT
bajariladi.   Sababi,   fizik   jixoz   yoki   qurilmani   dasturiy   tomondan   boshqarish   juda
qiyin. 
Mikrokodlar (Microcode).  Mikrokodlar sathi proshivka (firmware) sathi deb
ham   ataladi.   Mikrokodlar   ma‘lum   aniqlangan   jixozlargi   mo ljallangan   bo ladi.	
ʻ ʻ
Ularning   asosiy   vazifasi   yuqori   mashina   tilida   yozilgan   kodlarni   qurilmaga
moslashtirib berish. 
Mashina   kodi   (Machine   code).   Mashina   kodi   o n   oltilik   sanoq   tizimida	
ʻ
yozilgan   raqamlardan   iborat   bo lib,   protsessorni   nima   ish   bajarishini   belgilaydi.	
ʻ
Mashina   kodi   yuqori   dasturlash   tilida   yozilgan   kodlarni   kompilyasiya   qilish
jarayonida hosil qilinadi.  Quyi   darajali   dasturlash   tillari   (Low-level   languages).   Quyi   darajali
dasturlash tillari inson o qiy oladigan kompyuter arxitekturasi ketma-ketligi holatiʻ
bo lib,   keng   tarqalgan   quyi   darajali   dasturlash   tili   bu   –   assembler   tilidir.   ZDlarni	
ʻ
mashina   kodi   orqali   tahlil   etish   inson   uchun   murakkab   sanalginligi   sababli,
assembler tilida yozilgan kodlarni tahlil etish orqali ZD haqidama‘lumotlar olinadi.
Yuqori   darajali   dasturlash   tillari   (High-level   languages).   Ko plab	
ʻ
dasturchilar   yuqori  darajali  dasturlash   tillaridan  foydalangan  holda  o z  ilovalarini	
ʻ
yaratadilar.   Yuqori   darajali   dasturlash   tillari   mashina   tilidan   uzoq   bo lib,   inson	
ʻ
tushinishi  uchun  ancha osondir. Yuqori  dasturlash tillariga C,C++  va boshqalarni
olish mumkin. Bu dasturlash tilida yozilgan kodlar kompilyatorlar orqali mashina
kodiga aylantiriladi. 
Izohlash tillari (Interpreted languages).   Izohlash tillari eng yuqori darajali
tillar   hisoblanadi.   Ko plab   dasturchilar   aynan   shu   tillardan,   C#,   Perl,   .Net   va	
ʻ
Javafoydalanadilar.   Bu   tillardan   yozilgan   kodlar   mashina   tiliga   kompilyasiya
etilmaydi,   balki   baytkodlarda   o tkaziladi.   Baytkodlar   dasturiy   kodlarni   oraliq	
ʻ
ifodalanishi bo lib, interpritatorlar orqali mashina kodiga aylantiriladi. 	
ʻ
ZD doimiy xotirada mashina tilining binar shaklida saqlanadi. 
ZD dizassembrlanganda, binar holatdagi ZD kodini chiqishda assembler tiliga
o tkazish amalga oshiriladi. 	
ʻ
Assembler   tili   bir   nechta   tillar   to plami   bo lib,   har   bir   til   aynan   bir	
ʻ ʻ
mikroprotsessor   (x86,   x64,   SPARC,   PowerPC,   MIPS,   va   ARM)   uchun
mo ljallangan bo ladi. 	
ʻ ʻ
Hozirda   keng   tarqalgan   shaxsiy   kompyuterlardagi   arxitektura   bu   x86   bo lib,	
ʻ
keyinchalik   yaratilgan   AMD64   yoki   Intel   64   arxitekturalari   ham   x86   ni   qo llab
ʻ
quvvatlaydi.   Shuning   uchun   aksariyat,   yaratuvchilar   x86   arxitekturasiga
asoslangan ZD dasturlarni yaratadilar. 
  x86   arxitekturasi.   Amalda   foydalanilayotgan   ko plab   arxitekturalar   (Shu	
ʻ
jumladan x86 ham) Jon Fon Neyman arxitekturasidan kelib chiqqan (3.7 .12 -rasm). 3.7.12-rasm. Jon Fon Neyman arxitekturasi 
Yuqoridagi   rasmda   keltirilganidek,   CPU   bir   nechta   tashkil   etuvchilardan
iborat.   Boshqaruv   birlashmasi   (Control   Unit)   registorlardan   foydalangan   holda
RAM   dan   ko rsatmalarni   oladi.   Registorlarda   bajarilishi   kerak   bo lganʻ ʻ
ko rsatmalar   manzili   saqlanadi.   Registorlan   CPUning   asosiy   ma‘lumot   saqlovchi	
ʻ
qismi bo lib, vaqti tejash uchun CPU ning RAM ga murojaat etishini kamaytiradi. 	
ʻ
Arifmetik mantiqiy birlashma (Arithmetic logic unit, ALU) RAM dan olingan
ko rsatmalarni registorlarga yoki xotiraga joylashtirishda foydalaniladi. 	
ʻ
Asosiy   xotira.   Asosiy   xotira   (main   memory,   RAM)   bitta   dastur   doirasida
quyidagi to rt bo limga bo linadi: 	
ʻ ʻ ʻ
3.7.13-rasm. Asosiy xotira 
Ma lumot   (Data).	
‟   Asosiy   xotiraning   bu   bo limida   dastur   dastlabki	ʻ
yuklanishida   talab   etilayotgan   kattaliklar   saqlanadi.   Bu   kattaliklar   ko p   hollarda	
ʻ
statik   kattaliklar   deb   atalishi   yoki   dasturning   ixtiyoriy   qismidan   chaqiriluvchi
global kattaliklar deb atalishi ham mumkin. 
Kod   (Code).   Kod   CPU   tomonidan   dastur   vazifasini   bajarish   uchun   kerakli
bo lgan ko rsatmalarni o z ichiga oladi. Kod dastur bajarilishini va dastur vazifasi	
ʻ ʻ ʻ
tashkil etilishini boshqaradi.  Uyum   (Heap).   Uyum   dastur   bajarilishi   davomida   dinamik   xotira   vazifasida,
yangi   qiymatni   hosil   qilishda,   joylashtirishda,   kerak   bo lmagan   qiymatlarniʻ
o chirib tashlashda foydalaniladi. 	
ʻ
Stek   (Stack).   Steklar   funksiyalardagi   lokal   o zgaruvchilar   va   parametrlar	
ʻ
uchun foydalaniladi va dastur oqimini boshqarishda yordam beradi. 
Yuqoridagi rasmda keltirilgan rasmdagi bo limlar tartibi xususiy bo lib, xotira	
ʻ ʻ
bo ylab turli hollarda joylishishi mumkin. 	
ʻ
 
Hujumlarni aniqlash tizimlari  
Tashkilotlarda himoyalash bilan bog’liq bo lgan muammolarni  echish uchun	
ʻ
aksariyat   hollarda   qisman   yondashishlardan   foydalanishadi.   Bu   yondashishlar,
odatda, avvalo foydalana oluvchi resurslarning joriy darajasi orqali aniqlanadi. 
Undan tashqari, xavfsizlik ma‘murlari ko pincha o zlariga tushunarli bo lgan	
ʻ ʻ ʻ
xavfsizlik   xavf-xatarlariga   reaksiya   ko rsatishadi.   Aslida   xavf-xatarlar   juda   ko p	
ʻ ʻ
bo lishi   mumkin.   Korporativ   axborot   tizimini   faqat   qat‘iy   joriy   nazorati   va	
ʻ
xavfsizlikning   umumiy   siyosatini   ta‘minlovchi   kompleks   yondashish   xavfsizlik
xavf-xatarlarini anchagina kamaytirishi mumkin. 
Oxirgi   vaqtda   turli   kompaniyalar   tomonidan   qator   yondashishlar   ishlab
chiqildiki,   bu   yondashishlar   nafaqat   mavjud   zaifliklarni   aniqlashga,   balki
o zgargan   eski   yoki   paydo   bo lgan   yangi   zaifliklarni   aniqlashga   va   ularga   mos
ʻ ʻ
himoyalash   vositalarini   qarshi   qo yishga   imkon   beradi.   Xususan,   ISS(Internet	
ʻ
Security Systems) kompaniyasi tomonidan xavfsizlikni adaptiv boshqarish modeli
ANS (Adaptive Network Security) ishlab chiqildi. 
Xavfsizlikka   adaptiv   yondashish,   to g’ri   loyihalangan   va   yaxshi	
ʻ
boshqariluvchi jarayon va vositalar yordamida xavfsizlik xavf-xatarlarini real vaqt
rejimida nazoratlash, aniqlash va ularga reaksiya ko rsatishga imkon beradi. 	
ʻ
Tarmoqning   adaptiv   xavfsizligi   quyidagi   asosiy   uchta   element   orqali
ta‘minlanadi: 
– xavf-xatarlarni   baxolash;   –   himoyalanishni   tahlillash;   –   hujumlarni
aniqlash.  Xavf-xatarlarni   baholash.   Xavf-xatarlarni   (keltiradigan   zararning   jiddiylik
darajasi bo yicha), tarmoq qism tizimlarini (jiddiylik darajasi bo yicha), taxdidlarniʻ ʻ
(ularning amalga oshirilishi extimolligi bo yicha) aniqlash va rutbalashdan iborat.	
ʻ
Tarmoq   konfiguratsiyasi   muttasil   o zgarishi   sababli,   xavf-xatarlarni   baholash	
ʻ
jarayoni   ham   uzluksiz   o tkazilishi   lozim.   Korporativ   axborot   tizimining	
ʻ
himoyalash tizimini qurish xavf-xatarlarni baxolashdan boshlanishi lozim. 
Himoyalanishni   tahlillash   -   tarmoqning   zaif   joylarini   qidirish.   Tarmoq
ulanishlardan,   uzellardan,   xostlardan,   ishchi   stansiyalardan,   ilovalardan   va
ma‘lumot   bazalaridan   tarkib   topgan.   Bularning   barchasi   himoyalanishlar
samaradorligining   hamda   no malum   zaifliklarining   aniqlanishiga   muxtoj.	
ʻ
Himoyalanishni tahlillash texnologiyasi tarmoqni adqiqlash, nozik joylarini topish,
bu   ma‘lumotlarni   umumlashtirish   va   ular   bo yicha   hisobot   berish   imkoniyatiga	
ʻ
ega. Agar bu texnologiyani amalga oshiruvchi tizim adaptiv komponentga xam ega
bo lsa,   aniqlangan   zaifliklarni   avtomatik   tarzda   bartaraf   etish   mumkin.	
ʻ
Himoyalanishni tahlillash texnologiyasi tarmoq xavfsizligi siyosatini, uni tashkilot
tashqarisidan   yoki   ichkarisidan   buzishga   urinishlardan   oldin,   amalga   oshirishga
imkon beruvchi ta‘sirchan usul hisoblanadi. 
Himoyalanishni   tahlillash   texnologiyasi   tomonidan   identifikatsiyalanuvchi
muammolarning ba‘zilari quyidagilar: 
– tizimlardagi  "teshiklar"  (back  door)  va troyan oti  xilidagi  dastur;  – kuchsiz
parollar; 
– himoyalanmagan   tizimdan   suqilib   kirishga   va   "xizmat   qilishdan   voz
kechish" xilidagi hujumlarga ta‘sirchanlik; 
– operatsion tizimlardagi zaruriy yangilanishlarning yo qligi; 	
ʻ
– tarmoqlararo   ekranlarning,   Web-serverlarning   va   ma‘lumotlar   bazasining
noto gri sozlanishi va h. 	
ʻ
Hujumlarni   aniqlash   -  korporativ tarmoqdagi  shubhali  harakatlarni  baxolash
jarayoni.   Hujumlarni   aniqlash   operatsion   tizim   va   ilovalarni   qaydlash   jurnallarini
yoki real vaqtdagi trafikni tahlillash orqali amalga oshiriladi. Tarmoq uzellari yoki segmentlarida joylashtirilgan hujumlarni  aniqlash komponentlari  turli  xodisalarni,
xususan, ma‘lum zaifliklardan foydalanuvchi harakatlarni xam baxolaydi. 
Tarmoq   axborotini   tahlillash   usullari.   Mohiyati   bo yicha,   hujumlarniʻ
aniqlash jarayoni korporativ tarmoqda bo layotgan shubhali harakatlarni baholash	
ʻ
jarayonidir.   Boshqacha   aytganda   hujumlarni   aniqlash-hisoblash   yoki   tarmoq
resurslariga   yo naltirilgan   shubhali   harakatlarni   identifikatsiyalash   va   ularga	
ʻ
reaksiya ko rsatish jarayoni. 	
ʻ Hozirda hujumlarni aniqlash tizimida quyidagi usullar
ishlatiladi: 
– statistik usul; 
– ekspert tizimlari; – neyron tarmoqlari. 
Statistik   usul.   Statistik   yondashishning   asosiy   afzalligi   —   allaqachon   ishlab
chiqilgan   va   o zini   tanitgan   matematik   statistika   apparatini   ishlatish   va   sub‘ekt	
ʻ
harakteriga   moslash.   Avval   tahlillanuvchi   tizimning   barcha   sub‘ektlari   uchun
profillar   aniqlanadi.   Ishlatiladigan   profillarning   etalondan   har   qanday   chetlanishi
ruxsat   etilmagan   foydalanish   hisoblanadi.   Statistik   usullar   universal   hisoblanadi,
chunki mumkin bo lgan hujumlarni va ular foydalanadigan zaifliklarni bilish talab	
ʻ
etilmaydi.   Ammo   bu   usullardan   foydalanishda   bir   qancha   muammolar   paydo
bo ladi: 	
ʻ
1. Statistik   tizimlar   xodisalar   kelishi   tartibiga   sezuvchanmaslar;   ba‘zi
hollarda bir xodisaning o zi, kelishi tartibiga ko ra anomal yoki normal faoliyatni	
ʻ ʻ
xarakterlashi mumkin. 
2. Anomal   faoliyatni   adekvat   identifikatsiyalash   maqsadida   hujumlarni
aniqlash   tizimi   tomonidan   kuzatiluvchi   xarakteristikalar   uchun   chegaraviy
(bo sag’aviy) qiymatlarni berish juda qiyin. 	
ʻ
3. Statistik   usullar   vaqt   o tishi   bilan   buzg’unchilar   tomonidan   shunday	
ʻ
"o rnatilishi" mumkinki, hujum harakatlari normal kabi qabul qilinadi. 	
ʻ
Ekspert   tizimlari .   Ekspert   tizimi   odam-ekspert   bilimlarini   qamrab   oluvchi
qoidalar   to plamidan   tashkil   topgan.   Ekspert   tizimidan   foydalanish   hujumlarni	
ʻ
aniqlashning   keng   tarqalgan   usuli   bo lib,   hujumlar   xususidagi   axborot   qoidalar	
ʻ
ko rinishida   ifodalanadi.   Bu   qoidalar   harakatlar   ketma-ketligi   yoki   signaturalar	
ʻ ko rinishida yoziliShi mumkin. Bu qoidalarning har birining bajarilishida ruxsatsizʻ
faoliyat mavjudligi xususida qaror qabul qilinadi. Bunday yondashishning muhim
afzalligi — yolg’on trevoganing umuman bo lmasligi. 	
ʻ
Ekspert tizimining ma‘lumotlari bazasida hozirda ma‘lum bo lgan aksariyat	
ʻ
hujumlar ssenariyasi bo lishi lozim. Ekspert tizimlari, dolzarblikni saqlash	
ʻ
maqsadida, ma‘lumotlar bazasini muttasil yangilashni talab etadi. Garchi ekspert
tizimlari qaydlash jurnallaridagi ma‘lumotlarni ko zdan kechirishga yaxshi	
ʻ
imkoniyatni tavsiya qilsada, so ralgan yangilanish e‘tiborsiz qoldirilishi yoki	
ʻ
ma‘mur tomonidan qo lda amalga oshirilishi mumkin. Bu eng kamida, ekspert	
ʻ
tizimi imkoniyatlarining bo shashiga olib keladi. 	
ʻ
Ekspert   tizimlarining   kamchiliklari   ichida   eng   asosiysi   -   noma‘lum
hujumlarni   akslantira   olmasligi.   Bunda   oldindan   ma‘lum   hujumning   xatto   ozgina
o zgarishi hujumlarni aniqlash tizimining ishlashiga jiddiy to siq bo lishi mumkin. 	
ʻ ʻ ʻ
Neyron tarmoqlari . Hujumlarni aniqlash usullarining aksariyati qoidalar yoki
statistik   yondashish   asosida   nazoratlanuvchi   muhitni   tahlillash   shakllaridan
foydalanadi. Nazoratlanuvchi muxit sifatida qaydlash jurnallari yoki tarmoq trafigi
ko riliShi   mumkin.   Bunday   tahlillash   ma‘mur   yoki   hujumlarni   yaniqlash   tizimi
ʻ
tomonidan yaratilgan, oldindan aniqlangan qoidalar to plamiga tayanadi. 	
ʻ
Hujumni   vaqt   bo yicha   yoki   bir   necha   niyati   buzuq   odamlar   o rtasida   xar	
ʻ ʻ
qanday   bo linishi   ekspert   tizimlar   yordamida   aniqlashga   qiyinchilik   tugdiradi.	
ʻ
Hujumlar   va   ular   usullarining   turli-tumanligi   tufayli,   ekspert   tizimlari
qoidalarining   ma‘lumotlar   bazasining   xatto   doimiy   yangilanishi   xam   hujumlar
diapazonini aniq identifikatsiyalashni kafolatlamaydi. 
Neyron   tarmoqlaridan   foydalanish   ekspert   tizimlarining   yuqorida   keltirilgan
muammolarni   bartaraf   etishning   bir   usuli   hisoblanadi.   Ekspert   tizimlari
foydalanuvchiga   ko rilayotgan   xarakteristikalar   qoidalar   ma‘lumotlari	
ʻ
bazasidagiga   mos   kelishi   yoki   mos   kelmasligi   xususida   aniq   javob   beraolsa,
neyrotarmoq   axborotni   tahlillaydi   va   ma‘lumotlarni   aniqlashga   o rgangan	
ʻ
xarakteristikalariga   mos   kelishini   baxolash   imkoniyatini   taqdim   etadi. Neyrotarmoqli   ifodalashning   moslik   darajasi   100%ga   etishi   mumkin,   ammo
tanlash xaqiqiyligi tamoman qo yilgan masala misollarini tahlillash sifatiga bogliq.ʻ
Avval   predmet   soxasining   oldindan   tanlab   olingan   misolida   neyrotarmoqni
to gri   identifikatsiyalashga   "o rgatishadi".   Neyrotarmoq   reaksiyasi   tahlillanadi,	
ʻ ʻ
qoniqarli   natijalarga   erishish   maqsadida   tizim   sozlanadi.   Neyrotarmoq   xam   vaqt
o tishi   bilan,   predmet   soxasi   bilan   bogliq   ma‘lumotlarni   tahlillashni   o tkazishiga
ʻ ʻ
qarab "tajriba orttiradi". 
Neyrotarmoqlarning   suiiste‘mol   qilinishni   aniqlashdagi   muxim   afzalligi,
ularning   atayin   qilinadigan   hujumlar   xarakteristikalarini   "o rganish"   va   tarmoqda	
ʻ
oldin kuzatilganiga o xshamagan elementlarni identifikatsiyalash qobiliyatidir. 	
ʻ
Yuqorida   tavsiflangan   hujumlarni   aniqlash   usullarining   har   biri   afzalliklarga
va   kamchiliklarga   ega.   Shu   sababli,   xozirda   tavsiflangan   usullarning   faqat
bittasidan   foydalanuvchi   tizimni   uchratish   qiyin.   Odatda,   bu   usullar   birgalikda
ishlatiladi. 
Hujumlarni   aniqlash   tizimlarining   turkumlanishi.   Hujumlarni   aniqlash
tizimlari   IDS   (Intrusion   Detection   System)da   ishlatiluvchi   hujumlarni   aniqlovchi
mexanizmlar   bir   necha   umumiy   usullarga   asoslangan.   Ta‘kidlash   lozimki,   bu
usullar   bir-birini   inkor   etmaydi.   Aksariyat   tizimlarda   bir   necha   usullarning
kombinatsiyasidan foydalaniladi. 
Hujumlarni   aniqlash   tizimlari   quyidagi   alomatlari   bo yicha   turkumlanishi	
ʻ
mumkin: 
– reaksiya ko rsatish usuli bo yicha; 	
ʻ ʻ
– hujumlarni fosh etish usuli bo yicha; 	
ʻ
– hujum xususidagi axborotni yigish usuli bo yicha. 	
ʻ
Reaksiya ko rsatish usuli bo yicha passiv va aktiv IDSlar farqlanadi. Passiv 	
ʻ ʻ
IDS   lar   hujum   faktlarini   qaydlaydi,   ma‘lumotlarni   jurnal   fayliga   yozadi   va
ogoxlantirishlar   beradi.   Aktiv   IDSlar,   masalan,   tarmoqlararo   ekranni   qayta
konfiguratsiyalash   yoki   marshrutizatordan   foydalanish   ro yxatini   generatsiyalash	
ʻ
bilan hujumga qarshi harakat qilishga urinadi.  Hujumlarni   fosh   etish   usuli   bo yicha   IDSlarni   quyidagi   ikkita   kategoriyagaʻ
ajratish qabul qilingan: 
– anomal hatti-harakatni aniqlash (anomaly-based); 
– suiste‘molliklarni aniqlash (misuse detection yoki signature- based). 
Anomal hatti-harakatni aniqlash yo li bilan hujumlarni aniqlash texnologiyasi	
ʻ
quyidagi   gipotezaga   asoslangan.   Foydalanuvchining   anomal   hatti-harakati   (ya‘ni
hujumi   yoki   qandaydir   g’arazli   harakati)   —   normal   hatti-harakatdan   chetlashish.
Anomal hatti-harakatga misol  tariqasida qisqa vaqt oralig’ida ulanishlarning katta
sonini, markaziy protsessorning yuqori yuklanishini va h. ko rsatish mumkin. 	
ʻ
Agar foydalanuvchining normal hatti-harakati profilini bir ma‘noda tavsiflash
mumkin bo lganida, har qanday undan chetlanishlarni anomal hatti-harakat sifatida	
ʻ
identifkatsiyalash  mumkin bo lar edi. Ammo, anomal hatti-harakat har doim ham	
ʻ
hujum bo lavermaydi. Masalan, tarmoq ma‘muri tomonidan yuborilgan ko p sonli	
ʻ ʻ
so rovlarni hujumlarni aniqlash tizimi "xizmat ko rsatishdan voz kechish" xilidagi	
ʻ ʻ
hujum sifatida identifikatsiyalashi mumkin. 
Ushbu texnologiya asosidagi tizimdan foydalanilganda ikkita keskin holat yuz
berishi mumkin: 
– hujum   bo lmagan   anomal   hatti-arakatni   aniqlash   va   uni   hujumlar   –   sinfiga	
ʻ
kiritish; 
– anomal   hatti-harakat   ta‘rifiga   mos   kelmaydigan   hujumlarni   o tkazib	
ʻ
yuborish.  Bu holat hujum bo lmagan anomal hatti harakatni hujumlar sinfiga 	
ʻ
kiritishga nisbatan xavfliroq hisoblanadi. 
Bu   kategoriya   tizimlarini   sozlashda   va   ekspluatatsiyasida   ma‘mur   quyidagi
qiyinchiliklarga duch keladi: 
– foydalanuvchi   profilini   qurish   sermehnat   masala   bo lib,   ma‘murdan   katta	
ʻ
dastlabki ishlarni talab etadi. 
– yuqorida   keltirilgan   ikkita   keskin   harakatlardan   birining   paydo   bo lishi	
ʻ
ehtimolligini   pasaytirish   uchun   foydalanuvchi   hatti-harakatining   chegaraviy
qiymatlarini aniqlash zarur.  Anomal   xatti-harakatlarni   aniqlash   texnologiyasi   hujumlarning   yangi   xilini
aniqlashga   mo ljallangan.   Uning   kamchiligi   -   doimo   "o rganish"   zaruriyati.ʻ ʻ
Suiste‘molliklarni   aniqlash   yo li   bilan   hujumlarni   aniqlash   texnologiyasining	
ʻ
mohiyati   hujumlarni   signatura   ko rinishida   tavsiflash   va   ushbu   signaturani	
ʻ
nazoratlanuvchi   makonda   (tarmoq   trafigida   yoki   qaydlash   jurnalida)   qidirishdan
iborat.   Hujum   signaturasi   sifatida   anomal   faoliyatni   xarakterlovchi   harakatlar
shabloni   yoki   simvollar   satri   ishlatilishi   mumkin.   Bu   signaturalar   virusga   qarshi
tizimlarda   ishlatiluvchi   ma‘lumotlar   bazasiga   o xshash   ma‘lumotlar   bazasida	
ʻ
saqlanadi.   Ta‘kidlash   lozimki,   virusga   qarshi   rezident   monitorlar   hujumlarni
aniqlash   tizimlarining   xususiy   holi   hisoblanadi.   Ammo   bu   yo nalishlar   boshidan	
ʻ
parallel   rivojlanganlari   sababli,   ularni   ajratish   qabul   qilingan.   Ushbu   xil   tizimlar
barcha   ma‘lum   hujumlarni   aniqlasada,   yangi,   hali   ma‘lum   bo lmagan   hujumlarni
ʻ
aniqlay olmaydi. 
Bu tizimlarni ekspluatatsiyasida ham ma‘murlarga muammolarni duch keladi.
Birinchi   muammo   -   signaturalarni   tavsiflash   mexanizmlarini,   ya‘ni   hujumlarni
tavsiflovchi   tillarni   yaratish.   Ikkinchi   muammo,   birinchi   muammo   bilan   bogliq
bo lib,   hujumlarni   shunday   tavsiflash   lozimki,   uning   barcha   modifikatsiyalarini	
ʻ
qaydlash imkoni tug’ilsin. 
Hujum xususidagi axborotni yig’ish usuli bo yicha turkumlash eng ommaviy	
ʻ
hisoblanadi: 
– tarmoq sathida hujumlarni aniqlash (network-based); 
– xost sathida hujumlarni aniqlash (host-based); 
– ilova sathida hujumlarni aniqlash (application-based). 
Tarmoq   sathida   hujumlarni   aniqlash   tizimida   tarmoqdagi   trafikni   eshitish
orqali niyati buzuq odamlarning mumkin bo lgan harakatlari aniqlanadi. Hujumni	
ʻ
qidirish   "xostdan-xostgacha"   prinsipi   bo yicha   amalga   oshiriladi.   Ushbu   xilga	
ʻ
taalluqli   tizimlar,   odatda   hujumlar   signaturasidan   va   "bir   zumda"   tahlillashdan
foydalanib,   tarmoq   trafigini   tahlillaydi.   "Bir   zumda"   tahlillash   usuliga   binoan
tarmoq   trafigi   real   yoki   unga   yaqinroq   vaqtda   monitoringlanadi   va   mos   aniqlash algoritmlaridan   foydalaniladi.   Ko pincha   ruxsatsiz   foydalanish   faoliyatiniʻ
xarakterlovchi trafikdagi ma‘lum satrlarni qidirish mexanizmlaridan foydalaniladi. 
Xost   sathida   hujumlarni   aniqlash   tizimi   ma‘lum   xostda   niyati   buzuq
odamlarni   monitoringlash,   detektirlash   va   harakatlariga   reaksiya   ko rsatishga	
ʻ
atalgan.   Tizim   himoyalangan   xostda   joylashib,   unga   qarshi   yo naltirilgan
ʻ
harakatlarni   tekshiradi   va   oshkor   qiladi.   Bu   tizimlar   operatsion   tizim   yoki
ilovalarning   qaydlash   jurnallarini   tahlillaydi.   Qaydlash   jurnallarini   tahlillash
usulini amalga oshirish oson bo lsada, u quyidagi kamchiliklarga ega: 	
ʻ
– jurnalda   qayd   etiluvchi   ma‘lumotlar   xajmining   kattaligi   nazoratlanuvchi
tizim ishlashi tezligiga salbiy ta‘sir ko rsatadi; 	
ʻ
– qaydlash   jurnalini   tahlillashni   mutaxassislar   yordamisiz   amalga   oshirib
bo lmaydi; 	
ʻ
– xozirgacha jurnallarni saqlashning unifikatsiyalangan formati mavjud emas;
– qaydlash jurnallaridagi yozuvni tahlillash real vaqtda amalga oshirilmaydi. 
IDSning uchinchi xili ma‘lum ilovadagi muammolarni qidirishga asoslangan. 
 
Malwarebytes yordamida skanerlashni o rnatish va boshqarish 	
ʻ
Malwarebytes Free - bu Windows, macOS yoki Android uchun eng mashhur
va   eng   ko p   ishlatiladigan   zararli   dasturlarga   qarshi   dastur   va   yaxshi   sabablarga	
ʻ
ko ra.   U   boshqa   dasturiy   ta'minot   o tkazib   yuborishga   moyil   bo lgan   ko plab	
ʻ ʻ ʻ ʻ
zararli dasturlarni yo q qilishga qodir, bu sizga hech qanday xarajat talab qilmaydi.	
ʻ
Yuqtirilgan qurilmani tozalash haqida gap ketganda, Malwarebytes har doim bepul
bo lgan va biz uni zararli dasturlarga qarshi kurashda muhim vosita sifatida tavsiya	
ʻ
etamiz. 
Agar   kompyuteringizda   yoki   telefoningizda   zararli   dastur   yuqtirgan   bo lsa,	
ʻ
uni   skanerlashingiz   va   uni   Malwarebytes   yordamida   bepul   olib   tashlashingiz
mumkin.   Reklama   dasturini   olib   tashlash,   brauzerni   o g’irlab   ketish   va   boshqa	
ʻ
zararli dasturlarni kompyuteringizda tekshirish uchun siz Malwarebytes yordamida
skanerlashni o rnatishingiz va ishga tushirishingiz mumkin. 	
ʻ Agar sizning kompyuteringiz Windows 10, Windows 8 yoki Windows 7 dan
foydalanayotgan   bo lsa,   biz   uni   zararli   dasturlarni   troyan   dasturlari,   brauzerniʻ
o g’irlab   ketuvchilar,   reklama   dasturlari   va   boshqa   turdagi   dasturlarni   tekshirish	
ʻ
uchun   Malwarebytes   Free   dasturidan   foydalanishimiz   mumkin.   Buning   uchun,
quyidagi amallarni bajarishimiz kerak:. 
1-qadam.   Qidiruv   tizimiga   kirib   download   Malwarebytes   Fee   deb   yozamiz
va uni yuklab olishimiz kerak; 
2-qadam.  Malwarebytes-ni o rnatish faylini ikki marta bosing 	
ʻ
Malwarebytes-ni   yuklab   olishni   tugatgandan   so ng,   kompyuteringizga	
ʻ
Malwarebytes-ni   o rnatish   uchun   MBSetup   faylini   ikki   marta   bosing.   Ko pgina	
ʻ ʻ
hollarda, yuklab olingan fayllar Yuklashlar papkasida saqlanadi. 
 
3.7.14-rasm.   MBSetup faylini yuklash oynasi 
Sizga Malwarebytes-ga qurilmangizga o zgartirish kiritishga ruxsat berishni 	
ʻ
xohlaysizmi, foydalanuvchi hisobini boshqarish pop-upi taqdim etilishi mumkin. 
Agar shunday bo ladigan bo lsa, Malwarebytes-ni o rnatishda davom etish uchun 	
ʻ ʻ ʻ
"Ha" tugmasini bosishingiz kerak;  3.7.15-rasm. MBSetup faylini yuklashni yakunlash.  
3-qadam.   Malwarebytes-ni   o rnatish   uchun   ekrandagi   ko rsatmalarga   amalʻ ʻ
qiling. 
Malwarebytes-ni   o rnatish   boshlanganda   siz   Malwarebytes-ni   o rnatish	
ʻ ʻ
ustasini   ko rasiz,   u   sizni   o rnatish   jarayonida   boshqaradi.   Malwarebytes	
ʻ ʻ
o rnatuvchisi avval ushbu dasturni qaysi turdagi kompyuterda o rnatayotganingizni	
ʻ ʻ
so raydi, Shaxsiy kompyuter yoki Ish kompyuterini bosing 
ʻ
3.7.16-rasm. Shaxsiy kompyuterni tanlash.  
Keyingi   ekranda   kompyuteringizga   zararli   dasturlarni   o rnatish   uchun	
ʻ
" Install " tugmasini bosing.
3.7.17-rasm. O rnatish oynasi.	
‟  
Malwarebytes-ni   o rnatishingiz   bilan   dastur   Malwarebytes-ga   xush   kelibsiz	
ʻ
ekranida ochiladi. "  Get started  " tugmasini bosing. 
4-qadam .  Use Malwarebytes free  tugmasini tanlang 
Malwarebytes-ni   o rnatgandan   so ng,   sizdan   Bepul   va   Premium   versiyasini
ʻ ʻ
tanlash   talab   qilinadi.   Malwarebytes   Premium   nashri   real   vaqtda   skanerlash   va to lov dasturini himoya qilish kabi profilaktika vositalarini o z ichiga oladi, ammoʻ ʻ
biz kompyuterni tozalash uchun Bepul versiyasidan foydalanamiz. 
"  Use Malwarebytes Free  " tugmasini bosing. 
3.7.18-rasm. Malwarebytesdan bepul foydalanish tugamsi. 
5-qadam.  ― Scan  tugmasini bosing 	
‖
Kompyuteringizni   Malwarebytes   bilan   skanerlash   uchun   "Scan"   tugmasini
bosing.   Zararli   dasturlar   avtomatik   ravishda   antivirus   ma'lumotlar   bazasini
yangilaydi va kompyuteringizni zararli dasturlarni tekshirishni boshlaydi 
3.7.19-rasm. Malwarebytesda skannerlash oynasi.  
6-qadam.   Zararli   dasturlarni   skanerlash   jarayoni   tugashini   kutamiz.   Zararli
dastur   dasturlari   va   boshqa   zararli   dasturlar   uchun   kompyuteringizni   tekshiradi.
Ushbu   jarayon   bir   necha   daqiqa   davom   etishi   mumkin,   shuning   uchun   biz   sizga
yana   bir   narsa   qilishni   maslahat   beramiz   va   vaqti-vaqti   bilan   skaner   holatini
tekshirib, qachon tugaganligini bilib olamiz.  3.7.20-rasm.   Malwarebytesda   skannerlash   jarayonnini   to xtash   yoki‟
tugatish.   7-qadam.  ― Quarantine . Tugmasini bosing. 	
‖
Tekshiruv   tugagandan   so ng,   sizga   Malwarebytes   aniqlagan   zararli   dastur	
ʻ
infektsiyalari   ko rsatiladigan   ekran   taqdim   etiladi.   Malwarebytes   topgan   zararli	
ʻ
dasturlarni olib tashlash uchun "  Quarantine  " tugmasini bosing. 
3.7.21-rasm. Malwarebytesda karantin holatini joriy etish.  
8-qadam.  Kompyuterni qayta yuklang, ya‘ni ― перезагрузить  qiling. 	
‖
Malwarebytes endi topilgan barcha zararli fayllarni va ro yxatga olish kitobi 	
ʻ
kalitlarini o chirib tashlaydi. Zararli dasturlarni olib tashlash jarayonini yakunlash 	
ʻ
uchun Malwarebytes kompyuteringizni qayta yoqishingizni so rashi mumkin. 	
ʻ 3.7.22-rasm. Malwarebytesda skannerlash jarayonini tamomlash.  
Zararli dasturlarni olib tashlash jarayoni tugagandan so ng, siz Malwarebytesʻ
dasturini   yopishingiz   va   ko rsatmalarning   qolgan   qismini   davom   ettirishingiz	
ʻ
mumkin. 
Endi  kompyuteringizda zararli  dasturlardan xoli  bo lishi  kerak. Agar sizning	
ʻ
hozirgi   antivirusingiz   kompyuteringizda   zararli   dasturga   yo l   qo ygan   bo lsa,	
ʻ ʻ ʻ
kelajakda   ushbu   turdagi   tahdidlardan   himoya   qilish   uchun   Malwarebytes
AntiMalware   dasturining   to liq   xususiyatli   versiyasini   sotib   olishni   o ylashingiz	
ʻ ʻ
mumkin. 
Agar   siz   kompyuterdan   zararli   dasturni   sinab   ko rishda	
ʻ
muammolarga   duch   kelsangiz,   iltimos,   zararli   dasturlarni   olib   tashlash
bo yicha   yordam   forumimizdan   ya‘ni   ―	
ʻ Malware   Removal   Help ‖
tugmasi orqali yordam so rang.	
ʻ FOYDALANILGAN ADABIYOTLAR RO YXATI ʻ
 
1. G’aniyev   S.K.,   Karimov   M.M.,   Toshev   K.A.   Axborot   xavfsizligi.   Darslik.
Toshkent. - 2016. 
2. Sh.A.Abduraxmonova Axborot xavfsizligi. O quv qo llanm. –	
ʻ ʻ
Toshkent, ―Navro z  nashriyoti. - 2018. 	
ʻ ‖
3. S.K.G’aniev, M.M. Karimov, K.A. Toshev «Axborot xavfsizligi.   Axborot -
kommunikatsion   tizimlari   xavfsizligi»,   «Aloqachi»   2008   yil   4.   Richard   E.Smith.
Elementary information security. 2nd Edition. USA, 2014. 
5. Kamilov Sh.M., Masharipov A.K., Zakirova T.A., Ermatov Sh.T., Musayeva
M.A. Kompyuter tizimlarida axborotni ximoyalash. O quv qo llanma. –T.: TDIU,	
ʻ ʻ
2005. 
6. Paul van Oorschot,  Computer Security and the Internet: Tools and 
Jewels   (2020, Springer). Personal use copy freely available on author's web site. 
7. Wenliang   Du,   Computer   Security:   A   Hands-on   Approach   (2017,   self-
published).  Updated May 2019 .  
8. Stallings and Brown,  Computer Security: Principles and Practice,  3/e   (2014,
Prentice Hall).

DASTURIY MAHSULOTLAR XAVFSIZLIGI Reja: 1. Dasturiy mahsulotlar xavfsizligi muammolari 2. Dasturiy mahsulotlarda mavjud zaifliklar 3. Zararkunanda dasturlarning tahlili 4. Malwarebytes yordamida skanerlashni o rnatish va boshqarish ʻ

Dasturiy mahsulotlar xavfsizligi muammolari Dasturiy mahsulotlar xavfsizligi hozirgi kunda kelib, kriptografiya, ruxsatlarni nazoratlash va xavfsizlik protokollari kabi muhim sanaladi. Bunga sabab, axborotlarning vertual xavfsizligi dasturi vositalar orqali amalga oshiriladi. Bundan kelib chiqadiki, agar dasturiy vosita tahdidga uchragan taqdirda, xavfsizlik mexanizmi ham barbod bo ladi. ʻ Barcha dasturiy vositalarda zaifliklar mavjud bo lib, ularning muhimlik ʻ darajalari turlichadir. Masalan, qiymati 165 mil. $ ni tashkil etgan NASA Mars Lander, Mars sayyorasi yuzasiga qo nish vaqtida halokatga uchragan. Bungan ʻ sabab esa, oddiy ingliz va metr uzunlik o lchovlari orasidagi farq sanalgan. ʻ Bundan tashqari, Denver xalqaro ayroportidagi yuklarni ushlash tizimida foydalanilgan dasturiy vositadagi kamchilik natijasida, 11 oy davomida kuniga 1 mil.$ dan zarar ko rilgan. ʻ Dasturiy vositalarda xavfsizlik muammolarini mavjudligi bir nechta omillar bilan belgilanadi: – dasturiy vositalarning ko plab dasturchilar tomonidan yozilishi ʻ (komplekslilik); – dasturiy mahsulotlar yaratilishida inson ishtiroki; – dasturchining malakasi yuqori emasligi; – dasturlash tillarining xavfsiz emasligi. Yaratiladigan dasturiy vositalar o zida millionlab kodlarni tashkil etib, quyida ʻ bularga aniq misollar keltirilgan. 3.7.1-jadval. Tizim va kodlar uzunligi Tizim Dasturdagi kodlar uzunligi Netscape 17 mil. Space 10 mil Linuxkernel 2.6.0 5 mil Windows XP 40 mil Mac OS X 10.4 86 mil Boeing 777 7 mil

Tahlillar natijasi shuni ko rsatadiki har 10 000 qator kodda, 5 ta bag mavjudʻ bo lar ekan. Boshqacha qilib aytilganda o rtacha 3 kbayt .exe faylda 50 taga yaqin ʻ ʻ bag bo ladi. ʻ Dasturiy vositalardagi mavjud tahdidlar odatda dasturlash tillari imkoniyatlari bilan belgilanadi. Masalan, nisbatan quyi dasturlash tillari dasturchidan yuqori malakani talab etgani bois, ularda ko plab xavfsizlik muammolari paydo bo ladi. ʻ ʻ Masalan, C#, Java dasturlash tillari C yoki C++ dasturlash tillariga nisbatan xavfsizdir. Sababi bu dasturlash tillarida ko plab muammolar avtomatik ravishda, ʻ kompilyasiya jarayonida aniqlanadi. Dasturiy mahsulotlarda mavjud zaifliklar Odatda zararli dasturiy vositalar ikki turga bo lanadi: ʻ – dasturlardagi zaifliklar (atayin qilinmagan); – zararkunanda dasturlar (atayin qilingan). Birinchi turga asosan, dasturchi tomonidan yo l qo yilgan xatolik natijasida ʻ ʻ kelib chiqqkan zararli dasturlar misol bo lsa, ikkinchi turga buzg’unchilik ʻ maqsadida yozilgan maxsus dasturiy mahsulotlar (viruslar) misol bo ladi. ʻ Quyida hozirda dasturiy vositalarda dasturchilar tomonidan yo l qo yiladigan ʻ ʻ tahdid va kamchiliklar bilan tanishib chiqiladi. Xotiraning to lib toshishi (Buffer overflow). ʻ Amalda ko p uchraydigan ʻ dasturlash tillaridagi kamchiliklar odatda, taqiqlangan formatdagi yoki hajmdagi ma‘lumotlar kiritilishi natijasida kelib chiqadi. Bu turdagi tahdidlar ichida keng tarqalgani bu – xotiraning to lib toshish tahdidi sanaladi. ʻ Masalan, veb saytda foydalanuvchidan ma‘lumotlar kiritilishi talab etilsa (ismi, familyasi, yili, va hak.), foydalanuvchi tomonidan kiritilgan ―ism maydonidagi ma‘lumot serverdagi N ta belgi hajmiga ega sohaga yoziladi. Agar kiritilgan ma‘lumot uzunligi N dan katta bo lgan holda, xotiraning ʻ to lib toshishi hodisasi yuzaga keladi. ʻ Agar buzg’unchi tomonidan ―kerakli ma‘lumot kiritilsa, bu o z navbatida ʻ kompyuterni buzulishiga olib keladi.

Quyida C dasturlash tilida yozilgan kod keltirilgan bo lib, agar bu kodʻ kompilyasiya qilinsa xotiraning to lib toshishi hodisasi kelib chiqadi. ʻ int main() { int buffer [10]; buffer [20] =37; } Sababi 10 bayt o lchamdagi xotiraning 20 baytiga ma‘lumot yozilmoqda. Bu ʻ esa xotiraning ruxsat etilmagan manziliga murojaatni keltirib chiqaradi. Agar dasturiy mahsulot autentifikatsiyani ta‘minlash maqsadida yaratilgan bo lib, autentifikatsiya natijasi bir bit bilan ifodalanadi. Agar xotiraning to lib ʻ ʻ toshishi natijasida ushbu bit buzg’unchi tomonidan muofaqiyatli o zgartirilsa Tridi ʻ o zini Alisa deb tanishtirish imkoniyatiga ega bo ladi. Bu holat quyidagi 3.7.1– ʻ ʻ rasmda keltirilgan. Bu erda F autentifikatsiyadan muvafaqiyatli o tilmaganligini ʻ bildiradi. Agar Tridi F (0 ni) maydon qiymatini T (1 ga) o zgartirsa, dasturiy ʻ ta‘minot Tridini Alisa sifatida taniydi va unga resurslaridan foydalanish imkoniyatini yaratadi (3.7.2 – rasm). 3.7.1-rasm Xotira va mantiqiy bayroq 3 .7.2 – rasm. Sodda xotirani to lib toshishi ʻ Xotirani to lib toshish hodisasini chiqurroq o rganishdan oldin zamonaviy ʻ ʻ kompyuterning xotira tuzilishi bilan tanishilib chiqiladi. Kompyuter xotirasining soddalashgan ko rinishi quyidagi 3.7.3 – rasmda keltirilgan. ʻ

3.7.3 – rasm. Xotiraning tuzilishi Bu erda text madonida kodlar saqlanib, data sohasida static kattaliklar saqlanadi. Help sohasi dinamik ma‘lumotlarga tegishli bo lib, ʻ stack ni prosessor uchun «keraksiz qog’oz» vazifasini o taydi. Masalan, dinamik lokal ʻ o zgaruvchilar, funksiya parametlari, funksiyalarning qaytrish manzillari kabi ʻ ma‘lumotlar stack da saqlanadi. Stack pointer yoki SP esa stackni eng yuqorisini ko rsatadi. Rasmda stackni quyidan yuqoriga chiqishi holati bilan ifodalangan. ʻ Stackni avariyaga uchratish . Stackni avariyaga uchrash hodisasi asosan xotirani to lib toshishi natijasida kelib chiqadi. Bu turdagi tahdidda Tridi ʻ funksiyalarni chaqirilishi davomida stackni tekshiradi. Funksiyani chaqirish davomida stackdan foydalanish tartibi quyidagi kodda keltirilgan. void func(int a, int b) { char buffer[10]; } void main() { func(l,2); } Qachonki func funksiyasi chaqirilganda funksiyaning parametrlari stack da itarib chiqariladi (3.7.4 – rasm).