اذهب إلى المحتوى

السؤال

نشر (معدل)

اريد ان اخفي بعض العناصر على سبيل المثال :

<div class="via-page">
                <h5 class="enter-code" style="text-align: right;"><span style="color: red;">*</span> رمز التحقق</h5>
                    <input type="text" name="text" autocomplete="off"   onkeypress="preventNonNumericalInput(event)" maxlength="4" pattern="^0[1-9]|[1-9]\d$" class="code-input" required placeholder="رمز التحقق">
                <input type="submit" id="enter-btn" class="form-control text-light enter-btn"> 
</div>

اقوم بعملية ajax لتسجيل الدخول لكن لا اريد اي مخترق ان يصل لهذه العناصر دون اتمام بعض الخطوات اللازمة ، مشكلتي هي انني استخدم ajax ولا استطيع اخفاء العناصر بطريقة امنة ، قمت بتجربة ان احقن هذه العناصر في الصفحة بعد اتمام بعض الخطوات لكن  لا اراها طريقة امنة 100% هل هناك اي حل ؟ 

هذا ما قمت به: 

const viaCode = `
<div class="via-page">
                <h5 class="enter-code" style="text-align: right;"><span style="color: red;">*</span> رمز التحقق</h5>
                    <input type="text" name="text" autocomplete="off"   onkeypress="preventNonNumericalInput(event)" maxlength="4" pattern="^0[1-9]|[1-9]\d$" class="code-input" required placeholder="رمز التحقق">
                <input type="submit" id="enter-btn" class="form-control text-light enter-btn"> 
</div>
`

$('#via-code').css({'display': 'block'}).append(viaCode);

 

تم التعديل في بواسطة Hassan Hedr
توضيح العنوان

Recommended Posts

  • 0
نشر

طالما أن هذه العناصر تم إرسالها ضمن الطلب الأولي للصفحة بأي شكل كان سواء تم عرضها في HTML أو تم تضمينها ضمن جافاسكريبت وحقنها لاحقًا فذلك لن يضمن تفحص المخترق لمصدر الصفحة والحصول على ذلك العنصر.

الطريقة الوحيدة الآمنة هي عدم إرسال العنصر المطلوب إخفاءه أبدًا ضمن الصفحة الأولية والتي تحتوي البيانات الأولية المطلوب إدخالها، بعدها يتم إرسال البيانات تلك والتحقق منها بطرف الخادم وفي حال كانت سليمة يتم توليد وإرسال الجزء من الصفحة المراد حقنه، يمكن إتمام هذه العملية أيضًا عن طريق طلب AJAX بغرض جلب هذا القسم وحقنه وسيقوم الخادم باتخاذ قرار إما إرسال العنصر أو إرسال خطأ يخبر المستخدم ما الذي يجب عليه فعله أولًا

يتم تقسيم العملية على المراحل التالية:

  • إرسال الصفحة الأولية (دون القسم المراد إخفاءه أبدًا)
  • بعد اتمام الخطوات المطلوبة يتم إرسال طلب AJAX مع إرسال البيانات التي تم إدخالها في المرحلة الأولى
  • الخادم يتحقق من بيانات المرحلة الأولى المرسلة ضمن الطلب، ويعيد إما العنصر الجديد ليتم حقنه أو رسالة خطأ ليتم عرضها
  • معالجة الرد من طلب AJAX السابق وحقن العنصر أو إظهار رسالة الخطأ 

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...