تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
خوارزمية متعبة
#1
السلام عليكم ورحمة الله وبركاته


كنت احاول ان اقوم بعمل كراك لبرنامج ولكن اتعبني جداً  ، البرنامج غير محمي ابداً ومبرمج بالفيجول بيسك 

تحليل البرنامج :

1. عند فتح البرنامج يتأكد من وجود usb فيها ملف التفعيل ، فأذا كان غير موجود لا يتخطى التفعيل
2. بأمكاني الدخول على Demo ولكن بشرط تفعيله بعدة خيارات ( اذا كان لدي مفتاح تفعيل ، طلب مفتاح تفعيل مؤقت ، من usb )


حاولت كسر هاتي الجزئيتين ولكن اتعبني جداً ، حاولت ايجاد المكان الذي يقوم بالمقارنة فيه لم استطع ذلك 




موقع البرنامج : يحتاج لتسجيل لتحميل البرنامج 32 او 64
إقتباس :https://www.sensoft.ca/products/ekko-project/overview/


الروتينات التي وجدتها :


1. الاول يقوم بالتاكد من ان البرنامج مفعل ام لا 
69E62110 | 55                       | PUSH EBP                                      |

2. الروتين الثاني لو دخلت على Demo ووضعت اي سيريال لحتى اعرف وين المقارنة 

69F9C3B0 | 55                       | PUSH EBP                                      |



3. وهذا الروتين الثالث اذا كان السيريال صحيح ام لا 

69E69FD0 | 55                       | PUSH EBP                                      |



https://imgur.com/V1ZIwL0


[صورة مرفقة: V1ZIwL0]
أعضاء أعجبوا بهذه المشاركة :
#2
لو رفعت ملف التنصيب على سيرقر خارجي و أرفقته في موضوعك لكان أفضل حتى يتسنى لنا المحاولة
أعضاء أعجبوا بهذه المشاركة : Untold
#3
من الموقع نفسه ، يوجد نسختين 32 و 64
إقتباس :نسخه 32

https://www.mediafire.com/file/n9nbb4s0c...t.zip/file


نسخه 64 :
https://www.mediafire.com/file/cez6gf99b...t.zip/file
أعضاء أعجبوا بهذه المشاركة : samoray , rce3033
#4
أستسمحك للكتابة باللأنجليزي

this software uses a cryptolicense service, it uses (Crypkey license service) if you dig inside the installation folder you can find a dd named :  SoftwareRegistration2.dll
all the licensing logic is inside this dll
[صورة مرفقة: CulNSeQ.png]

see those functions inside the dll:

[صورة مرفقة: 36ce5Uo.png]
that was my simple examination of the target, I'll dig deep into the scheme and let you know...
أعضاء أعجبوا بهذه المشاركة : rce3033
#5
اخي ارجو فحص البرنامج البرنامج ليس فيجوال بيسك البرنامج مبرمج بالــ c++

داخل ملف SoftwareRegistration2.dll

هذه القفزة تحدد هل البرنامج كامل او غير مسجل يجب ان يكون قيمة EAX == 6

وهذا هو العنوان 
RVA = 21E4
[صورة مرفقة: 7FKsxlx.png]
أعضاء أعجبوا بهذه المشاركة : rce3033
#6
كلامك صحيح ليس فيجول بيسك، ، سقطت مني سهواً وليس قصداً

هل اقوم بتعديل المقارنه بكتابة
mov eax,6 ام انها غير صحيحه من ناحية التعديل
أعضاء أعجبوا بهذه المشاركة :
#7
(27-06-2020, 06:21 PM)Untold كتب : هل اقوم بتعديل المقارنه بكتابة
mov eax,6 ام انها غير صحيحه من ناحية التعديل

أفضل شيء هو إيجاد مكان كتابة القيمة والتعديل فيه.
من طلب العلا ... سهر الليالي
أعضاء أعجبوا بهذه المشاركة : rce3033
#8
عدلت هذا العنوان

680721DE | B8 06000000              | MOV EAX,0x6                                   |

واشتغل البرنامج ولكن مع رسالة خطأ ولكن اعتقد كل خصائصه غير شغاله 
العنوان كان قبل التعديل 

681921DE | 8D46 03                  | LEA EAX,DWORD PTR DS:[ESI+0x3]                |

هل هذا الباتش صحيح ام خاطئ ويجب ان ابحث افضل من ذلك
أعضاء أعجبوا بهذه المشاركة :
#9
من الأخطاء التي ممكن أن نرتكبها هي التطبيق دون فهم آلية العمل
ركز على ما يحمله المسجل eax و مقارنته مع العدد 6 و القفزة المشروطة  ja أي اقفز إذا كان الهدف فوق المصدر أي eax أعلى من 6 ثم بعدها قفزة غير مشروطة jmp إلى محتوى عنوان الذاكرة [65652874+eax*4] إذن المتغير الوحيد هنا هو المسجل eax و الذي يحدد الذهاب إلى العنوان المناسب أو هكذا أرى من خلال الصورة ربما أكون مخطئ لأني لم أجرب بشكل تطبيقي
أعضاء أعجبوا بهذه المشاركة :
#10
(27-06-2020, 11:53 PM)fantazma كتب : محتوى عنوان الذاكرة [65652874+eax*4] إذن المتغير الوحيد هنا هو المسجل eax و الذي يحدد الذهاب إلى العنوان المناسب

تحليلك صائب و لكن البرنامج يتطلب عمل باتش في عدة عناوين
العنوان المذكور أعلاه لا يحدد سوى نوع activation status و لا يحدد اذا كان البرنامج مسجل أو لا
أعضاء أعجبوا بهذه المشاركة : Untold , rce3033


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


يقوم بقرائة الموضوع: بالاضافة الى ( 2 ) ضيف كريم