Printsiplar, siyosatlar va himoya Dasturiy ta'minot xavfsizligi



Download 3,9 Mb.
Pdf ko'rish
bet43/55
Sana07.04.2022
Hajmi3,9 Mb.
#534884
1   ...   39   40   41   42   43   44   45   46   ...   55
Bog'liq
1. M.Payer. Software Security

0x400 RX
0x4 ?? RX
0x8 ?? RWX
0x800 RWX
0xf?? RWX
0xfff RWX
Himoya yo'q
ASLR
stekni ajratish yoki mintaqani mmmapping uchun u xotiraning biror
joyiga joylashtirilishi kerak. Sahifa bazasi manzilining past bitlarini
tasodifiylashtirish sahifa darajasida manzil maydonini tasodifiylashtirishni
amalga oshiradi . Manzillarni o'zgartirishga ruxsat berish uchun virtual
xotira talab qilinadi . Operatsion tizim boshlang'ich ikkilik va mmapped
hududlar uchun tasodifiy manzillar uchun randomizatsiyaga ruxsat berishi kerak.
Har bir bo'limning entropiyasi xavfsizlikning kalitidir (agar barcha
bo'limlar tasodifiy bo'lsa). Masalan, 6.2-rasmda har bir bo'lim uchun
8 bit entropiya qo'llaniladi. Hujumchi eng kam qarshilik yo'lidan
boradi, ya'ni eng past entropiyaga ega ob'ektni nishonga oladi. Erta ASLR
6.2-rasm: ASLR ostida jarayonning manzil maydoniga o'zgartirishlar .
86
6 Mudofaa strategiyasi
Bog'lovchi/yuklovchi jarayonni xotiraning tasodifiy joyida tayyorlashi
kerak . Kompilyator kodning boshqa kod joylariga nisbatan mos
kelishini ta'minlashi kerak, chunki jarayon har safar boshlanganda
har bir kod bloki boshqa joyda bo'lishi mumkin. 6.2 -rasmda ASLR
ostida manzil maydonining o'zgarishi ko'rsatilgan.
Xotira
Xotira
Machine Translated by Google


6.4.3 Stackning yaxlitligi
Dastlabki kodni bajarish hujumlari ko'pincha kodni kiritish uchun stekga
asoslangan bufer to'lib ketishiga qaratilgan. Erta mudofaa aynan shu bufer
to'lib ketishiga qaratilgan. Xotira xavfsizligi bu muammoni yumshatgan
bo'lsa-da , yuqori unumdorlik tufayli to'liq xavfsizlik tekshiruvlarini qo'shish
mumkin emas . Buferning o'zboshimchalik bilan to'lib ketishini aniqlash
uchun har bir dereferentni tekshirish o'rniga biz ma'lum bir o'zgaruvchining
yaxlitligini tekshirishni qo'shishimiz mumkin. Ushbu yumshatishning
maqsadi dasturni saqlangan qaytarish yo'riqnomasi ko'rsatgichini yoki
saqlangan stek bazasi ko'rsatkichini o'zgartiradigan stekga asoslangan
to'lib ketishdan himoya qilishdir. Xususiyat sifatida stekning yaxlitligi
qaytish yo'riqnomasi ko'rsatgichini ham, stek ko'rsatgichini ham noqonuniy
ravishda o'zgartirib bo'lmasligini ta'minlaydi.
ilovalar stekda past entropiyaga ega edi va asosiy bajariladigan (PIE
bo'lmagan bajariladigan fayllar) uchun x86 da entropiya yo'q edi. Linux
(Exec Shield orqali) stek uchun 19 bit entropiyadan (16 bayt
hizalangan) va 8 bit mmap entropiyasidan (4096 bayt/sahifaga
tekislangan) foydalanadi.
87
6 Mudofaa strategiyasi
Qaytish yo'riqnomasi ko'rsatkichlarining huquqiy o'zgarishlariga,
masalan, boshqaruv oqimini boshqa joyga yo'naltiruvchi trambolin
(qo'ng'iroq yo'riqnomasidan saqlangan qaytish yo'riqnomasi
ko'rsatgichining ustiga yozish) yoki qaytarish yo'riqnomasi
ko'rsatgichini umumiy maqsadda ochadigan ta'riflar kiradi. registr
(keyingi ko'rsatma qo'ng'irog'i orqali ko'rsatma ko'rsatkichining joriy
qiymatini kiritish uchun kodga ruxsat berish; ko'rsatma ko'rsatgichiga
aniq kirishga ruxsat bermaydigan x86 kabi ISAlar uchun
generalPurposeRegister ketma-ketligini ochadi ). Stack pivoti stek ko'rsatkichini o'zgartiradi
Machine Translated by Google


Turli xil yumshatishlar stek yaxlitligining ba'zi shakllarini amalga oshiradi.
Yumshatish uchun qiziqarli muammolar qatorida xavfsizlik kafolatlari
bilan bir qatorda C++ da istisnolarni qo‘llab-quvvatlash, C dasturlari
uchun setjmp/longjmp va bir xil stek ramkasini qayta ishlatish uchun
barg funksiyasiga qo‘ng‘iroqni o‘rnini bosuvchi qo‘ng‘iroqni optimallashtirish
kiradi . Bu xususiyatlar orqa tomonda g'ayritabiiy boshqaruv oqimini va
zanjirdagi bir nechta freymlarni o'tkazib yuborishi mumkin bo'lgan
stackning yuqori qismidagi freymlarni uzatish kodini beradi .
Bu yumshatish kanareykani muhim ma'lumotlar oldiga qo'yadi va (i) funktsiya
kiritilganda kanareykani saqlash uchun asboblarni qo'shadi va (ii) funktsiya
qaytishidan oldin uning butunligini tekshiring . Kompilyator barcha buferlarni stek
ramkasining oxiriga, kanareykani esa birinchi buferdan oldin joylashtirishi mumkin.
Shunday qilib, bufer bo'lmagan barcha mahalliy o'zgaruvchilar ketma-ketlikdan
himoyalangan
Stek kanareykalari uchun asosiy tushuncha shundan iboratki, qaytarish
yo'riqnomasi ko'rsatgichi yoki asosiy stek ko'rsatgichining ustiga yozish uchun
ushbu ko'rsatkichlarga boradigan yo'ldagi barcha boshqa ma'lumotlar ham ustiga yozilishi kerak.
va joriy stek ramkasini tajovuzkor nazorati ostidagi boshqa
joyga o'tkazadi, masalan, to'kilgan stek ko'rsatkichi qiymatini
qayta yozish orqali.

Download 3,9 Mb.

Do'stlaringiz bilan baham:
1   ...   39   40   41   42   43   44   45   46   ...   55




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish