التلاعب بمدخلات المستخدم والمعلومات المرسلة للويب سيرفر عن طريق تخطي عملية التحقق التي تتم في المتصفح والتعديل على الحقول المخفية بإستخدام إضافة Tamper Data.

 

لغة HTML تستخدم في تصميم الشكل الخارجي للمواقع الإلكترونية وهي تعرف بأنها لغة وصفيه, فهي تصف الصفحة وتحدد محتوياتها كالصور والفيديو وحقول التسجيل و الأزرار , وأيضاً توفر إمكانيات للمصمم أو المبرمج أن يضع حقولاً لكي يملئها الزائر بإسمه أو بريده الإلكتروني أو رقم جواله , ماذا لو استطاع الزائر أو المخرب أن يتلاعب بهذه المدخلات؟

لن يستطيع المخرب أن يتلاعب في هذه المدخلات إذا كانت هناك عملية تحقق من المدخلات , من ناحية طول أو نوع المدخل, على سبيل المثال عندما يقوم الزائر بإدخال حروفاً في خانة رقم الجوال ستظهر له رسالة خطأ ! , بإن المدخل يجب أن يكون أرقاماً فقط .
إذن لكي يتلاعب المخرب في المدخلات ويدخل رموز غريبة أو شفرات برمجية يجب عليه أن يتخطى عملية التحقق وعندها يستطيع أن يتلاعب بالمدخلات كما شاء وقد يستطيع أن يتخطى الصلاحيات و ويصبح مديراً للموقع , أنظر للشفرة البرمجية التالية:

 

<script>
function updateM(){
if(document.getElementById(“m”).value.length<10){
alert(“الرجاء إدخل رقم الجوال والمكون من عشر خانات”);
}
else{
document.updateMobile.submit();
}
}
</script><form action=”updateMobile.php” method=”post” name=”updateMobile”>
<p align=”center”>تعديل رقم جوال المستخدم
<input type=”text” name=”m” id=”m” size=”20″ value=”0555555555″>
<input type=button value=”تعديل” name=”mobile” id=”mobile” onclick=”updateM();”>
</p>
<input type=hidden name=”id_user” value=’1234′>
</form>

 

كما تشاهد في الشفرة البرمجية السابقة, فهي تحتوي على شفرة جافا سكربت والتي تتحقق من أن رقم الجوال يجب أن لا يكون أقل من عشر خانات ثم الشفرة البرمجية الخاصة بالـ HTML والتي تظهر في المتصفح بالشكل التالي :

 

Hidden filds 1

وعند تعديل رقم الجوال ووضع أي رقم أقل من عشر خانات ستظهر هذه رسالة تخبر المستخدم بوجود خطأ. سبب ذلك أن الجافا سكربت منعت المستخدم من إدخال رقم أقل من عشر خانات, يأتي دور الآن التلاعب بهذا المدخل!

ماذا لو استطاع المهاجم الوقف بين المتصفح والخادم server? عزيزي المبرمج , يستطيع المخرب أن يقف بين المتصفح وبين الخادم والتلاعب في البيانات المرسلة , ويتم ذلك إما باستخدام أدوات جاهزة أو ببرمجة أداوات خاصة من قبل أصاحب الخبرة في مجال أمن المعلومات .
إذن ما سأقوم به أنني سأرسل إلى الخادم رقم الجوال الصحيح والمكون من عشر خانات لكي أتخطى الجافا سكربت وبعدها سأقوم بتلاعب بالمدخل ,, أنظر للشكل التالي:

Hidden filds 2

المثال السابق ما هو إلا تقريب لعملية التخطي والتلاعب بالحقول , حيث أنه عندما يقوم الزائر بكتابة رقم الجوال ومن ثم إرساله إلى المتصفح و يتأكد المتصفح من المدخل لا يقل عن عشر خانات, ومن ثم سيرسل الطلب إلى الخادم , ويأتي هنا دور الأداة المستخدمة للتعديل على المدخلات ومن ثم جعلها تكمل مسيرها للخادم .

أخيرًا , سنقوم بتطبيق مثال واقعي وسأوضح كيفية التعديل على الحقول المخفية وهي لب الموضوع , أولاً فائدة الحقول المخفية (hidden field) هي عملية نقل معلومات من صفحة إلى صفحة دون أن يشاهدها المستخدم لغرض التحقق من هوية المستخدم أو التعامل مع أنظمة خارجية مثلاً ,عندما تدخل على موقع يبيع أجهزة الإلكترونية وبعد الطلب وتعبئة بيانات الشحن طلب منك تأكيد طلب وهي الخطو النهائية , وبعد تأكيد الطلب سيقوم النظام بالاتصال مع نظام خارجي لنفرض أنه شركة فيزا (visa) لأخذ المبلغ المطلوب ! ماذا لو أنك استطعت أن تقف بين المتصفح والخادم في آخر خطوة (تأكيد الطلب) بلا شك أنك تستطيع أن تشتري كل منتجات الشركة بدون ما تدفع إلا ريال واحد ! لان القيمة الاجمالية للمشترياتك تم إرسالها في حقل مخفي إلى موقع شركة فيزا .
سأستخدم أداة (Tamper) للتلاعب بالحقول المخفية , الهدف من استخدام الأداة تعديل رقم الجوال الخاص بمدير الموقع:

قبل الضغط على زر تعديل , سأقوم بتشغيل الأداة Tamper:

Hidden filds 4

الآن سأضغط على زر (Start Tamper) للبدأ في عملية التلاعب , وبعدها سأضغط على زر تعديل وستظهر لي النتيجة كالتالي :

Hidden filds 5

كما تشاهد عزيزي القارئ أن الأداة وقفت بين المتصفح وبين الخادم وأعطتنا الإمكانية للتعديل على الحقول المخفية والغير مخفية كذلك , فالآن تستطيع أن تقوم بتعديل رقم التسجيل الخاص بك وتكتب بداله رقم مدير الموقع وعندها تستطيع أن تتلاعب بالموقع كما تشاء .. أنظر بعد تعديل رقم المستخدم إلى 87654 ستقوم الصفحة المستخدم بتحديث رقم الجوال للمستخدم رقم 87654 بدلاً من 1234 كما في الصورة التالية.

Hidden filds 6

 

الخلاصة:

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

 

عن الكاتب:


محمد الدهيمي, أعمل حاليا كمطور في مؤسسة التأمينات الاجتماعية. مهتم في مجال أمن المعلومات وإكتشاف ثغرات تطبيقات الويب.

Share on FacebookShare on Google+Tweet about this on TwitterShare on LinkedIn