الموقع العربي الاول للعبة Silkroad Online

الموقع العربي الاول للعبة Silkroad Online (https://silkroad4arab.com/vb/index.php)
-   قسم الحماية والاوتوايفنت للسيرفرات الخاصه (https://silkroad4arab.com/vb/forumdisplay.php?f=323)
-   -   شرح كامل لغلق ثغرة SQL Inject at about guild (https://silkroad4arab.com/vb/showthread.php?t=606259)

™ EgY_KhaN ™ 19-10-2016 04:14 PM

شرح كامل لغلق ثغرة SQL Inject at about guild
 
اول حاجه فيه بعض الحلول دي بالفعل معروفة لكن معتدقنش ان كل الحلول دي اتنشرت
لو انت شغال بجارد او من غير برده بتتحل

الحل الاول وهو الاسهل انك تقفل About guild دي خالص :

هتفتح ال SQL وتروح ع التاب دي
"SRO_VT_SHARD" > Tables > _SiegeFortress > وتختار > Design >
هتظهرلك بالشكل دا :
http://s13.postimg.org/u5wu0khlz/screenshot_1194.png
هتنزل علي : IntroductionModificationPermission
تقف عليها وهتغير Default Value Or Binding 1
ل Default Value Or Binding 0
زي كدا بالظبط http://s13.postimg.org/kzejdacdj/screenshot_1195.png
وبكده انت قفلت About guild خالص

حل مشكلة ال DC في بعض السيرفرات الي شغاله وفيها جيلد واخد FTW
اقتباس:

USE SRO_VT_SHARD
Go
/*
Fix DC Bug when use anti sqli Simply way ( sql way )
Coded By EgY_KhaN
*/
UPDATE SRO_VT_SHARD.._SiegeFortress Set Introduction = Null Where GuildID > 0
UPDATE SRO_VT_SHARD.._SiegeFortress Set IntroductionModificationPermission = 0 Where GuildID > 0
Print ' All Done ! '
Print ' Coded By EgY_KhaN'

تاني حل لو انت ليك في C# وشغال بجارد هتضيف
السطرين دول في الجارد بتاعك
كود:


            #region 0x705E_CLIENT_EXPLOIT
            if(packet.Opcode == 0x705E)
            {
                string message = packet.Opcode.ReadAscii();
                if(message.Contains("'"))
                {
                    //message;
                    continue;
                } else if(message.Contains("\""))
                {
                    //message;
                    continue;
                } else if(message.Contains("-"))
                {
                    //message;
                    continue;
                }
            }

#endregion

الحل التالت بإستخدام SQL Parse نفس الفكرة برده ونفس الاداء ونفس النتيجة
كود:

if (new[] { '-','\\','\'' }.Any(a => message.Contains(a)))
{
    //message;
    continue;
}

فيه حل اخر من خلال ال GameServer نفسه بإستخدام برنامج OLLYDBG بس لسه تحت التجربة لو جربته واشتغل تمام هضيفو للموضوع

Hamza FiGo 19-10-2016 05:52 PM

رد: شرح كامل لغلق ثغرة SQL Inject at about guild
 
تسلم ايدك . معلومة مهمه للي مش عارف يجيب فلتر :boxing:

تم تعديل اسم الموضوع

MenToR 19-10-2016 08:29 PM

رد: شرح كامل لغلق ثغرة SQL Inject at about guild
 
جميل تسلم يا ابو صلاح
و انا بفضل الـSQL لأن معظم الناس ملهاش فى السى شارب قد كده


hamoelpap2 19-10-2016 08:42 PM

رد: شرح كامل لغلق ثغرة SQL Inject at about guild
 
بص انا مستغرب ان واحد نزل حاجة زى دى هنا لعامة الناس

اولا لأن الثغرة دى مش منتشرة مفيش ناس كتير تعرفها

ثانيا حتى الى يعرفوها نصهم مش عارفلها حل و النص التانى بيستعملها فمش عايزها تنتشر
فيريت لو واحد استهبل و سألك هوا الثغرة دى بتتعمل ازاى اجربها و بتاع متقولوش .....

ثالثا ان فى كتير من الناس الى عاملة سيرفرات انا شايفهم ميستحقوش يعرفوا الحل
لان همهم الاول و الاخير انهم يلموا فلوس فى وقت قليل و يقفلوا السيرفر علطول و يتبخروا

المهم ...حل ال OP Code كويس اوى ... انما حل انك تقفلها نفسها من الSQL لازم
الاول تخش و تمسح الكلام القديم لو فى حاجة مكتوبة و الا هتحصل تهييس فى الداتا بتلاقى الفورتريس
حصل فيها شوية حاجات غريبة زى انك تيجى تعلم على الفورتريس
بالماوس تشوف مين واخدها تلبس crash و فكرة الParse انتا معتمد ان الى بيكتب
يا حد واخده كوبى من حد عامله و كاتبه لزق يا ام واحد مبتدأ php بس هتعمل ايه لو واحد
فاهم؟؟ دا الثغرة دى تقدر تعمل بيها اى حاجة فى الShard يا جدع :D , حاجات مغرية اوى :D

اى حد فى مجال الprivate لازم حاجة من 2
1= يا اما تشترى Guard نضيف و تدفعله فلوس كل شهر زى K-Guard / Hax / KRY / Strew
لانهم بيفضلوا يحدثوا اى exploit بتظهر بس العيب ان كل ميزة جديدة بيدفعوك اكتر
2= انك تتعلم بنفسك و متطلبش حاجة من حد لان مهما انتا نزلت هنا شرح او انا او غيرنا
مفيش حد بيدى الناس كل معرفته لازم بيسيب حاجات ليه . احلى حاجة انك تتصرف بنفسك
حبة حبة لحد ما هتبقى راسى فى كل صغيرة و كبيرة و مش هتحتاج تدور ورا حد فى الداتا
او الlogs لانك عارف انك ضابط أداءك ....


انا شغال بالsourcecode بتاع واحد من الجاردات و مضبط فيه الop codes
وحاجات كتير تانية ودى تجربة بسيطة للثغرة ,, 1- مش هتتعمل 2- هعرف اسم الشخصية و الاى بى
بتاع الشخص الى عمل كدا :) ... طبعا خافى شوية معلومات من الصور
عشان محدش يعمله ......


http://image.prntscr.com/image/2e658...fbeee480ec.png



http://image.prntscr.com/image/6c53b...3d646f3551.jpg


http://image.prntscr.com/image/81d87...3d979e9349.jpg


تشكر على مجهودك و ربنا يقدم الى فيه الخير :D

™ EgY_KhaN ™ 19-10-2016 10:18 PM

رد: شرح كامل لغلق ثغرة SQL Inject at about guild
 
نفس الفكرة يامعلم انا قولت البداية بس لكن لو حد عاوز يزود عليها زي مانتا عامل هوا ودماغه بقا اما بالنسبة لل SQL لا مبتعملش اي مشاكل لان انا بنفسي جربتها وجربت الكذا حل دول علشان كدا نزلتهم فيه حلول تانية برده لكن لسه مجربتهاش علشان كدا منزلتهاش

™ EgY_KhaN ™ 19-10-2016 10:20 PM

رد: شرح كامل لغلق ثغرة SQL Inject at about guild
 
اقتباس:

المشاركة الأصلية كتبت بواسطة MenToR (المشاركة 5281973)
جميل تسلم يا ابو صلاح
و انا بفضل الـSQL لأن معظم الناس ملهاش فى السى شارب قد كده


الي عاوز من دا ياخد والي عاوز من دا ياخد :59:

™ EgY_KhaN ™ 19-10-2016 10:21 PM

رد: شرح كامل لغلق ثغرة SQL Inject at about guild
 
اقتباس:

المشاركة الأصلية كتبت بواسطة Hamza FiGo (المشاركة 5281961)
تسلم ايدك . معلومة مهمه للي مش عارف يجيب فلتر :boxing:

تم تعديل اسم الموضوع


تسلم ع الموافقه

™ EgY_KhaN ™ 19-10-2016 11:57 PM

رد: شرح كامل لغلق ثغرة SQL Inject at about guild
 
تم اضافة حل مشكلة ال DC في بعض السيرفرات الي فيها جيلدات واخده FTW

Hamza FiGo 20-10-2016 12:02 AM

رد: شرح كامل لغلق ثغرة SQL Inject at about guild
 
طيب الموضوع دا مش عايز يجيب معايا ^^

شغال علي سورس k-guard الاخير . بس كل ما اضيف الفيكس ميحصلش حاجة

انا يعتبر لسة بادي في تعلم Visual/C# وهكذا . فا لسة صعبة عليا شوية. يعني مش عارف احط الفيكس فين بالظبط

hamoelpap2 20-10-2016 12:46 AM

رد: شرح كامل لغلق ثغرة SQL Inject at about guild
 
اقتباس:

المشاركة الأصلية كتبت بواسطة elmagico123 (المشاركة 5281986)
تم اضافة حل مشكلة ال DC في بعض السيرفرات الي فيها جيلدات واخده FTW

لا دنتا معلم بقى ... دنتا تيجى تعد مكانى :pile: :mfr_lol:

اقتباس:

المشاركة الأصلية كتبت بواسطة Hamza FiGo (المشاركة 5281987)
طيب الموضوع دا مش عايز يجيب معايا ^^

شغال علي سورس k-guard الاخير . بس كل ما اضيف الفيكس ميحصلش حاجة

انا يعتبر لسة بادي في تعلم Visual/C# وهكذا . فا لسة صعبة عليا شوية. يعني مش عارف احط الفيكس فين بالظبط

لو معاك سورس اخر ابديت فهو معمول فيه الfix مش محتاج تضيفه ...
انما لو سورس نسخة كراك قديمة يبقى مش موجود و ممكن غلط انتا فى حاجة ....

Hamza FiGo 20-10-2016 01:06 AM

رد: شرح كامل لغلق ثغرة SQL Inject at about guild
 
اقتباس:

المشاركة الأصلية كتبت بواسطة hamoelpap2 (المشاركة 5281989)
لا دنتا معلم بقى ... دنتا تيجى تعد مكانى :pile: :mfr_lol:



لو معاك سورس اخر ابديت فهو معمول فيه الfix مش محتاج تضيفه ...
انما لو سورس نسخة كراك قديمة يبقى مش موجود و ممكن غلط انتا فى حاجة ....

لا المايجكو معروف ^^

والسورس الاخير هو واحد بس اللي نزل اللي هو فيرجن 5.09 .

الفكرة بقا اني مش عارف احطة فين بالظبط فاهمني ؟ علي حسب معرفتي لحد ناو مش بيتحط في اي مكان وخلاص

يعني في ClientsAgent.cs ولا ClientsGateway.cs ولا فين ولا فين .. لسة الموضوع بالنسبة ليا هياخد وقت

جربت كذا packet مفيش بردة

http://i.epvpimg.com/Fm09c.jpg

™ EgY_KhaN ™ 20-10-2016 01:25 AM

رد: شرح كامل لغلق ثغرة SQL Inject at about guild
 
السورس دا كان فيه كام بجايه صغيرة ياحمزة بس مش فاكرهم بالظبط كانو ايه المهم افتح SideAgent : واعمل بحث علي case 0x705E:
وحط الامر الي فوق دا قبل سيستم ال Guild limit وكده المفروض يشتغل معاك تمام

Hamza FiGo 20-10-2016 01:39 AM

رد: شرح كامل لغلق ثغرة SQL Inject at about guild
 
اقتباس:

المشاركة الأصلية كتبت بواسطة elmagico123 (المشاركة 5281991)
السورس دا كان فيه كام بجايه صغيرة ياحمزة بس مش فاكرهم بالظبط كانو ايه المهم افتح SideAgent : واعمل بحث علي case 0x705E:
وحط الامر الي فوق دا قبل سيستم ال Guild limit وكده المفروض يشتغل معاك تمام

الـــ case 0x705E دا بتاع الفورترس

والــ case 0x70F3 دا بتاع الجايلد ليميت

تقصد انهي سيستم احط قبلية الامر .. Guild Limit ولا Fortress War's member limit !

حاول تعمله عندك كدة وتبعتلي صورة لو امكن. وعلي البجات افتكرها علي مهلك . انا لسة قدامي بدري علي ما امسك زمام الامور في الموضوع دا ^^ دا غير سيستم اللوك اللي مش فاهم كلمه من التركي دا علشان اشغله




Dev.Exorcism 20-10-2016 01:41 AM

رد: شرح كامل لغلق ثغرة SQL Inject at about guild
 
اقتباس:

المشاركة الأصلية كتبت بواسطة Hamza FiGo (المشاركة 5281990)
لا المايجكو معروف ^^

والسورس الاخير هو واحد بس اللي نزل اللي هو فيرجن 5.09 .

الفكرة بقا اني مش عارف احطة فين بالظبط فاهمني ؟ علي حسب معرفتي لحد ناو مش بيتحط في اي مكان وخلاص

يعني في ClientsAgent.cs ولا ClientsGateway.cs ولا فين ولا فين .. لسة الموضوع بالنسبة ليا هياخد وقت

جربت كذا packet مفيش بردة

http://i.epvpimg.com/Fm09c.jpg

هيتحط في Client Agent
ممكن لنك السورس اخر فيرجن ده

Hamza FiGo 20-10-2016 01:45 AM

رد: شرح كامل لغلق ثغرة SQL Inject at about guild
 
ClientAgent ولا SideAgent متلخبطونيش اكتر منا مش فاهم حاجة ^^

ودا اللينك بتاع السورس HERE. انت تامر

هيطلع عينك في الترجمه بس ^^


الساعة الآن 12:42 AM.

Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2024, vBulletin Solutions, Inc.