PDA

View Full Version : سوال: نکات مهم (امنیت برنامه های دات نت)



(هیچکس)
چهارشنبه 11 فروردین 1389, 23:07 عصر
با سلام خدمت دوستان و اساتید محترم.
من یه چند وقتیه دارم رو امنیت برنامه های دات نت کار میکنم به یه نتیجه هایی رسیدم گفتم بزارم دوستان استفاده کنن شاید مفید واقع بشه. ببین مایکروسافت چه کار می کنه ، برنامه رو که با دات نت نوشتی اگه از یه پروتکتور قوی استفاده نکنی به نظر من بهتره یک سی دی هم اضافه رو نرم افزارت بدی دست مشتری که سورس برنامت داخلش باشه واسه این که مشتری خیلی اذیت نشه یا فکرای بد بد نکنه :لبخند:
من تو این زمینه نرم افزارهای Protector و obfuscator زیادی رو تست کردم (البته با کمک دوستان delta-hacker, Strong Bytes, Nima NT که واقعا ازشون ممنونم) و نهایتا به دوتا نرم افزار رسیدم که به نظرم از بقیه خیلی بهترن.
1- Microsoft SLP Code Protector
2- WinLicense
گزینه 1 که آش مایکروسافته که یه وجب روغن روشه برای کرک ها. البته خودش(+همه) میدونه که کرکر رو نمیتونه متوقف کنه فقط راه رو سخت تر کرده. در مورد این برنامه هم اطلاعات تو گوگل زیاده و هم از خود سایت مایکروسافت.
http://www.msdn.microsoft.com
گزینه 2 هم برنامه خوبیه چون از الگوریتم نرم افزار Themida استفاده می کنه و Anti Dump رو هم داره میشه روش حساب کرد. درباره این برنامه هم کافیه اسمشو تو گوگل بنویسید همه چی حله.
البته سوال من که خیلی هم مهمه اینه که دوتا نکته زیر رو تو برنامه WinLicense واسه جواب بدید.
1- احتمال لو رفتن کدهای دات نت در برنامه حفاظت شده چقدره ?
2- امنیت برنامه حفاظت شده از نظر کرک شدن چطوره ؟

با تشکر. موفق و سربلند باشید.

Nima NT
چهارشنبه 11 فروردین 1389, 23:42 عصر
1- احتمال لو رفتن کدهای دات نت در برنامه حفاظت شده چقدره ?
2- امنیت برنامه حفاظت شده از نظر کرک شدن چطوره ؟

با تشکر. موفق و سربلند باشید.
با سلام
به هر دو مورد یکجا پاسخ داده بشه فکر کنم بهتر باشه ، به نظر بنده از WinLicence برای برنامه های دات نتی استفاده نکنید ، برنامه فوق در مورد فایلهای Win32 قدرت خوبی داره ولی در مورد برنامه های NET. امنیت چندانی نداره ؛ به نظر من بهتر هست از Smart Assembly استفاده کنید.

alireza_s_84
چهارشنبه 11 فروردین 1389, 23:55 عصر
با سلام
به هر دو مورد یکجا پاسخ داده بشه فکر کنم بهتر باشه ، به نظر بنده از WinLicence برای برنامه های دات نتی استفاده نکنید ، برنامه فوق در مورد فایلهای Win32 قدرت خوبی داره ولی در مورد برنامه های NET. امنیت چندانی نداره ؛ به نظر من بهتر هست از Smart Assembly استفاده کنید.
من هم با نظر شما موافقم Smart Assembly بهترینه البته Dynu.NET.Obfuscator و XHEO.Codeveil هم بدک نیستن اما Smart Assembly یه چیز دیگه ست

Mrs.Net
پنج شنبه 12 فروردین 1389, 02:05 صبح
لطفا نظراتتون لحظه ای نباشه و کامل به این نتیجه رسیده باشید
امنیت برای دات نت اول سورس کد مهم هست یعنی obfuscate و pack کردن
برای سورس کد dotfuscator مناسب نیست؟ smart assembly بهتر obfuscate میکنه؟ یعنی سورس کد شده با dotfuscator قابل برگردان شدن هست اما smart assembly نیست؟ smart assembly پک هم میکنه؟
ممنون

Nima NT
پنج شنبه 12 فروردین 1389, 02:12 صبح
لطفا نظراتتون لحظه ای نباشه و کامل به این نتیجه رسیده باشید
امنیت برای دات نت اول سورس کد مهم هست یعنی obfuscate و pack کردن
برای سورس کد dotfuscator مناسب نیست؟ smart assembly بهتر obfuscate میکنه؟ یعنی سورس کد شده با dotfuscator قابل برگردان شدن هست اما smart assembly نیست؟ smart assembly پک هم میکنه؟
ممنون
در مورد Obfuscate کردن راحت میتونم خدمتتون عرض کنم که هیچ چیز قطعی نیست ؛ تا امروز همه فکر میکردن RSA یعنی امن ترین ولی امروز عده کمی همچین فکری دارن !
بنابراین باید این رو در نظر بگیرید که نظراتی که عنوان میشن همشون نسبی هستن و نمیشه در موردشون به قطع نظر داد یا به اونها استناد کرد و در نهایت باز صلاح مملکت خویش ... :)
برنامه Smart Assembly هم پک میکنه و هم Obfuscate ولی با توجه به برنامه های مشابه مکانیزم قوی تری داره و اگر برنامه بزرگ باشه ( در حد تجاری سازمانی ) عملا" استخراج سورس اون برای کراکر هزینه بر خواهد بود و به احتمال زیاد باعث پشیمانی و خستگی کراکر بشه ؛ ولی در مورد پک کردنش نمیتونم چیزی بگم چون ابزارهایی وجود دارن که میتونن لایه های امنیتی مذکور حذف کنن ( این مقوله از obfuscate جدا هستش ) ؛ در نهایت اگر گزینه های WinLicense , .NET Reactor , Smart assembly و این گونه ابزارها رو داشته باشیم بنده Smart Assembly رو پیشنهاد میکنم چون نسبت به هم ردیف های خودش قدرت بهتری داره و مناسبتر عمل میکنه. ( ولی بازم میگم هیچ کدومشون 100% نیستن )

Raham
پنج شنبه 12 فروردین 1389, 10:00 صبح
با سلام خدمت دوستان
هیچکدوم از پروتکتور های دات نت عالی نیستن . چون فناوری دات نت به نسبت نوظهور هستش توسعه دهندگان پروتکتور ها اطلاعات زیادی در این ضمینه ندارند
بعد یه چیز دیگه دات نت IAT بخصوصی نداره که پروتکتور ها بیان روش مانور بدن

من در مورد پروتکتر مایکروسافت اضهار نظر نمی کنم
ولی در کل بخواین حساب کنیم SMART ASSEMBLY از همه بهتره . همه پروتکتر ها ابزار تو آنپکرشون منتشر شده همین اسمارت هم میشه با DESmart آنپک کرد
الگوریتم String Obfuscation اسمارت اسمبلی هم در اومده . که براحتی میشه پتچ کرد

net Reactor هم کلا پروندش مختومه هستش پس بی خیال