الفريق العربي للهندسة العكسية
مشكلة كسر 1s*t Mass Mai**r - نسخة قابلة للطباعة

+- الفريق العربي للهندسة العكسية (https://www.at4re.net/f)
+-- قسم : منتديات الهندسة العكسية - Reverse Engineering Forums (https://www.at4re.net/f/forum-4.html)
+--- قسم : الأسئلة والإستفسارات، حلول المشاكل و تبادل الخبرات - Expert Exchange Newbie Questions Answers (https://www.at4re.net/f/forum-36.html)
+--- الموضوع : مشكلة كسر 1s*t Mass Mai**r (/thread-1439.html)



مشكلة كسر 1s*t Mass Mai**r - sunnytoken - 19-02-2020

Sad Sad  السلام عليكم 
اسم البرنامج : 1st Mass Mailer
الحماية : غير محمي 
مرفق : 
[صورة مرفقة: Kn4I0.png]
المسكلة بعد كسر البرنامج..ايجاد بداية الروتين تم كسر البرنامج عن طريق ال stupid ^patching ولم تنجح لكن جربت احد طرق الاخوان ونجحت معي حيت قمت بدخول الى داخل ال CALL وتغيير PUSH ب MOV AL,1 ونحت الطريقة 
... صور : 
[صورة مرفقة: Kn9vD.png]
[صورة مرفقة: Knwe2.png]
[صورة مرفقة: KnASb.png]
بعدها تم كسر البرنامج بنجاااااح لكن 
[صورة مرفقة: KnOAU.png]
[صورة مرفقة: Knycp.png]
لكن عند اعادة تشغير البرنامج جميع التغييرات التي اجريتها لم تعد تعمل اي ان البرنامج لم يكسر حتى عندما اقوم بعمل patch لاينجح
المرجو شرح الاسطر التي تم تغييرها لتوضيح الخطأ وشكرا لكم على وقتكم  takecare takecare takecare takecare



RE: مشكلة كسر 1s*t Mass Mai**r - the9am3 - 19-02-2020

وعليكم السلام 
اخي العزيز 
بالبداية نبحث عن String الخطاء Registration code invalid

وبعدها نذهب الى بداية الروتين 

[صورة مرفقة: 1.png]

صع نقطة توقف على الاماكن المحددة 

النداء هذا مسوؤل عن خوارزمية التسجيل 

ندخل النداء 

[صورة مرفقة: 2.png]

اقراء الاكواد شوية راح تفهم انو الشرط لازم يكون طول احرف السريال 14 
هذه خوارزمية السيريال المهم 

انت ادخل 14 حرف بعدها تتبع الروتين الى ان تصل الى 

[صورة مرفقة: 3.png]

ببساطة غير ال sete الى setne 

ومبروك تم الكسر


RE: مشكلة كسر 1s*t Mass Mai**r - sunnytoken - 19-02-2020

(19-02-2020, 04:48 PM)the9am3 كتب : ببساطة غير ال sete الى setne 

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


RE: مشكلة كسر 1s*t Mass Mai**r - TeRcO - 19-02-2020

لأبسط لك الفكرة:
SETNE => Set if Not Equal
SETE => Set if Equal


بخوارزميه التسجيل للبرنامج (المكان الذي أشار اليه الأخ  the9am3 ):
مقارنة طول السيريال => 14  +  07 مقارنات حول السيريال الصحيح 
2x935xx94x0xxx
فاذا تحققت .......... تحققت المقارنة الاخيرة 
CMP DWORD PTR SS:[EBP-8],7
SETE BYTE PTR SS:[EBP-1]
أي
BYTE PTR SS:[EBP-1] = 1
وبالتالي :
 MOV AL,BYTE PTR SS:[EBP-1] وكأنها  MOV AL,1


فعند ادخال سيريال غير صحيح .... لا يتحقق الشرط الاخير
أي:
BYTE PTR SS:[EBP-1] = 0
وبالتالي :
 MOV AL,BYTE PTR SS:[EBP-1] وكأنها  MOV AL,0
 ولا يقبل التسجيل


لذا قمنا بتغيير التعليمة  من:
SETE
الى
SETNE
وجعله يقبل اي سيريال


RE: مشكلة كسر 1s*t Mass Mai**r - sunnytoken - 20-02-2020

أسأل الله العظيم في هذه الساعة أن ينزل عليكم من سحائب رحماته وفيض بركاته ما تطمئن به نفسكم وتتحقق به أمانيكم اللهم وفقهم لحمدك وشكرك وأدم عليهم عفوك وسترك والبسهم لباس العافية يسر الله أموركم وشرح صدركم وبارك فيكم وحفظكم من كل شر.
شكرا لكم جميعا.