8 – MAVZU
Dasturlash tiliga asoslangan xavfsizlik – dasturlash tillarining xususiyatlari to`plamidan kelib chiqqan holdailova xafvsizligini oshirish texnologiyalari to`plamini nazarda tutadi.
Dasturlash tiliga asoslangan xavfsizlik operatsion tizim xafvsizligi yetarli bo`lmaganligi bois, ilova sathida xafvsizlikni ta`minlashga asoslanadi.
Dasturlash tiliga asoslangan xavfsizlikning maqsadi – dastur kodini dasturiy ta`minot xavfsizlik siyosatiga mosligi xususiyatlari mavjudligini kafolatlashdan iborat.
C va C++ dasturlash tillari xavfsiz bo`lmagan dasturlash tillariga yaqqol misol bo`la oladi.
Java va C# dasturlash tillarida ba`zi muammolar bo`lsada, xafvsiz dasturlash tillariga yaqqol misol bo`la oladi. Yuqori funksional dasturlash tillari bo`lgan Haskell, ML yoki LISP ham xavfsizdir.
Xavfsiz bo`lmagan dasturlash tillarining asosiy afzalliklaridan biri bu – tezkorlik.
Dasturlash tillari quyidagi sabablarga ko`ra xotiradan xavfsiz foydalana olmasligi mumkin:
ko`rsatkichlardan foydalanganligi bois;
shartsiz tip o`zgartirishlaridan foydalanish;
Massiv chegarasini tekshirmaslik natijasida;
Null ko`rsatkichga moyil bo`lish natijasida;
Dasturlovchi tomonidan boshqariladigan xotirani qayta joylashtirish.
C, C++ va Pascal dasturlash tillari yaxshi tiplar xavfsizligiga ega sanalmaydi.
Tiplar xavfsizligiga ega dasturlash tillariga Java, C#, Modula, Scheme, ML va Haskellni olish mumkin.
C++ dasturlash tilida private, public, protected turidagi ko`rinish turi mavjud bo`lsa, Java dasturlash tilida ularning soni 4 ta, ya`ni default turidagi paket ko`rinishi (package) ham mavjud.
9 - MAVZU
C dasturlash tili Dennis Ritchie tomonidan 1972 yilda yaratilgan. C protseduralarga yo`naltirilgan til. C, C++ asosan drayver yozishda ishlatiladi. C strukturalangan dasturlash tili.
Protsedura – funksiya, metod sifatida ma`lum. Protsedura tili – programma qo`yilgan muammoni yechishi uchun qadamlar ketma-ketligini aniqlaydi.
Xavfsiz bo`lmagan funksiyalar: gets(), strcpy(), strcat(), sprint().
Xavfsiz analoglar: fgets(), strncpy(), strncat(), snprintf().
SEI CERT C++ Coding Standard 80 dan ortiq qoidalardan tashkil topgan bo`lib, ular jami 11 ta bo`limga ajratilgan.
10 – MAVZU
C# - dasturlash tili; .Net esa bu – freymvork
Assembly – bir yoki bir nechta .cs fayllarni kompliyatsiya qilishda hosil bo`lgan .dll yoki .exe.
ASP.NET (.NET uchun Active Server Pages). ASP.NET xavfsizlik xususiyati: aloqa xafsizligi; Autentifikatsiya; Konfiguratsiya; Ma`lumotdan foydalanish xavfsizligi; koddan foydalanish xavfsizligi; istisno holatlarni tutish (Exception Handling).
ASP.NET da Forms Autentifikatsiya va Windows Autentifikatsiya mavjud.
Koddan foydalanish xavfsizligi (Code Access Security, CAS). CAS deganda, biz kodimiz amalga oshirish mumkin bo`lgan tizim resurslaridan foydalanishni va kodimiz bajaradigan imtiyozli amallar turini cheklashni nazarda tutamiz.
11 – MAVZU
Sandboxing ajratish usullari 2ta.
TCB (Trusted Computing Base) – ishonchli hisoblash bazasi. TCB deganda, tizimni xavfsiz muhit bilan ta`minlash uchun birlashgan hisoblash tizimining barcha, apparat, proshivka va dasturiy ta`minot komponentlari tushuniladi.
Foydalanishlarni boshqarish quyidagilarni o`z ichiga oladi: - huquqlar/imtiyozlar; - ishtirokchilar (ya`ni, foydalanuvchi, jarayonlar, tashkil etuvchilar); - tomonlarga huquq beruvchu siyosat; - TCBni tarkibiy qismi bo`lgan, siyosatni amalga oshirish uchun ish vaqti monitoringi.
Ajratishning 4 ta turi mavjud: - fizik ajratish; - vaqtinchalik ajratish; - mantiqiy ajratish; - kriptografik ajratish.
Eng kichik ajratish elementi – protses.
UNIX OTda fayllar& kataloglarda 3 turdagi foydalanuvchilar (obyekt egasi, guruh, qolganlar) uchun 3 ta imtiyozlar (r, w, x) mavjud.
12 - MAVZU
Konfidensiallik uchun eng sodda ko`rinishda ma`lumotlarni tasniflash ularni maxfiy (Secret) va ochiq (Public) turlarga ajratadi.
Yaxlitlik uchun ma`lumotlar 2 guruhga ajratiladi: zararlangan va zararlanmagan.
Axborot oqimini 2 turga: aniq va yashirin turga ajratish mumkin.
13 - MAVZU
Klass va metod nomlari uchun Paskal ko`rinishidan (PascalCase) foydalanilish kerak.
Metod parameterlari va o’zgaruvchi nomlari uchun Kamel ko`rinishidan (CamelCase) foydalaniladi.
14 – MAVZU
OT buyruqlari inyeksiyasi: - email@simple.nl; rm –fr /
SQL inyeksiyasi: - email@simple.nl’; DROP TABLE Customers;--
- email@simple.nl’; exec master.dbo.xp_cmdshell
15 – MAVZU
Do'stlaringiz bilan baham: |