التعليق: يجب عليك أيضًا الانتباه إلى مشكلات الأمن في HTML5
يقول خبراء أمان التطبيق إن HTML5 يقدم تحديات أمنية جديدة للمطورين.تجلب حرب الكلمات بين Apple و Adobe العديد من التكهنات حول مصير HTML 5. على الرغم من أن تطبيق HTML 5 لا يزال أمامه طريق طويل ، فمن المؤكد أن المطورين الذين يستخدمون HTML 5 سيحتاجون إلى نشر ميزات أمان جديدة لدورة تطوير أمان التطبيق للتعامل مع تحديات الأمان التي جلبتها HTML 5.
إذن ما هو تأثير HTML5 على سطح الهجوم الذي نحتاج إلى تغطيته؟ ستناقش هذه المقالة العديد من القضايا الأمنية المهمة حول HTML 5.
تخزين العميل
وقال دان كورنيل ، مدير قسم أبحاث أمن التطبيقات في مجموعة الدنيم ، إن الإصدارات السابقة من HTML سمحت فقط لمواقع الويب بتخزين ملفات تعريف الارتباط كمعلومات محلية ، وهي صغيرة نسبيًا ومناسبة فقط لتخزين معلومات الأرشيف البسيطة أو كمعرفات للبيانات المخزنة في مكان آخر (مثل معرف الجلسة). ومع ذلك ، يسمح HTML5 LocalStorage للمتصفح بتخزين عدد كبير من قواعد البيانات محليًا ، مما يتيح استخدام أنواع جديدة من التطبيقات.
يمكن أن يتم تخزين المخاطر التي قد يتم تخزين البيانات الحساسة على محطة عمل المستخدم المحلي ، ويمكن للمهاجمين الذين يصلون جسديًا أو يستعطير أن يحصلوا على محطة عمل حساسة ، والتي قال كورنيل إنها أكثر خطورة بالنسبة للمستخدمين الذين يستخدمون أجهزة الكمبيوتر المشتركة.
وقال جوش أبراهام ، باحث أمني في RAPID7 ، بحكم التعريف ، يمكنه حقًا تخزين المعلومات على نظام العميل. بعد ذلك ، لديك القدرة المحتملة على استخدام هجوم حقن SQL المستند إلى العميل ، أو ربما يكون أحد قاعدة بيانات عميلك ضارًا ، وعندما تتم مزامنتها مع نظام الإنتاج ، قد تكون هناك مشاكل المزامنة ، أو سيتم إدراج البيانات الخبيثة المحتملة للعميل في نظام الإنتاج.
لحل هذه المشكلة ، يجب أن يكون المطورون قادرين على التحقق مما إذا كانت البيانات ضارة ، وهي في الواقع مشكلة معقدة للغاية.
لا يتفق الجميع مع أهمية هذه القضية. قال كريس ويسوبال ، كبير مسؤولي التكنولوجيا فيراكود ، إنه على سبيل المثال ، كانت هناك دائمًا العديد من الطرق لتخزين عملاء البيانات باستخدام الإضافات أو ملحقات المتصفح.
هناك العديد من الطرق المعروفة للتلاعب بخصائص HTML5 SessionStorage التي تم نشرها حاليًا ، ولكن سيتم حل هذه المشكلة فقط عند الانتهاء من المعيار.
التواصل عبر المجال
قد تسمح الإصدارات الأخرى من HTML مباشرةً بإصدار طلبات XML HTTP للاتصال بالخادم الأصلي ، بينما يرتاح HTML5 هذا الحد ، ويمكن إرسال طلبات XML HTTP إلى أي خادم يسمح بهذه الطلبات. بالطبع ، إذا كان الخادم غير موثوق به ، فقد يؤدي ذلك أيضًا إلى مشكلات أمنية خطيرة.
على سبيل المثال ، يمكنني إنشاء مزيج (مزيج ، دمج أكثر من اثنين من تطبيقات الويب باستخدام قواعد البيانات العامة أو الخاصة لتشكيل تطبيق متكامل) لسحب درجات المطابقة لمواقع الطرف الثالث عبر JSON (تدوين كائن JavaScript). قال كورنيل إن هذا الموقع قد يرسل بيانات ضارة إلى التطبيق الذي يعمل في متصفح المستخدم الخاص بي. على الرغم من أن HTML5 يسمح بإنشاء أنواع جديدة من التطبيقات ، إذا لم يفهم المطورون الأهمية الأمنية للتطبيقات التي قاموا ببنائها عندما يبدأون في استخدام هذه الوظائف ، فإنه سيؤدي إلى مخاطر أمنية كبيرة للمستخدمين.
للمطورين الذين يعتمدون على postmessage () لكتابة التطبيقات ، يجب عليهم التحقق بعناية للتأكد من أن المعلومات من موقع الويب الخاص بهم ، وإلا يمكن أن تنشئ Wysopal معلومات ضارة. هذه الميزة نفسها غير آمنة ، وبدأ المطورون في استخدام ميزات DOM (نموذج كائن الوثيقة)/ميزات المتصفح لمحاكاة الاتصالات عبر المجال.
مسألة أخرى ذات صلة هي أن تحالف الويب العالمي على الويب يوفر حاليًا وسيلة لاستخدام ما شابه لآليات الشؤون الأصلية لتجاوز السياسات المتماثلة لتصميم مشاركة الموارد المتقاطعة.
تحتوي عمليات النشر IE على ميزات أمنية مختلفة عن Firefox و Chrome و Safari ، ويلاحظ أن المطورين بحاجة إلى التأكد من إنشاء قوائم تحكم في الوصول فضفاضة للغاية مع مخاطر كونها فضفاضة للغاية ، خاصة وأن بعض التعليمات البرمجية المرجعية غير آمنة للغاية.
إيفرامي الأمن
من وجهة نظر أمنية ، يحتوي HTML5 أيضًا على ميزات لطيفة ، مثل خصائص صندوق الرمل التي تخطط لدعم IFRAMES.
وقال ويسوبال إن هذه الخاصية ستسمح للمطورين باختيار كيفية تفسير البيانات ، لسوء الحظ ، مثل معظم HTML ، من المحتمل أن يكون التصميم قد أسيء فهمه من قبل المطورين ومن المحتمل أن يتم تعطيله من قبل المطورين لأنه غير مريح للاستخدام. إذا تم التعامل معها بشكل صحيح ، فستساعد هذه الميزة في الدفاع عن إعلانات الطرف الثالث الخبيث أو منع المحتوى غير الموثوق به.