PDA

View Full Version : سوال: جلوگیری از کرک شدن برنامه



daniyaltjm
پنج شنبه 22 مهر 1395, 16:04 عصر
سلام، دوستان به نظرتون با این روشی که میگم بازم امکان کرک برنامه هست؟

خوب هر برنامه ای که به کاربر میدیم یک شماره سریال 40 کاراکتری داشته باشه که با استفاده از الگوریتم هش SHA256 هش شده باشه و دوباره از روی این هش ده بار دیگه هش درست بشه و توی یک ثابت رشته ای در خود فایل EXE برنامه قرار بگیره این از این. بعدش وقتی برنامه اولین بار بخواد اجرا بشه باید به اینترنت وصل بشه و شماره سریال CPU کاربر رو بگیره و بفرسته سمت سرور برنامه، خوب توی سرور یک بانک اطلاعاتی باشه با دوتا فیلد که یکی شماره سریال برنامه هست که هش شده و از قبل فروش برنامه به کاربر توش ذخیره شده و دومی خالیه و به محض اینکه کاربر برنامه رو اجرا کنه و روی تایید فعال سازی نرم افزار کلیک کنه شماره سریال CPU توی اون فیلد قرار بگیره و دیگه هر وقت کاربر با CPU دیگه ای خواست وارد بشه بهش اخطار بده این از این. حالا کاربر ممکنه به نت دسترسی نداشته باشه !!! برای این مشکل هم یک جدول توی بانک برنامه روی کامپیوتر کاربر قرار میدیم که از لحظه فعال سازی تاریخ سیستم کاربر رو با الگوریتم SHA256 ده بار هش کنه و یک مقداری هم که توی برنامه خودمون به اول و آخر هش تولید شده اضافه کنه و برای 30 روز بعد تولید و توی بانک ذخیره کنه که اگه به نت وصل نبود از روی تاریخ جاری سیستم چک کنه برای یک ماه. (در آخر هم کل فایل EXE با نرم افزار های مخصوص رمز نگاری بشه)

حالا سوالی که هست اینه که امکان کرک همچین برنامه ای چقدر هست؟ (اصلا امکان داره)

دوم اگه هست چه راه کاری رو یشنهاد میدین؟

ممنون از همگی...

sinashahab
پنج شنبه 22 مهر 1395, 18:24 عصر
سلام
اگر برنامه ات رو میخوای برای خیلیا نصب کنی، راه های بهتر و کم دردسرتر برای اکتیو انتخاب کن.

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


if (CheckValidity)
{
....
}

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

daniyaltjm
پنج شنبه 22 مهر 1395, 18:48 عصر
سلام
اگر برنامه ات رو میخوای برای خیلیا نصب کنی، راه های بهتر و کم دردسرتر برای اکتیو انتخاب کن.

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


if (CheckValidity)
{
....
}

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


سلام، وقتی فایل EXE برنامه Encrypt شده باشه چطور می خواد Decompile کنه و اون شرط IF رو پاک کنه؟!:متفکر:

mr.sirwan
پنج شنبه 22 مهر 1395, 22:02 عصر
سلام، وقتی فایل EXE برنامه Encrypt شده باشه چطور می خواد Decompile کنه و اون شرط IF رو پاک کنه؟!:متفکر:

فکر میکنی برنامه های قدر و قدرتمند و غولای نرم افزاری رو چطوری کرک میکنن؟ :متفکر:

kamiloted
پنج شنبه 22 مهر 1395, 22:04 عصر
سلام، وقتی فایل EXE برنامه Encrypt شده باشه چطور می خواد Decompile کنه و اون شرط IF رو پاک کنه؟!:متفکر:

یه نرم افزار هست که با 6 تا 10 دستور چک پوینت میزاری. و به اون شرط مورد نظر رسید حتی اگه نا خوانا هم باشه پاک یا کامنت میشه.

نکته: هک کننده اول به پروژه شما نگاه میکنه.براش ارزش تعیین میکنه.
اگه خیلی ابتکاری باشه و پول خوبی بابتش گیر بیاد.
میاد هک میکنه.
و اگه بخواد خودشو تست کنه. خب اصلا نمیدونه شما این همه زحمت براش کشیدین.و چه کارایی کردین.
میگه بسم الله. خب چنتا نوع رمز میخواد.خب اونی که سریال سی پی یو گرفته.خب طبق روال قبل بدون در نظر گرفتن کارای شما...

حالا در رابطه با رمز گذاری ستاپ با نرم افزار خودش یه داستان دیگه اس...

نکته:شما محکم کاری رو انجام بدین.اگه بدون محکم کاری از 100 تا 80 تا بتونن کرک کنن. یقینا با محکم کاری از 100 تا به 5 یا 10 تا کاهش پیدا میکنه.

توصیه:حتما از قفل سخت افزاری تاینی استفاده کنید.

rahmatipoor
پنج شنبه 22 مهر 1395, 22:47 عصر
ما هم چند تا نرم افزار داریم که به جاهای زیادی فروختیم

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

حتی قفل تاینی رو هم میگفتند که به راحتی هک و کپی میشه

daniyaltjm
پنج شنبه 22 مهر 1395, 23:04 عصر
پس با این اوضاع هر چی زحمت بکشیم پر میشه! حالا یه راه دیگه که به ذهنم میرسه اینه که یه تابع توی برنامه بنویسیم که به یک صورت تشخیص بده که برنامه کرک شده هست و اگه اینطور بود کل اطلاعات کاربر رو یا فرمت کنه یا Encrypt کنه که ضربه، درست حسابی ببینه. حالا به چه صورت برنامه خودش باید بفهمه که کرک شده؟ لطفا راهنمایی کنید؟:متفکر:

kamiloted
پنج شنبه 22 مهر 1395, 23:33 عصر
پس با این اوضاع هر چی زحمت بکشیم پر میشه! حالا یه راه دیگه که به ذهنم میرسه اینه که یه تابع توی برنامه بنویسیم که به یک صورت تشخیص بده که برنامه کرک شده هست و اگه اینطور بود کل اطلاعات کاربر رو یا فرمت کنه یا Encrypt کنه که ضربه، درست حسابی ببینه. حالا به چه صورت برنامه خودش باید بفهمه که کرک شده؟ لطفا راهنمایی کنید؟:متفکر:

لحظه نصب از کاربر رمز بخواه.
و همچنین یه قفل سخت افزاری.

حالا اگه میشه بگو نرم افزارت چکار میکنه؟

Reza-HNA
جمعه 23 مهر 1395, 16:48 عصر
شما هرکاری هم کنی باز هم برنامت قابل کرک شدنه ، حالا میخوای قفل سخت افزاری ، نرم افزاری باشه یا خود برنامه بفهمه کرک شده یا نه!
در Net. یک قفل نرم افزاری به همراه مبهم سازی صحیح به مراتب خیلی بهتر از قفل سخت افزاری عمل میکنه ( البته نظر و تجربه شخصیه ) ، خوبیه قفل سخت افزاری اینه که اکثر افراد رو میترسونه و فکر میکنند نرم افزار کرک نمیشه ، در حالی که قفل سخت افزاری ضامن کرک نشدن برنامتون نیست!

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

موفق باشید...

juza66
جمعه 23 مهر 1395, 17:15 عصر
سلام

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