Ishga tushirilgandan so'ng, demonlar uzoq vaqt davomida qayta ishga
tushirilmasdan, kundan haftalargacha, oylargacha ishlaydi. ASLR yoki
stekning yaxlitligi kabi bir qancha yumshatishlar ma'lumot
raqibdan
yashiringan ehtimoliy kafolatlarga tayanadi . Serverlar ko'pincha ma'lum
miqdordagi so'rovlarni bajargandan so'ng qayta ishga tushiriladigan bir
nechta oqimlarni ishga tushiradi . Xavfsizlik bo'yicha mavjud bo'lmaganda,
ishlamay qolgan mavzular qayta ishga tushiriladi. Shunday qilib, raqib
ASLR-ni chetlab o'tish uchun xotira tartibi yoki stek kanareykalarini chetlab
o'tish uchun stack kanareykalari kabi jarayonlarning manzil maydonidagi
sirlarni tiklash uchun ma'lumotlar sizib chiqishidan foydalanishi mumkin .
Demonlar tashqi so'rovlarga xizmat qiluvchi uzoq muddatli xizmatlardir.
Demonlar ko'pincha tizimga yoki tarmoq orqali bir vaqtning o'zida bir
nechta mijozlarga funktsiyalarni ta'minlash uchun fonda ishlaydi.
7.1.1 Uzoq muddatli xizmatlarni himoya qilish
Tarmoqqa ulanganligi sababli, demonlar ko'pincha Internetga
kirishadi, bu erda ularga har qanday uzoq joydan hujum qilish
mumkin. Internet va Internet ochiq platformalar bo'lib , har
kimga ulanish va xizmatlarni so'rash imkonini beradi. Bu
Bu katta murakkablik xatolar xavfini oshiradi. Murakkablik
ko'proq kodga olib keladi va kod hajmi raqam bilan bog'liq
7
misollar
Veb-server, pochta serveri yoki DNS-server demonlarga misoldir.
berilgan ilovadagi xatolar.
106
Demonlar
murakkab, chunki ular bir nechta oqimlar orqali parallel ravishda
so'rovlarga xizmat qiladi. Shunday qilib, ular ishlash va leverage uchun
optimallashtirilgan, masalan, har bir so'rov narxini kamaytirish uchun
taqsimlangan keshlar va ular turli mijozlar uchun keng funksiyalarni taklif qiladi.
Machine Translated by Google
Bo'limlarga ajratish uchun yaxshi misol pochta serverlari.
Pochta serverlarida ko'plab vazifalar mavjud:
imtiyozli portda
tarmoqdan ma'lumotlarni yuborish va qabul qilish, pochta protokolini
tahlil qilish, qabul qilingan va yuborilmagan xabarlar pulini
boshqarish, har bir foydalanuvchi uchun saqlangan xabarlarga
kirishni ta'minlash. Klassik yondashuv (sendmail-da qo'llaniladi)
barcha tezis vazifalarini bajaradigan yagona ikkilik faylni taqdim
etishdir. Katta miqdordagi imtiyozlar talab qilinganligi sababli (fayl
tizimiga to'liq kirish, tarmoqqa kirish) komponent to'liq
administrator
huquqlariga ega root sifatida ishlaydi. Pochta serveri tarmoqdan
ulanishlarni qabul qilganligi sababli , bu katta hujum yuzasiga va
tez-tez hujumga uchragan taniqli nishonga olib keladi.
kimdir uzoqdan hujum qilish xavfini oshiradi.
Zamonaviy yondashuv (qmail-da amalga oshirilgan) pochta serverini
bir-biri bilan aloqa qiladigan komponentlar to'plamiga ajratadi.
Alohida modullar alohida foydalanuvchi identifikatorlari sifatida ishlaydi
Demonlarning hujum yuzasini kamaytirishning
oqilona yondashuvi
ularni kichikroq qismlarga ajratishdir. Keyinchalik bu komponentlar
nosozlik bo'linmalari bo'lib xizmat qiladi va mustaqil ravishda ishlamay
qoladi. Umumiy g'oya shundan iboratki, agar komponentlardan biri
ishlamay qolsa, boshqalari xavfsizlik teshiklarini ochmasdan ishlashda
davom etadilar. Komponentlar aniq belgilangan
API orqali muloqot
qiladi va agar komponentlardan biri noto'g'ri bo'lsa, raqiblar buggy
komponentining imkoniyatlari bilan cheklanadi va faqat shu
komponentning imtiyozlari bilan o'zaro aloqada bo'lishi kerak.
Bo'linmasdan, raqib kichik kichik to'plam o'rniga xizmat tomonidan
talab qilinadigan barcha imtiyozlarga ega bo'ladi .
Ayniqsa, veb-serverlar foydalanuvchining autentifikatsiyasi yoki
identifikatsiyasini talab qilmasdan, foydalanuvchilarga ochiq funksiyalarni taqdim etadi.
7 misollar
107
Machine Translated by Google
Brauzerlar uzoq davom etadigan jarayonlardir (qachon oxirgi marta
brauzeringizni qayta ishga tushirgansiz?). Yorliqlar orqali brauzerlar bir
vaqtning o'zida bir nechta kontekstlarni ishga tushiradi, ko'pincha 10 yoki 100
ta yorliqlar bir vaqtning o'zida ochiladi va har bir yorliq bir-biridan ajratilgan bo'lishi kerak.
Do'stlaringiz bilan baham: