عرض مشاركة واحدة
قديم 30-03-2011, 11:29 PM   #2

mats0o0o0
عضو مميز



الصورة الرمزية mats0o0o0


• الانـتـسـاب » Mar 2009
• رقـم العـضـويـة » 54211
• المشـــاركـات » 616
• الـدولـة »
• الـهـوايـة »
• اسـم الـسـيـرفـر »
• الـجـنـس »
• نقـاط التقييم » 10
mats0o0o0 صـاعـد

mats0o0o0 غير متواجد حالياً



افتراضي



بسم الله الرحمن الرحيم
هنا انا هاحط فى الاول شويه ملاحظات عن الباكتس او الحزم اللى لازم نعرفها
1- ان رئس الحزم لا تزيد عن 6 بايت و هوا ده الحد الاقصى
2-الحزم المشفره على 2 بايت المخصصين للحجم لا يمكن تشفيرهم ابدا ( اعاده تشفيرهم )
3- بس هنا ممكن نستخدم ماسك قليل فى النسبه للتشفير من 0x8000
4-security count and CRC دول يتم تعيين المساحه او البايت لهاتين الوحدتين من خلال العميل و الخادم فقط و اذا فشل فى التعيين يتم ايقاف العمليه نائيا
5- الحزم لا تائتى بشكل فردى بل يتم تجميعها معا و هنا سيكون لديك تحليل كامل للبيانات من خلال تيار كامل جاء من الخادم
6- ليس مضمون ان تصل الحزم كلها كامله و ده معناه بلبلدى كده انك المفروص تحافظ على حد معيين انتا تحدده قبل ما تحلل الحزمه
7- شرط اللى يستخدم الحجات ديه يكون عندو معرفه كافيه بلغه البرمجه الى هيستخدمها و ميكونش هاوى :) او بيدعى المعرفه ^^
هنا احنا خدنه لمحه عامه على الشغل اللى احنا المفروض نفهمه و طبعا نص حقوق النشر محفوظا لصاحبها ايا كان بس نصها فقط ليس ايلا
دلقواتى هندخل فى الصعب 3 اقسام 1- البروتوكول 2- تطبيقات فى تنفيذ المهمات اللى احنا هنعملها
3- عينه تطبيقيه ( يعنى هنشوف ايه هيا الحاجه اللى هنطبقها)

هنبداء فى كلمنا عن
1-عمليه المصافحه
السؤال اللى هنطرحه هنا هوا ازاى نعرف نستخدم عمليه المصافحه فى سيلك رود و ده جزئ من انك تكون مبرمج تمام انك تعرف ازاى تدور على ايه و بوضوح و طبعا لو انتا مبرمج محترف و انا بدقق جدا على الكلمه ديه مش هتواجه اى مشكله. فى حاله البحث عن النص المشار اليه الا و هوا النص العام لسليك رود silkroad.exe فسوف نجد التالى


نقوم بابحاث اوليه من خلال البحث عن طريق سلاسل النص يعطى على الفور بعض من المعلومات الحساسه على ما يمكن توقعه للتاكد بلرغم انه يجب اخذ نظره على الحزم التى ترسل بين العميل و الخادم و هنا هنشوف مثال لاول 4 رسائل و الذى يحدث حتى تتم عمليه المصافحه بين الحزم هذه المعلومات اخذت بواسطه drew على شان الصور من عندو ^^
From Server to Client: 25 00 00 50 00 00 0E 70 82 27 11 5B 5F E5 28 E6 00 00 00BF 00 00 00 8F 44 3E 0F DA 32 6B 2B 7F FF C6 03 A3 25 1D 0C EF 6A BE 00 From Client to Server: 0C 00 00 50 CE 90 26 3B 0D 03 DA 69 80 F8 5E DE 39 8D From Server to Client: 09 00 00 50 00 00 10 83 A3 B5 60 CE 67 D8 63 From Client to
Server: 00 00 00 90 DB D5
لو بدائت تعكس نظام البكيتس او الحزم مش هتاخد وقت لتخمين اول ان اول 2 بايت هوا الحجم فى كل مجموعه من البيانات اول 2 بايت تصف عدد البايت اللى قادم بعد السته الاولينيين على شان كده رئس الحزمه هتكون 6 بايت بس و تذكر انه عند قرائه ال hex او العرافه لهذه السلاسل عليك ان تاخذ و حدات البايت الى الوراء حجم الحزمه الاولى 0x0025
و الثانيه 0x000C و الثالثه 0x0009 و الرابعه 0x0000.
نكمل الباقى بكره ان شاء الله على شان تعبت و عايز انام هههههههههه و شكرا لردودكو اللى زى الفل يا رجاله سيلك رود 4 اراب
التكمله :
من الكلام اللى فوق ده هنفترض ان ديه التشكيله الصحيحه للحزم التى جمعناها .
اللى هنا مش كيفيه عكس العميل للمعلومات ديه على قد ما هيا بتتكلم عن كيفيه استعمالها.
لو سجلنا فى silkroad.exe كذا مره هنشوف ازاى بتختلف حزم الرئس عن رئس البيانات نفسها هنفترض ان ده معناه اننا لازم ندخل جوا العميل لمعرفه ايه الكلام اللى بنقوله ده بيمشى او ببتعامل معاه ازاى
و هنبدا هنا بشرح البروتوكول الامنى بس مش هنقول ازاى نكتشف المعلومات اللى احنا عايزينها من العميل
هنبداء مع الحزمه الاولى التى تلقيناها معى التحليل الصحيح ده هيوريك ايه اللى هنوصل ليه من خلال التفسيرات الاتيه
[25 00] - Size
[00 50] - Opcode
[00] – Security Count
[00] – Security Crc
0E] - Flag]
[Blowfish- [70 82 27 11 5B 5F E5 28
E6 00 00 00] – Count Seed]
BF 00 00 00] – CRC Seed]
8F 44 3E 0F] – Seed 1]
DA 32 6B 2B] – Seed 2]
7F FF C6 03] – Seed 3]
A3 25 1D 0C] – Seed 4]
EF 6A BE 00] – Seed 5]
نبداء بى اول حزمه تجيلنا و يجب ان نعرف اولا ما هى الطريقه المستخدمه لتشفير هذه الحزم لاستخدمها فى الاتصال
و على شان نعمل كده نشوف البايت الاول فى البيانات اللى هيا ال datapointer و هى جزئ من هيكل البيانات
و هنا يمكننا تحديد الهيكل للقيام بذالك
// Base packet to figure out which one we have
structServer_Packet_5000_Base
}
// Internal flag
;BYTE flag
;{
قيمه العلم اللى احنا كتبناه ده بيقولنا ايه هيا طريقه التشفير اللى احنا بنتعامل معاها من اجل هذه الماده و سوف تكون القيمه 0xE و هذا ما يعنى blowfish و handshake و count و security bytes
كل ما يعرضه العميل سيكون متاح مع هذا العلم وسائط اخرى بشكل انتقائى تتيح تعيين نظام امنى اخر فضلا عن تعطيل كل شيء


توقيع mats0o0o0 :
<font size=5><font face=Comic Sans MS><font color=Magenta>IM THE BEST DANCER</font></font></font>



التعديل الأخير تم بواسطة mats0o0o0 ; 01-04-2011 الساعة 11:46 PM

رد مع اقتباس