Dasturiy ta’minotni ishlab chiqqanda va foydalanganda qator prinsiplarga amal qilish talab qilinadi. Quyida OWASP tashkiloti tomonidan taqdim qilingan prinsiplar keltirilgan:
Hujumga uchrashi mumkin soha maydonini minimallashtirish. Dasturiy ta’minotga qo’shilgan har bir xususiyat umumiy holda dasturga ma’lum miqdordagi xavf darajasini qo’shadi. Dasturni xavfsiz amalga oshirishning maqsadi bu – hujum bo’lishi mumkin bo’lgan sohani kamaytirish orqali umumiy dasturdagi xavfni kamaytirishdir. Masalan, veb saytlarda onlayn yordamni amalga oshirish uchun qidirish funksiyasi mavjud. Biroq, ushbu imkoniyat veb saytga SQL – ineksiya hujumi bo’lishi ehtimolini keltirib chiqarishi mumkin. Agar qidiruv imkoniyati autentifikasiyadan o’tgan foydalanuvchilar uchun bo’lsa, u holda hujum bo’lishi ehtimoli kamayadi. Agar qidiruv ma’lumotlari markazlashgan holatda tekshirilsa, u holda ushbu imkoniyat yanada kamayadi.
Xavfsiz standart sozlanmalarni o’rnatish. Amalda aksariyat dasturiy ta’minotlarda va operasion tizimlarda ko’plab xavfsizlik sozlanmalari standart tartibda o’rnatilgan bo’ladi. Biroq, bu holat foydalanuvchilar tomonidan yaxshi qabul qilinmaydi va shuning uchun, aksariyat hollarda ushbu sozlanmalarni o’chirib qo’yish amalga oshiriladi. Masalan, operasion tizimlarda parollarni eskirish vaqti standart holda o’rnatilgan bo’lsada, aksariyat foydalanuvchilar tomonidan ushbu sozlanma o’chirib qo’yiladi.
Minimal imtiyozlar prinsipi. Axborot xavfsizligi, informatika, dasturlash va boshqa sohalarda keng qo’llaniluvchi minimal imtiyozlar prinsipi (ingl. Principle of least privilege) bu – hisoblash muhitidagi u yoki bu abstraksiya darajasida resurslarga murojaatni tashkil qilish prinsipi bo’lib, bunga ko’ra har bir modul o’z vazifasini to’laqonli bajarishi uchun zarur bo’lgan resurs yoki axborotdan minimal darajada foydalanishni talab etadi.
Bu prinsip foydalanuvchi yoki dasturga faqat o’z vazifasi uchun zarur bo’lgan imtiyozlarga ega bo’lishi kerakligini anglatadi. Masalan, turli vaqt o’tkazish uchun ishlab chiqilgan mobil o’yin dasturlar SMS xabarni o’qish yoki qo’ng’iroq qiluvchilar ro’yxatini bilish imkoniyatiga ega bo’lishi shart emas. Masalan, dasturlar tillarida (Java dasturlash tilida keltirilgan) obyektlardan foydanishni cheklash uchun turli kalit so’zlardan foydalaniladi.
jadval
Java dasturlash tilida foydalanuvchilar imtiyozlari