امتیاز موضوع:
  • 4 رأی - میانگین امتیازات: 5
  • 1
  • 2
  • 3
  • 4
  • 5
آغازی برای کراکینگ
نویسنده پیام
armintirtapar آفلاین
كاربر تک ستاره
*

ارسال‌ها: 41
موضوع‌ها: 2
تاریخ عضویت: فروردین ۱۳۸۹

تشکرها : 73
( 126 تشکر در 50 ارسال )
ارسال: #23
RE: آغازی برای کراکینگ
سلام، آقا درسته این تاپیک خیلی قدیمیه، ولی یه سوال داشتم، من تمام کارایی که برا کرک این ocx باید انجام میدادی رو انجام دادم ولی بازم ارورش میاد، همه ی شرط ها هم نات کردم ولی ...

مشکل از کجاست؟

اینم خود فایل که تغییرش دادم:
.rar   HelpVistaXPProject2.rar (اندازه: 555.95 KB / تعداد دفعات دریافت: 147)

--------------------
راستی این تاپیک دیگه چرا ادامه پیدا نکرده؟

------------------------------------------------------------------------------------------------------------------------------------------

آقا مشکلم حل شد، اشکالم اینجا بود که وقتی فایل رو کپی کرده بودم تو محل نصب برنامه اون 2 ه آخرش رو بر نداشته بودم! Biggrin

امکان حذف پست نداشتم، مدیران اگه میدونن اضافی هست، حذفش کنن.


همیشه تعداد پست ها نشانه ی خوبی برای تعیین عنوان کاربری نیست!033
(آخرین ویرایش در این ارسال: ۲۴-اردیبهشت-۱۳۸۹, ۱۶:۴۳:۵۹، توسط armintirtapar.)
۲۴-اردیبهشت-۱۳۸۹, ۰۴:۰۵:۰۷
ارسال‌ها
پاسخ
تشکر شده توسط : WhiteNoise
sadra1234 آفلاین
كاربر دو ستاره
**

ارسال‌ها: 122
موضوع‌ها: 6
تاریخ عضویت: بهمن ۱۳۸۷

تشکرها : 97
( 81 تشکر در 47 ارسال )
ارسال: #24
RE: آغازی برای کراکینگ
جناب didi
اگه امکانش هست این تاپیک را رونق بدین
کار را به یه جایی برسانید
۳۰-آبان-۱۳۸۹, ۱۴:۵۹:۰۳
ارسال‌ها
پاسخ
تشکر شده توسط : WhiteNoise
Di Di آفلاین
مدير بخش هك و كرك
*****

ارسال‌ها: 2,358
موضوع‌ها: 116
تاریخ عضویت: اسفند ۱۳۸۵

تشکرها : 1816
( 4046 تشکر در 1321 ارسال )
ارسال: #25
RE: آغازی برای کراکینگ
به روي چشم

اگه ادامه ندادم يه علتش اين بود كه انگار همه بلد بودن كس هم مشكل خاصي نداشت!

(آخرین ویرایش در این ارسال: ۳۰-آبان-۱۳۸۹, ۲۳:۴۹:۴۰، توسط Di Di.)
۳۰-آبان-۱۳۸۹, ۲۳:۴۷:۵۶
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : WhiteNoise, t3r!p3000, ehsanmae
sadra1234 آفلاین
كاربر دو ستاره
**

ارسال‌ها: 122
موضوع‌ها: 6
تاریخ عضویت: بهمن ۱۳۸۷

تشکرها : 97
( 81 تشکر در 47 ارسال )
ارسال: #26
RE: آغازی برای کراکینگ
چشمتون بی بلا
منتظریم یه اموزش بی نظیر بشه
پس بسم الله
۰۱-آذر-۱۳۸۹, ۰۹:۳۳:۲۷
ارسال‌ها
پاسخ
تشکر شده توسط : WhiteNoise
WhiteNoise آفلاین
مدیر بازنشسته
*****

ارسال‌ها: 941
موضوع‌ها: 21
تاریخ عضویت: مرداد ۱۳۸۹

تشکرها : 8104
( 7796 تشکر در 3061 ارسال )
ارسال: #27
RE: آغازی برای کراکینگ
من هم واقعا خیلی خوشم اومد
میخوام برا اولین بار شروع کنم
هیچیم از کرک حالیم نیست
فقط در همین هدی که شما اینجا گفتی
ممنون میشیم همینجوری از سطح صفر ادامه بدید
فقط یه چیزی
من این ندیباگرو دارم
از همین جا که خودتون گزاشتین دانلود کردم
ابزار کرک
فقط هر کاری میکنم نمیتونه این فایل های OCX رو بخونه میگه :
[تصویر:  af1c82a5aec347e58959.GIF]
نمیدونم چی کارش کنم
اون پلاگاینی که گفته بودینم کپی کردم ولی فرقی نکرد
(آخرین ویرایش در این ارسال: ۰۲-آذر-۱۳۸۹, ۲۳:۳۷:۱۵، توسط WhiteNoise.)
۰۲-آذر-۱۳۸۹, ۲۳:۲۱:۰۰
ارسال‌ها
پاسخ
Di Di آفلاین
مدير بخش هك و كرك
*****

ارسال‌ها: 2,358
موضوع‌ها: 116
تاریخ عضویت: اسفند ۱۳۸۵

تشکرها : 1816
( 4046 تشکر در 1321 ارسال )
ارسال: #28
RE: آغازی برای کراکینگ
خوب این پیغام که طبیعیه، بعد از کلیک بر روی yes باید برنامه داخل دیباگر لود بشه.

۰۳-آذر-۱۳۸۹, ۲۰:۰۲:۱۹
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : t3r!p3000
WhiteNoise آفلاین
مدیر بازنشسته
*****

ارسال‌ها: 941
موضوع‌ها: 21
تاریخ عضویت: مرداد ۱۳۸۹

تشکرها : 8104
( 7796 تشکر در 3061 ارسال )
ارسال: #29
RE: آغازی برای کراکینگ
لود شد
کلی گشتم اون قستم رو هم که گفتین پیدا کردم تو برنامه
نقل قول:
کد php:
111B8F68   .  68 C0C60211   push    1102C6C0           ;  UNICODE "Your 20 days trial period has elasped." 
ولی اون قسمت های جامپو پیدا نکردم
۰۳-آذر-۱۳۸۹, ۲۲:۱۶:۲۹
ارسال‌ها
پاسخ
Di Di آفلاین
مدير بخش هك و كرك
*****

ارسال‌ها: 2,358
موضوع‌ها: 116
تاریخ عضویت: اسفند ۱۳۸۵

تشکرها : 1816
( 4046 تشکر در 1321 ارسال )
ارسال: #30
RE: آغازی برای کراکینگ
اونم كمي بيشتر دقت كني پيدا مي شهWink

۰۴-آذر-۱۳۸۹, ۰۲:۰۱:۵۸
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : t3r!p3000
Di Di آفلاین
مدير بخش هك و كرك
*****

ارسال‌ها: 2,358
موضوع‌ها: 116
تاریخ عضویت: اسفند ۱۳۸۵

تشکرها : 1816
( 4046 تشکر در 1321 ارسال )
ارسال: #31
RE: آغازی برای کراکینگ
سلام

خوب هستید

بعد از مدتها وقتی پیدا کردم تا یک آموزش دیگه در مورد کرک برای دوستان خوبم آماده کنم. سعی کردم آموزش ها رو به صورت تقریبا مستند در بیارم تا دوستانی که مثل خودم مبتدی هستند بهتر و راحتتر اون رو یاد بگیرند. امیدوارم برای دوستانی که به کرک علاقه دارند مفید و آموزنده باشه.

---------------------------------------------------------------------------------------

هدف : پچ کردن فایل Codejock.Controls.v13.3.1.Demo.ocx برای خلاصی از شر "نگ اسکرین"

نوع حفاظت : تعیین Demo بودن برنامه به صورت آنلاین و نمایش نگ اسکرین

درجه سختی : 1 از 10

سطح آموزش : مبتدی

ابزارهای مورد نیاز :

PEID

OllyDbg


مقدمه :

این بار برای آموزش این فایل OCX رو انتخاب کردم چون علی رغم وسایل و امکاناتی که برای کرک نشدن برنامه به کار گرفته شده اما به علت استفاده نا درست و غیر اصولی از این ابزارها به راحتی می شه اون رو پچ کرد ، بلایی که کم و بیش بر سر تولید کنندگان داخلی نرم افزار هم می یاد و برنامه های اونها هرچند توسط قفل های گران قیمتی محافظت می شوند اما ضعف برنامه نویس در بکار بردن صحیح قفل در برنامه باعث می شه برنامه به طوری باورنکردنی ساده و سریع کرک بشه.( بعدا در این رابطه بیشتر بحث خواهیم کرد )


کمی در مورد : Codejock.Controls.v13.3.1.Demo.ocx

همانطور که از اسمش پیداست یک فایل OCX شامل کنترلها و آبجکتهایی است که توسط شرکت CodeJock برای استفاده برنامه نویسان تهیه شده. شما می تونید در محیط VB6 این OCX رو به پروژتون اضافه کرده و از آبجکتهای آماده اون برای هرچه زیباتر شدن برنامه ای که می نویسید استفاده کنید.
اما مشکل اینجاست که باید برای استفاده از اون یک لیسانس از شرکت سازنده بخرید در غیر این صورت با یک نگ اسکرین آزار دهنده در هنگام اجرای برنامه تون مواجه خواهید شد. در قسمت بعدی توضیحات بیشتری در مورد طرح حفاظتی این OCX خواهم داد.


شروع

برای شروع ابتدا فایل Demo این OCX رو از سایت شرکت دانلود می کنیم. سپس وارد محیط VB6 می شیم و این OCX رو به پروژمون اضافه می کنیم، سعی کنید یک پروژه جدید و خالی از هر گونه کد یا چیز دیگه ای بسازید، فقط یکی از این آبجکتهای مربوط به OCX رو به فرم برنامه اضافه کرده و برنامه رو کامپایل کنید.
دیگه به VB6 احتیاجی نداریم ، اون رو می بندیم و به سراغ برنامه ای که الان کامپایل کردیم می ریم و اون رو اجرا می کنیم.
خوب قبل از هر چیز با این پنجره مواجه می شیم، OCX به سایت شرکت سازنده متصل می شه تا خودش رو اکتیو کنه .

[تصویر:  ipzbie.jpg]

اما در نهایت با پیغام خطای Can not Active! مواجه می شیم و برنامه کلا بسته می شه.
( چنانچه در هنگام اجرای برنامه به اینترنت متصل نباشید با پیغام خطای عدم موفقیت در ارسال و در یافت از اینترنت مواجه شده و در نهایت پیغام Can not Active! نمایش داده می شود )



طرح حفاظتی بررسی صحت آنلاین، قدرتمند یا کرک شدنی؟

در اولین نگاه با یک طرح حفاظتی مواجه هستیم که در هر بار اجرای برنامه از ما می خواد تا به سایت سازنده متصل بشه تا صحت لیسانسش رو چک کنه. یعنی چیزی شبیه به همون کاری که برنامه های آنتی ویروس از اون استفاده می کنند ، در برنامه هایی که به این شکل محافظت می شن معمولا کار زیادی از دست کرکر بر نمیاد چرا که همه تلاش ها حتی برای ساخت کیجن نیز با اتصال برنامه به سایت سازنده و چک شدن صحت کد بی اثر خواهد ماند.

استفاده از این نوع طرح های حفاظتی مستلزم یک سرور قوی و حفاظت شده است ضمن این که مشتریان شما باید برای استفاده از برنامه حتما به شبکه متصل بشن که این باعث بالارفتن هزینه ها و دردسرها برای مشتری و نهایتا بالاتر رفتن ریسک خرید خواهد شد که می تونه باعث افت تعداد مشتریان بالقوه شما بشه.

همه اینها رو باید با هزینه تهیه و تولید چنین طرح حفاظتی نیز جمع کنیم تا دریابیم این شرکت چه هزینه زیادی رو صرف ایجاد امنیت برای محصول خود کرده، اما در ادامه من به شما نشون می دم چطور برنامه نویسان شرکت با سهل انگاری در بکارگیری این طرح حفاظتی باعث می شن تا ما این طرح رو به زانو در بیاریم. پس با من باشید تا در ادامه از کرک این OCX لذت ببریم.


گام اول : جمع آوری اطلاعات

در اولین قدم فایل OCX رو با PEID باز می کنیم تا ببینیم با چه چیزی پک یا نوشته شده؟

[تصویر:  2q87qqs.jpg]

علتش رو نمی دونم اما در هر صورت برنامه با هیچ نوع پکر یا پروتکتوری محافظت نشده! واقعا عجیبه این طور نیست؟
*برنامه به زبان شیرین C++ نوشته شده
خوب حالا که برنامه نویس این طور خواسته ما هم به سرعت دست به کار می شیم و فایل OCX رو داخل دیباگرمون لود می کنیم. چنانچه در هنگام لود کردن OCX با پیغام اخطار یا خطا از جانب OllyDbg مواجه شدید به پست های قبلی مراجعه کنید چون در اونجا این موارد رو کاملا توضیح دادم.

گام دوم : پی بردن به روش کار طرح حفاظتی

همونطور که در آموزش قبل گفته شد " نگ اسکرین ها " معمولا برگترین سرنخ ها رو به دست کرکر می دن، ما می تونیم با پیدا کردن متن پیغام خطا و گذاشتن BP در روتین های مربوط به اون ، برنامه رو درست در جائی که در حال چک کردن رمز یا صحت برنامه است متوقف کرده ، اون رو خط به خط اجرا و احتمالا دستوری که باعث نمایش پیغام خطا می شه رو پیدا کنیم.

برای جستجو کافیست راست کلیک کرده و از منوی باز شده گزینهFor Serch و در زیر منوی آن All Refrenced Text String رو انتخاب کنیم. با انجام این کار لیستی از تمامی متن ها موجود در برنامه برای ما به نمایش در خواهد آمدف حال می تونید داخل اون به دنبال متن مورد نظرتون بگردید. برای این کار بر روی لیست راست کلیک کرده و گزینه Serch for text رو انتخاب کنید.
من کلمه Can’t رو سرچ می کنم و درست در اینجا تمام متن هایی که در پیغام های نگ اسکرین نمایش داده می شدند پیدا می شن.

[تصویر:  e2oo7zc2s7mk2sfud6zh_thumb.jpg]

کاری که باید بکنیم خیلی ساده است ، کافیه بر روی پیغام ها دابل کلیک کرده، و بر روی خود پیغام و نیز در ابتدای روتین های اونها BP بگذاریم . دیگه با فایل OCx کاری ندایم اون رو ببندید و برنامه ای که کامپایل کرده بودید رو داخل OllyDbg لود و با زدن کلید F9 اجرا کنید. برنامه درست در این مکان متوقف می شه :

[تصویر:  j14cy1fo947rhktghiu_thumb.jpg]

به نظر می رسه راه رو تا اینجا درست اومدیم. کار این روتین رو با فشردن متواتر کلید F8 دنبال می کنیم. ملاحظه می کنید در این روتین برنامه ابتدا آدرس شاخه Temp ویندوز رو بدست میاره، در ادامه نام یک فایل Dll رو با استفاده از ورژن فایل OCx تولید می کنه، در اینجا اسم بدست اومده این هست : Codejock.SuitePro.Activator.v13.3.1.dll و سپس داخل شاخه Temp به دنبال اون می گرده، اگر پیداش کرد اون رو اجرا و در غیر اینطورت صفحه مربوط به اکتیور کردن برنامه ( همون نگ اسکرین که تصویر اون در ابتدای آموزش بود ) به نمایش در میاد.

قضیه خیلی جالب شد ، حتما شما هم حدس هایی زدید ، احتمالا این برنامه برای چک کردن لیسانس خود یک فایل DLL کوچک رو از اینترنت دانلود کرده و بر روی سیستم شما اجرا می کند. احتمالا این فایل تنها صحت لیسانس رو چک می کنه و در صورت صحیح بودن شرایط، کد یا آرگمانی رو به فایل OCX اصلی می فرسته که در حقیقت فرمان اجرای OCX محسوب می شه.

خوب اینها همه احتمالاتی هست که باید بررسی بشن پس به برنامه اجازه می دیم کار خودش رو دنبال کنه ما هم قدم به قدم با اون پیش می ریم. می بینیم که برنامه روتین مربوط به دانلود فایل DLL رو اجرا کرده و همونطور که حدس می زدیم یک فایل کوچک ( 13 کیلوبایت ) رو در شاخه Temp ویندوز کپی و اجرا می کنه و بلافاصله پس از عدم تائید صحت برنامه، اون فایل از شاخه Temp حذف می شه، شما می تونید توابع مربوط به حذف فایل رو در ادامه همون روتینی که در بالا بررسی کردیم ملاحظه کنید.

بسیار خوب کمی از مانیتور فاصله بگیرید و به صندلیتون لم بدید، بهتره کمی چاي داغ بنوشید تا ذهنتون بازتر بشه. حالا یک بار دیگه صورت مسئله رو با هم می خونیم:

برنامه ما به محض اجرا چک می کنه ببینه آیا فایل DLL در شاخه Temp وجود داره یا نه، اگه نه اون رو دانلود و اگر وجود داشته باشه اون رو اجراش می کنه، پس از اجرا شدن اون برنامه روتینی رو اجرا می کنه که منجر به نمایش پیغام Can not Active! می شه. و در نهایت ما نمی تونیم برنامه رو درست اجرا کنیم.

حالا سوال اصلی اینه که باید از کجا شروع کرد؟ نقطه ضعف برنامه کجاست؟


گام سوم : کشف باگ های احتمالی برنامه

در قسمت قبل با تریس کردن برنامه در دیباگر تونستیم طرز کار طرح حفاظتی رو درک کنیم حالا وقت اون رسیده که دقت و هوشیاری اون رو محک بزنید. من همیشه از این قسمت کرک بیشترین لذت رو بردم، شما سعی می کنید به برنامه اطلاعات غلط بدید یا اون رو دچار اشتباه کنید ، سر برنامه بلایی می یاریم که برنامه نویسش احتمالا هیچ وقت فکر اون رو نمی کرده مثلا اگه فایل DLL نباشه ولی برنامه رو طوری پچ کنیم که فکر کنه هست چه اتفاقی ممکنه بیافته؟؟

آیا برنامه نویس وقتی می خواسته پیغام Can not Active! رو نمایش بده به این فکر کرده که اگه برنامه اش طوری تغییر کرد که این پیغام نمایش داده نشه چه اتفاقی خواهد افتاد؟ البته به احتمال زیاد نه !! پس بیایید با هم امتحان کنیم و ببینیم برنامه نویس تا چه حد ساده لوح بوده!!
دوباره به سراغ دیباگرمون می ریم و برنامه رو مجددا اجرا می کنیم. برنامه در روتینی که پیغام خطای Can not Active! رو می ده نگه می داریم. در اینجا ما یک دستور Jump داریم که اگه عمل کنه کنترل برنامه به انتهای روتین خواهد رفت.

[تصویر:  1kx69i5nmzymj9brgx_thumb.jpg]

بله دقیقا در آدرس 1006177B یک دستور JNZ داریم ، بهتره اون رو به JZ تغییر بدیم و ببینیم چه اتفاقی می افته....

چقدر جالب ، ما ديگه با پيغام خطا مواجه نشديم و از اون جالبت تر اينكه انگار برنامه ما ديگه بسته نشده و در حال اجراست!
درسته برنامه كاملا داره كار مي كنه!! واقعا چه اتفاقي افتاده؟


فقط جهت اطلاع دوستان برنامه نويس

اين قسمت رو بيشتر براي دوستاني كه مي خوان از برنامه هاشون در برابر كركرها محافظت كنن مي نويسم. آيا متوجه اشتباه بزرگي كه برنامه نويس انجام داده بود شديد؟ همون اشتباهي كه باعث شد برنامه به اين راحتي پچ بشه؟
نويسنده يك تابع در سر راه لود OCX قرار داده، داخل اين تابع يك دستور IF هست كه اگر شرطش برقرار نباشه ، دستورات داخل تابع اجرا مي شن، اين دستورات ابتدا يك پيغام خطا رو نمايش داده و سپس برنامه رو به كلي مي بندند. اين بدترين كاريه كه يه برنامه نويس مي تونه انجام بده، چون ...
حتي مي شه كل اين تابع رو حذف كرد يا جلوي فراخواني اون در برنامه رو گرفت يا ....
اين تابع هيچ تاثيري در روند درست اجرا شدن برنامه نداره
اين تابع نمايش پيغام خطا و بستن برنامه رو با هم انجام مي ده
حتي بدون دانلود اون فايل DLL هم برنامه درست اجرا مي شه
نبايد بلافاصله بعد از تشخيص عدم صحت قفل واكنش _ اونم به اين واضحي!_ نشون داد
نبايد صحت وجود قفل رو تنها با يك IF ساده بررسي كرد


تمرين آخر درس!
خوب ما تا اينجا تونستيم كاري كنيم كه برنامه به درستي اجرا بشه اما اگه اينجوري بخوايم از OCX استفاده كنيم فايده نداره چون هربار كه برنامه رو اجرا مي كنيم اين پيغام خطاهاي اول برنامه به نمايش در ميان. تمرين شما اينه كه ما رو از شر اين پيغام ها هم خلاص كنيد تا يك كرك تميز و خوب انجام داده باشيم. انجام اين كار لذت بخش رو به عهده خودتون مي زارمWink



مي تونيد فايل OCX رو از اينجا دانلود كنيد

.rar   Codejock[1].Controls.v13.3.1.Demo.rar (اندازه: 612.81 KB / تعداد دفعات دریافت: 246)




...:: DiDi ::...




(آخرین ویرایش در این ارسال: ۲۲-آذر-۱۳۸۹, ۰۹:۰۱:۰۲، توسط Di Di.)
۲۲-آذر-۱۳۸۹, ۰۸:۵۵:۰۰
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : ajlajlajl, lord_viper, saeedsmk, eai, bi_kas_kar, arp230, programmer-it
a.eslami آفلاین
تازه وارد

ارسال‌ها: 1
موضوع‌ها: 0
تاریخ عضویت: بهمن ۱۳۸۹

تشکرها : 0
( 0 تشکر در 0 ارسال )
ارسال: #32
RE: آغازی برای کراکینگ
ببخشید یک سوال داشتم . این فایل چه ربطی به برنامه دارد ؟ برای اجرای برنامه باید فایل exe. را اجرا کنیم نه ocx . حالا وقتی که این فایل ocx را کرک کردیم چجوری امتحانش کنیم ؟ باید یک فایل exe. همراهش باشد تا وارد برنامه شویم و ببینیم که کرک شده یا نه . اگه میشه من را راهنمایی کنید .
با تشکر
(آخرین ویرایش در این ارسال: ۲۱-بهمن-۱۳۸۹, ۱۸:۴۴:۱۲، توسط Di Di.)
۲۱-بهمن-۱۳۸۹, ۱۶:۴۲:۱۹
ارسال‌ها
پاسخ
Di Di آفلاین
مدير بخش هك و كرك
*****

ارسال‌ها: 2,358
موضوع‌ها: 116
تاریخ عضویت: اسفند ۱۳۸۵

تشکرها : 1816
( 4046 تشکر در 1321 ارسال )
ارسال: #33
RE: آغازی برای کراکینگ
دوست عزیز

همانطور که خودتون هم اشاره کردید فایل OCX رو نمی شه به تنهایی اجرا کرد، برای اجرای اون باید یک فایل EXE بسازیم

که از کامپوننتهای داخل OCX استفاده کرده باشه، با این کار، همراه با اجرای فایل EXE فایل OCX هم به اجرا در میاد .

۲۱-بهمن-۱۳۸۹, ۱۹:۰۱:۱۰
وب سایت ارسال‌ها
پاسخ


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  درخواست نرم افزار برای ساختن پچ برای فایلهایی که کرک میکنیم hamed2006 7 9,948 ۰۲-آذر-۱۳۸۹, ۱۷:۵۲:۵۴
آخرین ارسال: IISecurity.C

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS