PDA

View Full Version : حرفه ای: بررسی و تست امنیت قفل نرم افزاری آموت



mozaheb
پنج شنبه 24 شهریور 1390, 10:50 صبح
سلام

فایل پیوست نمونه ای از قفل نرم افزاری آموت می باشد. که با .Net نوشته شده است. لطفا بررسی بفرمایید.
بعد از فعال شدن پنجره همانند مثال باید باشد:
75327
فایل به پیوست می باشد.

75326

با تشکر
یوسف مذهب

Securebit
یک شنبه 27 شهریور 1390, 15:12 عصر
استفاده از هشینگ و انکریپتور خلاف قوانین کرک می هست.

mozaheb
یک شنبه 27 شهریور 1390, 17:07 عصر
جناب Strong Bytes

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

لطفا راهنمایی فرمایید.

با تشکر
یوسف مذهب

Securebit
یک شنبه 27 شهریور 1390, 17:56 عصر
اما چطور می توان برنامه .Net را بدون این موارد حفاظت کرد؟

استفاده از هشینگ و انکریپت به تنهایی نمیتونه روش مناسبی باشه چون با یک کلید معتبر کراکر میتونه برای قفل شما کیجن بنویسه.


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

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

mozaheb
یک شنبه 27 شهریور 1390, 20:43 عصر
جناب Strong Bytes

یعنی در کرک می به هیچ عنوان در سورس برنامه از Encrypt استفاده نکینم؟

برای قفل ما فکر نمیکنم بشود Keygen ایجاد کرد. چون اطلاعات قفل و روال ها در کد فعالسازی می باشد.

راهنمایی بفرمایید/

ASKaffash
دوشنبه 28 شهریور 1390, 11:28 صبح
جناب Strong Bytes

یعنی در کرک می به هیچ عنوان در سورس برنامه از Encrypt استفاده نکینم؟

برای قفل ما فکر نمیکنم بشود Keygen ایجاد کرد. چون اطلاعات قفل و روال ها در کد فعالسازی می باشد.

راهنمایی بفرمایید/

سلام
برنامه شما با SmartAssembly کدهاش Obfuscate شده بود ولی با Desmart مجدد DeObfuscate شد اگر الگوریتم کد فعال سازی شما لو برود برای برنامه شما keygen تولید خواهد شد (smart شما 4 است ؟)

Nima NT
دوشنبه 28 شهریور 1390, 12:08 عصر
برای قفل ما فکر نمیکنم بشود Keygen ایجاد کرد. چون اطلاعات قفل و روال ها در کد فعالسازی می باشد
در صورتی برای برنامه شما امکان نوشتن Keygen وجود نخواهد داشت که از الگوریتم های رمزنگاری غیر متقارن نظیر RSA استفاده کنید ( استفاده از این الگوریتم ها در دات نت نسبت به سایر برنامه ها خیلی ساده تر و قابل فهم تر هستش ).

mozaheb
دوشنبه 28 شهریور 1390, 14:35 عصر
جناب ASKaffash بله از SmartAssembly 4 استفاده شده است.

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

از الگوریتم RSA برای این استفاده نشده است زیرا طول کد فعال سازی بیش از حد طولانی می شود.

با تشکر

Nima NT
دوشنبه 28 شهریور 1390, 15:05 عصر
از الگوریتم RSA برای این استفاده نشده است زیرا طول کد فعال سازی بیش از حد طولانی می شود.
میتونید از الگوریتم elliptic curve استفاده کنید.

Securebit
دوشنبه 28 شهریور 1390, 16:27 عصر
یعنی در کرک می به هیچ عنوان در سورس برنامه از Encrypt استفاده نکینم؟

بله شما نباید در کرک می از هشینگ و انکریپتور استفاده کنید ولی در BruteForce Me میتونه استفاده بشه.


برای قفل ما فکر نمیکنم بشود Keygen ایجاد کرد. چون اطلاعات قفل و روال ها در کد فعالسازی می باشد.

خوب من هم خدمت شما عرض کردم با یک کلید ولید که شما به کاربرهاتون میدید کراکر میتونه کیجن بنویسه حالا فرقی نمیکنه از کدوم الگوریتم غیر متقارن استفاده کنید که در اینجا شما از AES استفاده کردید یا اینکه از RSA استفاده بشه.

جناب ASKaffash بله از SmartAssembly 4 استفاده شده است.

از نسخه 6.2.2.215 استفاده شده نه 4!

ASKaffash
چهارشنبه 30 شهریور 1390, 09:27 صبح
جناب ASKaffash بله از SmartAssembly 4 استفاده شده است.

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

از الگوریتم RSA برای این استفاده نشده است زیرا طول کد فعال سازی بیش از حد طولانی می شود.

با تشکر

سلام:
تا زمانیکه سورس دات نت و جاوا به راحتی با Reflactor ها بازیابی می شود تنها راه این است :
- استفاده از Obfuscator هائی که بتوانند درک فهم سورس بازیابی شده سخت تر شود
- چون در نهایت الگوریتم دات نتی احتمالا مشخص می شود بهتر است الگوریتم تولید سریال / ... را با C++ و کد Native تولید گردد
- از فایل اجرائی hash ایجاد و درون سورس hash آن بررسی شود تا موضوع سخت تر شود

Nima NT
جمعه 01 مهر 1390, 07:50 صبح
- چون در نهایت الگوریتم دات نتی احتمالا مشخص می شود بهتر است الگوریتم تولید سریال / ... را با C++ و کد Native تولید گردد
اگر هدف patch کردن فایل دات نتی باشه زیاد توفیقی نمیکنه و کاربر ارجاعات رو حذف میکنه ، به نظر من استفاده صحیح از کد و روشها در خود دات نت موثر تر هست تا ارجاع به dll های native.

mozaheb
یک شنبه 03 مهر 1390, 09:10 صبح
سلام

ممنون از اطلاعاتی که فرموده اید.

به نظر شما راحت ترین راه برای کرک کردن قفل آموت از کدام طریق می باشد؟

با توجه به اینکه سورس دات نت قابل بازیابی است ، حساس بودن قفل آموت به CRC تمامی اطلاعات خود مزیت طلقی می شود؟

mozaheb
پنج شنبه 07 مهر 1390, 13:53 عصر
هم اکنون نیازمند یاری شما هستیم.

Nima NT
پنج شنبه 07 مهر 1390, 14:34 عصر
با توجه به اینکه سورس دات نت قابل بازیابی است ، حساس بودن قفل آموت به CRC تمامی اطلاعات خود مزیت طلقی می شود؟
بودن این تکنیک بهتر از نبود اون خواهد بود ولی سعی کنید فقط به این کار اکتفا نکنید چرا که در تاپیک های مشابه هم عرض کردم این روش تاثیری بر امنیت قفل ( به صورت محسوس ) نخواهد داشت.