اخوي allko
انت فاهم السالفة غلط
البرنامج المطروح مافيه اسم مستخدم ولا كلمة مرور
هو يبغاك تسوي له Un-Packing
ياليت من الاخوة اللي يكسرون حماية اي برنامج ينزلون الطريقة هنا ;)
اخوي allko
انت فاهم السالفة غلط
البرنامج المطروح مافيه اسم مستخدم ولا كلمة مرور
هو يبغاك تسوي له Un-Packing
ياليت من الاخوة اللي يكسرون حماية اي برنامج ينزلون الطريقة هنا ;)
اخى الحبيب انا إستخدمت طريقة غير احترافيه:
عملت نقطة توقف عند اول مسج بوكس وبعد كدا تابعت يدوياً ب F8 , وكل ما اكتشف إن البرنامج عايز ينط للمنطقة المحظوره اغير الjump واخليه يواصل..
يمكن بالغت لما قلت 10 ثوانى ولكن الوقت الذى يستغرقه تحميل البرنامج وفتحه وتجربته مره ثم فتحه من خلال ollydbg ووضعت نقطة توقف, كل هذا لا يحسب من وقت الحل, لذلك العملية لم تستغرق اكثر من دقيقه او دقيقه ونصف على اعلى تقدير...
على كل حال مش مهم الوقت فى بداية الامر المهم هو الوصول إلى الحل الصحيح....
والسلام عليكم
لا إله إلا الله محمد رسول الله
busbar : يجب ان تدرك انه هناك حد ادنى للمعرفة المطلوبة قبل البدء في عمل أي شئ.
الاخ احمد غريب موضوع التعديل على اوامر القفز Jumps غير مطلوب في التطبيق المرفق
اعتقد ان المطلوب كتابة KeyGen لايجاد السيريال لأي اسم مدخل
===========
بعيدا عن ذلك قمت بكتابة تطبيق بسيط جدا بواسطة الفيجول بيسك يقوم بعرض نافذة وبعد الضغط على زر فيها ينقلك للشاشة الرئيسية للبرنامج .. المطلوب هو حذف هذه الشاشة بحيث تفتح الشاشة الرئيسية مباشرة عند تشغيل التطبيق
اعتقد ان عمل KeyGen لهذا البرنامج ليس بالامر السهل, ولا اعتقد انه للمبتدئين, والمشكله هى ان الدالة التى تقوم بعمل السيريال مقسمه إلى عدة اماكن, حتى عملية التشفير مقسمه, جزء منها تقوم بعلم xor 15 وجزء اخر xor 23 إيه يا عم إنتو عايزين تعقدو المبتدئين ولا إيه بالظبط..
انا توقعت المسئله هى فك حماية البرنامج او العثور على سيريال يدياُ, ودا يعتبر تمرين ممتاز للمبتدئين, اما عمل كي إنسى وخلى الناس تاكل عيش...
لا إله إلا الله محمد رسول الله
busbar : يجب ان تدرك انه هناك حد ادنى للمعرفة المطلوبة قبل البدء في عمل أي شئ.
يا شباب البرنامج تاع packing هادا مش مفهوم اصلا
يا ريت نركز شوية على crackme الي انا ارفقته او ازا اي حد حابب يرفق اي ملف تاني مش مشكلة
المهم فهمونا كيف ممكن نحله حل مناسب للمبتدئين
خلي الـ mPack النا وخليكم بالـ crackme الخاص بـزميلي shakras.. اخي allko في المقال المرفق وضحت كيف يمكن الحصول على السيريال الصحيح.. موضوع عمل keygen له ليس بالامر الصعب حالما تفهم الية توليد السيريال اوكيه ;)
Do as I say, not as I do
We are Anonymous. We are Legion. We don't forgive. We don't forget
عمل KeyGen مش صعب لهذا البرنامج , البرنامج بيغير يا دوب ثلاثة حروف في السيريال وبيأخذهم مباشرة من اسم المستخدم
هو بيضع الحروف (1و2و3) من اسم المستخدم في مكان الحروف (5و6و7) في السيريال
وباقي السيريال ثابت باستمرار
لا اخى الحبيب السيريال مش ثابت, هناك مشكله وهى انه يقسم عدد الاحرف على ثلاثه وبعدين يضيف إلى باقى القسمه اثنين وعلى هذا الاساس يقوم بعمل key يعنى المسئله فيها خدعه فى نص الكود. راجع الكود تانى واكيد حتكتشف المسئله..
لا إله إلا الله محمد رسول الله
busbar : يجب ان تدرك انه هناك حد ادنى للمعرفة المطلوبة قبل البدء في عمل أي شئ.
انا شايف إن المسئله اصبح فيها تحدى ولان لابد ان ابداء بكتابة key gen. للبرنامج..
لا إله إلا الله محمد رسول الله
busbar : يجب ان تدرك انه هناك حد ادنى للمعرفة المطلوبة قبل البدء في عمل أي شئ.
الموضوع رائع جدا شكرا لكل القائمين عليه والمشاركين فيه ..
بالنسبة للبرنامج الذي وضعه الأخ bmbsa والمسمى remove-me-bmbsa.zip
هل يمكن أن يكون المطلوب ليس حذف الفورم الأول ولكن تجاوزه فقط بحيث يظهر في بداية التشغيل
ثم يختفي تلقائيا ويظهر الفورم الثاني مباشرة ...
هل يمكن ذلك أم لا ؟؟
نعم اخي شادي هذا ممكن وفي المرفقات ستجد التطبيق بعد تجاوز الفورم الاول وعرض الثاني مباشرة بمجرد تشغيله <_<
خي bmbsa ممكن توضيح للطريقة التي اتبعتها ؟
وهل يمكن وضع برنامج يقوم باغلاق الفورم الأول ؟؟
الطريقة سهلة جدا باستخدام SmartCheck + OllyDbg
إذا كان لديك خلفية عن طريقة استخدام هالبرنامجين سأقوم بشرحها لك لاحقا ان شاء الله
بالنسبة لكتابة برنامج يقوم بإغلاق الفورم الاول آليا فهذا ممكن جدا باستخدام دوال الويندوز API اما SendMessage أو CloseWindow
فيه تحدي بالموضوع؟ :D
Do as I say, not as I do
We are Anonymous. We are Legion. We don't forgive. We don't forget
بالمناسبة، بالنسبة للملف اللي ارفقه الاخ bmbsa اذا بتفهم تركيبة الملف الخاص بالفيجوال بيصير الموضوع اسهل بكتير :) اذا بتحب بعطيك مرجع انكليزي او بشرح الموضوع بالعربي :P
يمكن يكون بـ SC اسهل .. ما جربته
على كل شوف
اذا بستبدل العنوان الخاص بالقفزة تبع الـ load بالـ unload بتوصل للفورم التاني فورا :D
كيف بتقدر تطبق هالشي على تطبيقات الفيجوال هو حديثنا اذا بدك شرح بالعربي..
تم تعديل هذه المشاركة بواسطة Xacker في 20 سبتمبر 2005 في 00:57
Do as I say, not as I do
We are Anonymous. We are Legion. We don't forgive. We don't forget
السلام عليكم
تم بحمد الله عمل key gen واستغرق قرابة الساعتين للاسف لن استطيع ان اشرح الطريقه الان لضيق الوقت ولكن إن شاء الله فى نهاية الاسبوع...
إلى ذلك الحين يمكنكم الاطلاع على الشفره ومحاولة فهم ما يجرى....
والسلام عليكم
لا إله إلا الله محمد رسول الله
busbar : يجب ان تدرك انه هناك حد ادنى للمعرفة المطلوبة قبل البدء في عمل أي شئ.
الاسمبلى إدمان يا X وإنتا عارف الكلام دا اكيد...
لا إله إلا الله محمد رسول الله
busbar : يجب ان تدرك انه هناك حد ادنى للمعرفة المطلوبة قبل البدء في عمل أي شئ.
ادمان وبس ;) معك حق.. كتابة keygen بياخد وقت اطول من الادمان اكتر من اللي بياخده كتابة loader او keygen injecting :D
Do as I say, not as I do
We are Anonymous. We are Legion. We don't forgive. We don't forget
تحت تاثير المهدئ القوي الذي اخذته.. LinkinPark/NUMB توصلت حتى الان الى ما يلي بالنسبة للمف المضغوط..
1- حصلت على الملف بدون ضغط.
2- لكن ال ITA ما زال يشير الى عناوين خطا يبقى لدي اصلاحه..
3- قمت باصلاح جزء من ال IAT FirstThunk(s) ولاني مستعجل الان ساترك الباقي لحين العودة.
البرنامج جيد جدا اخي DeltaAziz وسازودك بملاحظاتي حالما انتهي منه.
تحياتي
Do as I say, not as I do
We are Anonymous. We are Legion. We don't forgive. We don't forget
صحيح , السيريال مش ثابت , هو له ثلاث حالات , وتحدد من باقي قسمة عدد حروف الاسم على 3
فإما أن يكون الباقي 0 أو 1 أو 2.
توجد طريقتين لعمل مولد للسيريال:
1 - اننا نخزن سيريال الثلاث حالات ونختار منها بعد قياس عدد حروف الاسم , ثم نأخذ الحروف الثلاثه الأول في الاسم ونضعهم مكان الحروف 6و7و8 في السيريال
2 - اننا نستخرج طريقة التوليد للسيريال من البرنامج نفسه ونضعها مع التعديل لتصلح لتوليد هذا السيريال
وهذا هو الكود المستنتج بعد التعديل لأداء الوظيفه كامله
PUSH 14h ; Count = 14 (20.) PUSH OFFSET UserName ; Buffer = crackme_.0040211A PUSH 65h ; ControlID = 65 (101) PUSH DWORD PTR SS:[EBP+8]; hWnd CALL GetDlgItemTextA ; GetDlgItemTextA CMP EAX, 3 JLE MsgNotEnough XOR EDX, EDX MOV ESI, 3 DIV ESI ADD EDX, 2 MOV ESI, EDX MOV EDI, 4 MOV EAX, ReferenceString-a; ASCII "NBALEBRONJAMES23" MOV EDX, SerialBuffer1 Loop1: MOV CL, BYTE PTR DS:[EAX] XOR CL, 36h ; CL = CL XOR (23h XOR 15h) MOV BYTE PTR DS:[EDX], CL ADD EAX, ESI INC EDX DEC EDI TEST EDI, EDI JNZ SHORT Loop1 MOV EDI, 4 MOV EAX, ReferenceString-b; ASCII "CARMELOANTHONY15" MOV EDX, SerialBuffer10 Loop2: MOV CL, BYTE PTR DS:[EAX] XOR CL, 36h ; CL = CL XOR (23h XOR 15h) MOV BYTE PTR DS:[EDX], CL ADD EAX, ESI INC EDX DEC EDI TEST EDI, EDI JNZ SHORT Loop2 MOV EDX, SerialBuffer5 MOV BYTE PTR DS:[EDX], 2Dh MOV EDX, SerialBuffer9 MOV BYTE PTR DS:[EDX], 2Dh MOV EDX, SerialBuffer6 MOV EAX, UserName MOV EDI, 3 Loop3: MOV CL, BYTE PTR DS:[EAX] MOV BYTE PTR DS:[EDX], CL INC EDX INC EAX DEC EDI TEST EDI, EDI JNZ SHORT Loop3 ; Done
نحصل على السيريال في المتغير المسمى SerialBuffer
وحاشوف الكود بتاعك يا أخ أحمد يمكن يكون طريقه تانيه :D
طلع نفس الطريقه , والاختلاف في شكل الكود بسيط
اقتباسيا رجال ارحم حالك عندك مشروع بدك تخلصه كنت اعمل loader وخلاص
ممكن استفسار, ما هو الـ loader الذي تقصده ؟
bmbsa كتب:الطريقة سهلة جدا باستخدام SmartCheck + OllyDbgإذا كان لديك خلفية عن طريقة استخدام هالبرنامجين سأقوم بشرحها لك لاحقا ان شاء الله
نعم أخي لدي خليفة عن هذين البرنامجين وسأكون شاكر جدا لشرحك الطريقة .
bmbsa كتب:الطريقة بالنسبة لكتابة برنامج يقوم بإغلاق الفورم الاول آليا فهذاممكن جدا باستخدام دوال الويندوز API اما SendMessage أو CloseWindow
ان سمح وقتك ياليت تشرح لي الطريقة ..
Xacker كتب:بالمناسبة، بالنسبة للملف اللي ارفقه الاخ bmbsa اذا بتفهم تركيبة الملف الخاص بالفيجوال بيصيرالموضوع اسهل بكتير اذا بتحب بعطيك مرجع انكليزي او بشرح الموضوع بالعربي
أخي Xacker لو تكرمت أنا في حاجة لشرحك حول هذه النقطة وياليت بالعربي ..
تحياتي
شاكراً لكم هذا الموضوع الهام والمتألق
بس لدى سؤال حول كسر حماية البرامج
التى يتم التسجيل فيها عبر الانترنت
هليمكن كسره
رُب ( وامعتصماه ) إنطلقت *** ملْء أفـواه الصبايا اليُتـم
لامـسـت أسْـماعـهـم لاكـنهـا *** لمْ تلامس نخْوة المعتصم
الـ loader تطبيق يقوم بفتح الملف التنفيذي الذي تنوي تعديله وعند نقطة معينة يقوم بايقاف التنفيذ.. هناك عدة طرق للقيام بذلك. غالبا ما يستخدم في تعديل البرامج المشفرة والمحمية في الذاكرة حيث يقوم بايقاف التنفيذ والتعديل بعد فك الحماية والوصول الى خوارزميات البرنامج الاصلي :) بالنسبة للتطبيق السابق استخدام الـ loader كان بيسمح بانه نعمل indexing لكل بايت ونجمعهم مع بعض ونعرض السيريال الصحيح برسالة عند ادخال اسم ما وبالتالي هو ليس بتعديل على كود التطبيق مثل الـ inline keygening وهذا يفيد في تخطي خوارزيات تدقيق الجموع CRC.
اخي او اختي Yemen.. نعم يمكن ذلك لكنه سيكون اصعب من غيره من التطبيقات حيث اننا سنحتاج الى تدقيق البرنامج بالكامل بحثا عن اتصال بالانترنيت ونعكس القيم المرتجعة.
اخ شادي باذن الله حالما اتفرغ ولو قليلا ساضع الطريقة بالكامل.
تحياتي
Do as I say, not as I do
We are Anonymous. We are Legion. We don't forgive. We don't forget
هذا الموضوع مغلق.