- لا تضع أسرارا في كود التطبيق — يمكن استخراجها دائما.
- الصلاحيات تفرض في الخادم لا في الواجهة.
- تحقق من كل مدخل على الخادم مهما تحققت في العميل.
- خزن أقل ما يمكن على الجهاز، وشفر ما تخزنه.
الأسرار
كل ما يوضع في تطبيق العميل يمكن استخراجه: المفاتيح، وكلمات المرور، وعناوين الخدمات الداخلية. والقاعدة أن أي سر في التطبيق سر مكشوف. والمفاتيح الحساسة تبقى في الخادم، ويستدعي التطبيق واجهتك أنت التي تنادي الخدمة نيابة عنه.
المصادقة والجلسات
- رموز وصول قصيرة العمر مع رمز تجديد محفوظ في تخزين آمن.
- إبطال فوري للجلسات عند تغيير كلمة المرور أو تسجيل الخروج.
- حد لمحاولات الدخول الفاشلة مع تأخير تصاعدي.
- التحقق بخطوتين للحسابات ذات الصلاحيات العالية.
- لا تخزن كلمات المرور إلا مجزأة بخوارزمية حديثة مصممة لذلك.
الصلاحيات في الخادم
إخفاء زر في الواجهة ليس أمانا. فمن يستطيع مناداة واجهتك مباشرة يتجاوز الواجهة كلها. وكل نقطة نهاية يجب أن تتحقق من أن هذا المستخدم يملك حق هذا الفعل على هذا السجل تحديدا — لا أن يكون مسجل دخول فحسب.
وهذه أشيع ثغرة في تطبيقات الأعمال: تغيير معرف في الطلب يعرض بيانات عميل آخر.
المدخلات والمخرجات
- تحقق من كل مدخل على الخادم: النوع، والطول، والمدى، والصيغة.
- استعمل استعلامات معاملية دائما — لا تركب استعلاما بدمج نصوص.
- رمز كل مخرج بحسب سياق عرضه لمنع حقن السكربتات.
- تحقق من نوع الملفات المرفوعة وحجمها، وخزنها خارج مسار التنفيذ.
على الجهاز
الجهاز قد يفقد أو يسرق أو يكون مكسور الحماية. فخزن أقل ما يلزم، واستعمل التخزين الآمن الذي يوفره النظام للرموز، ولا تكتب بيانات حساسة في السجلات، وامسح البيانات عند الخروج. وتذكر أن لقطات الشاشة والنسخ الاحتياطي قد تحمل ما تظنه محميا.
أسئلة شائعة
متى نجري فحصا أمنيا؟
مبكرا على التصميم، ثم قبل الإطلاق، ثم دوريا وبعد كل تغيير كبير. والفحص الوحيد قبل الإطلاق بأيام يكشف ما لا يمكن إصلاحه في الوقت المتاح.
هل نحتاج تثبيت الشهادات؟
يفيد في التطبيقات المالية والحساسة لمنع اعتراض الاتصال، ويضيف عبء صيانة عند تجديد الشهادات. والقرار يوازن بين حساسية البيانات وقدرة الفريق على إدارة التجديد بلا تعطيل المستخدمين.
ما أخطر ثغرة شائعة؟
ضعف التحقق من الصلاحية على مستوى السجل: المستخدم مسجل دخول لكنه يصل إلى بيانات غيره بتغيير معرف. وهي شائعة لأنها لا تظهر في الاستعمال العادي ولا تكشفها الاختبارات الوظيفية.
- أمان التطبيقات
- حماية البيانات
- المصادقة
- الصلاحيات
- تشفير البيانات
- الثغرات الشائعة
- تطوير آمن
- تطوير البرمجيات والتطبيقات