ما تريد معرفته عن Cryptographic Failures
خصوصية البيانات وأمنها لا تقدر بثمن للمحافظة علي ثقة المستخدمين، يحدث فشل التشفير(Cryptographic Failures) أو كما كان يعرف في قائمة OWASP Top 10 للعام 2017 بـ(Sensitive Data Exposure) عند الحفاظ علي البيانات دون تشفير (Plain Text) أو استخدام خوارزميات تشفير ضعيفة قابلة للكسر أو علي سبيل المثال تكرار استخدام الـ (Salt Value) عند تشفير كلمات المرور.
ما هو التشفير (Cryptography)؟
التشفير هو عملية تحويل البيانات أو المعلومات إلى شكل غير قابل للقراءة أو الفهم إلا من قبل الشخص الذي يمتلك المفتاح السري لإعادة ترجمتها إلى شكلها الأصلي. يستخدم التشفير لحماية خصوصية وأمن البيانات والاتصالات على الإنترنت وغيرها من الشبكات.
اقرأ أيضاً: Introduction to Cryptography | مقدمة في علم التشفير
هناك نوعان رئيسيان من التشفير:
التشفير المتماثل (Symmetric): يستخدم نفس المفتاح لتشفير وفك تشفير البيانات، مما يجعله سريعًا وفعالًا، لكنه يحتاج إلى طريقة آمنة لإرسال المفتاح إلى المستقبل.
اقرأ أيضاً: التشفير المتماثل (Symmetric Encryption)
التشفير غير المتماثل (Asymmetric): فيستخدم مفتاحان مختلفان، أحدهما عام والآخر خاص، مربوطان رياضيًا، حيث يستخدم المرسل المفتاح العام (Public Key) لتشفير البيانات، ويستخدم المستقبل المفتاح الخاص (Private Key) لفك تشفيرها.
اقرأ أيضاً: جولة في التشفير الغير متماثل (Asymmetric Encryption)
ما هي استخدامات التشفير (Cryptography) في تطبيقات الويب؟
استخدامات التشفير في تطبيقات الويب متعددة ومهمة. بعض الأمثلة هي:
• حماية خصوصية وسرية المستخدمين والبيانات التي يتم تبادلها بين المتصفح والخادم، مثل كلمات المرور والمعاملات المالية والرسائل الشخصية عند إرسالها عبر الإنترنت باستخدام بروتوكول النقل الآمن للنصوص التشعبية (HTTPS)، والذي يستخدم تشفير غير متماثل لإنشاء جلسة آمنة وتشفير متماثل لتبادل البيانات.
• حفظ كلمات المرور والبيانات الحساسة في قواعد البيانات باستخدام تشفير المفتاح المتماثل أو التجزئة (Hash)، والذي يحول البيانات إلى قيم ثابتة لا يمكن فك تشفيرها.
• التحقق من صحة هوية المستخدم أو المصدر باستخدام التوقيعات الرقمية (Digital Signatures)، والتي تستخدم تشفير غير متماثل لإرفاق مفتاح عام مع رسالة أو برنامج أو شهادة.
• تسهيل بعض الخدمات والأنشطة على الإنترنت، مثل التجارة الإلكترونية وتحويلات الأموال عبر الإنترنت والبريد الإلكتروني
ما هو فشل التشفير (Cryptographic Failures)؟
يُعتبر OWASP Cryptographic Failures واحد من أهم عشرة مخاطر أمنية لتطبيقات الويب حسب تقرير OWASP Top 10 للعام 2021، تتعلق هذه المخاطر بالفشل في استخدام التشفير بشكل صحيح أو كافٍ لحماية البيانات الحساسة من التعرض أو التلاعب.
ما هي أسباب حدوث فشل التشفير (Cryptographic Failures)؟
• استخدام خوارزميات تشفير قديمة أو ضعيفة أو غير آمنة، مثل MD5 أو SHA1 أو DES2.
• استخدام مفاتيح تشفير افتراضية أو ثابتة أو سهلة التخمين.
• عدم إجراء التحقق من صحة server certificate و trust chain عند إنشاء اتصال آمن باستخدام HTTPS.
• عدم استخدام وضع تشغيل آمن للتشفير، مثل GCM، والذي يضمن سرية وسلامة وصحة البيانات.
• عدم حفظ كلمات المرور في قواعد البيانات باستخدام Hash مناسب يحتوي علي Salt Value.
إذا كان تطبيقك يستخدم التشفير بأي شكل من الأشكال، فإنه من المهم اتباع المعايير والأفضليات الصناعية لضمان حصولك على مستوى كافٍ من الأمان.