شرح ثغرة Insecure Direct Object Reference) IDOR)

1337r00tمنذ 5 سنوات

* السلام عليكم ورحمة الله وبركاته *

------------------

الحمد لله على جميع نِعمه علينا ما علمنا منها وما لم نعلم حمداً والصلاة والسلام على نبينا محمد اشرف الخلق والمرسلين, اما بعد :-

--------------------

1337r00t | BlackFoxs Inc

# مقدمة :-

ثغرة IDOR تعتبر من أخطر الثغرات ولها نصيب في OWASP Top 10 في سنة 2013 وتأخذ رقم CWE-639 وأصابت الكثير من المواقع العالمية مثل تويتر و فيسبوك و أوبر الخ.. .

---------------------

# ماهي IDOR :-

ثغرة IDOR تعتبر (Authorization Bug) Web Parameter Tampering وهي تحدث عندما يضع المبرمج متغيرا (user-input) والمستخدم يستطيع تغيير قيمة هذا المتغير, وهو غير مصرح بتغييره, ولهذا تم تسميتها (Insecure Direct Object References) .

لمن لم يفهم ماذا اعني بكلمة "متغير" هو البراميترات مثلا لاللحصر عندما تشاهد موقع بهذا الشكل : http://evil.com/test?name=1337r00t

الname هو المتغير و 1337r00t هو قيمة المتغير .

--------------------

# شرح عملي :-

تنبيه : هذا مجرد مثال وغير محصور .

 

رأيت موقع بيع هواتف وأحببت انت ان تشتري آيفون لكن قيمة الآيفون 5000 ريال وانت لاتمتلك هذا المبلغ, لكن عندما طلبت شراء الآيفون لاحظت ان رابط الطلب أصبح :-

https://phonemarket.com/buy/iphone?price=5000

قمت انت بتغيير قيمة متغير price الى 10 فتم وضع قيمة الآيفون 10 ريالات في سلة المشتريات وشريته فعليا بهذه القيمة ! هنا حدثت ثغرة IDOR .

---------------

# التجنب عن هذه الثغرة :-

يجب عليك عزيزي المبرمج ان لاتعطي المستخدم الأمكانية على تغيير البيانات الحساسة او اللذي من الغير طبيعي تغييرها .

-----------------

والسلام خير ختام

1337r00t | BlackFoxs Inc

 

كلمات دليلية: idor
4
إعجاب
6190
مشاهدات
0
مشاركة
2
متابع

التعليقات (1)

Mohll:

نبي شرح متعمق للثغره ذي وطرق اكتشافها :^

لايوجد لديك حساب في عالم البرمجة؟

تحب تنضم لعالم البرمجة؟ وتنشئ عالمك الخاص، تنشر المقالات، الدورات، تشارك المبرمجين وتساعد الآخرين، اشترك الآن بخطوات يسيرة !