PDA

View Full Version : محافظت از کد برنامه



vahidiran
پنج شنبه 17 اسفند 1385, 09:31 صبح
همان طور که می دانید برنامه هایی که در Vb.net نوشته می شوند به راحتی توسط ابزار هایی که آمده است که توی هر سایتی می تونید ببینید می شود exe رو به source تبدیل کرد حتی این کار راحت تر از برنامه هایی که با vb6 نوشته می شود امکان پذیر است
این را نمی توان ضعف این زبان برنامه نویسی دانست چون ابزار هایی آمده است که از کد محافظت می کند و اجازه تبدیل به source رو نمی ده

من دنبال یه برنامه می گردم که این کار رو برای من بکنه در ضمن بگم که حتمی باید crack هم باشه و با vb.net 2005 کار کنه ..

در ضمن اونایی که برای برنامه هاشون قفل سخت افزاری و یا نرم افزاری می سازند به این روش می تونند احتمال کرک شدن برنامه شون رو خیلی پایین بیارن !

titbasoft
پنج شنبه 17 اسفند 1385, 13:47 عصر
در مورد obfuscator جستجو کنید. یه زمانی یه نسخه بتای اورجینال team suite داشتم که همراهش یه obfuscator نصب میشد. فکر کنم توی سایت مایکروسافت بگردی پیداش کنی.

sh
پنج شنبه 17 اسفند 1385, 16:12 عصر
به لینک امضاء من رجوع کن

vahidiran
پنج شنبه 17 اسفند 1385, 18:57 عصر
به لینک امضاء من رجوع کن
هر چند که خیلی وسوسه هستم تا dvd رو خریداری کنم ولی توجیه براش ندارم
من فقط به یک ابزارش نیاز دارم

vahidiran
پنج شنبه 17 اسفند 1385, 18:59 عصر
در مورد obfuscator جستجو کنید. یه زمانی یه نسخه بتای اورجینال team suite داشتم که همراهش یه obfuscator نصب میشد. فکر کنم توی سایت مایکروسافت بگردی پیداش کنی.

ممنون که راهنمایی کردیم اگه می شه یه توضیح بدهید که اگر من برنامه شو تونستم download کنم چکار باید بکنم
یه مکانیسم می خواهم

VisualStudio
شنبه 19 اسفند 1385, 01:54 صبح
تو خود VS.NET 2005 یک ابزاری هست اون چطوره خوبه

vahidiran
شنبه 19 اسفند 1385, 08:27 صبح
والا من که ازش سر در نمی آرم شما چی؟
یعنی فقط می توم یک فایل exe بهش بدم بدش می آد Event ها فایل رو لیسا می کنه و برنامه اون رو به زبان اسمبلی ( چیزس شبیه به اون نشون می ده )

mostafa_leman
شنبه 19 اسفند 1385, 13:53 عصر
نرم افزار های زیادی واسه محافظت از سورس هستند که به نظر من بهترینشون MaxToCode هست . Xencode هم خوبه و ادعا میکنه برنامه رو از net framework بی نیاز میکنه . نرم افزار net reactor هم هست که میتونی علاوه بر محافظت از کد نسخه مدت دار باهاش بسازی . و ...
یک سرچ بزنی میتونی برنامه ها رو با متعلقاتش گیر بیاری

SeniorDevs
شنبه 19 اسفند 1385, 14:57 عصر
دوست عزیز جناب vahidiran شما هر گز نمی توانید از Source Code تان در VS.NET محافظت کنید و هیچ برنامه ای چه در حال و چه در آینده نمی تواند جلوی Decompile شدن برنامه شما را بگیرد.

چرا؟

چون برنامه هایی که با VS.NET ساخته می شوند در واقع به زبان ماشین 80x86 کامپایل نمی شوند بلکه فقط یک Assembly ساده متنی می باشند که خط به خط توسط NET FrameWork خوانده و ترجمه می شوند.

حالا شرکت هایی مانند Xencode چه کاری انجام می دهند؟

فقط و فقط نقش یک ماشین مجازی Virtual Machine را بازی می کنند یعنی تمامی کدهای Assembly برنامه شما را رمز گذاری و کمپرس می کنند و در هر زمان که برنامه شما به قسمتی از Assembly هایش نیاز داشته باشد فقط آن قسمت را رمز گشایی می کنند و در اختیار NET FrameWork قرار می دهند و همین روند تا آخر ادامه دارد.

اما با یک ترفند ساده مانند Dumping می شود دوباره به Source Code شما رسید که البته گروه های کراکری مانند Core و Explosion استاد این کار هستند.

نکته جالب این است که اکثر این برنامه هایی که می خواهند مثلا از Source Code شما محافظت کنند خود شان با VS.NET ساخته شده اند و همیشه هم نسخه به نسخه Crack شده اند حال چگونه می خواهند از کد شما محافظت کنند در صورتی که نتوانسته اند از Source Code خودشان محافظت کنند.

فکر می کنید چرا شرکت های نرم افزاری بزرگ جهان هنوز هم برنامه های اصلی و مهم خود را با VS.NET نمی نویسند چون از امنیت Source Code خود مطمئن نیستند.


توصیه من به شما اساتید و دوستان:

اگر برنامه شما دارای کد های حساسی مانند Lock هستش هرگز هرگز از VS.NET استفاده نکنید. مطمئنا شرکت مایروسافت در آینده نزدیک مجبور خواهد شد فرمت فایل های اجرایی خود را در VS.NET عوض کند و دوباره از کد ماشین 80x86 استفاده کند بنابراین تا آن موقع بهتر است منتظر بمانید.

با آرزوی موفقیت برای دوستان:چشمک:

DonetKarvb
شنبه 19 اسفند 1385, 16:04 عصر
نکته جالب این است که اکثر این برنامه هایی که می خواهند مثلا از Source Code شما محافظت کنند خود شان با VS.NET ساخته شده اند و همیشه هم نسخه به نسخه Crack شده اند حال چگونه می خواهند از کد شما محافظت کنند در صورتی که نتوانسته اند از Source Code خودشان محافظت کنند.

آقا شما کرک XenoCode رو دیدی؟ اگر خبر داری از ورژن 2005 اش به ما هم یه ندا بده. ممنون:تشویق:
(اگر ندیدی یعنی تونسته خوش از خودش محافظت کنه.)

hamed_bostan
شنبه 19 اسفند 1385, 16:53 عصر
خوب حالا همه این حرفها شد . فرض کنید من یه تازه وارد که می خوام یه زبان برنامه نویسی انتخاب کنم . چه زبانی رو انتخاب کنم که علاوه بر راحت بودنمثل زبانهای دات نت و قابلیت های بالا ، امنیت کد و ... ون هم مشکلی نداشته باشه .ایا میشه قسمتی از کد رو با دات نت نوشت و قسمت های حساس رو با یه زبان دیگه و به هم merge کردشون؟

اَرژنگ
شنبه 19 اسفند 1385, 17:16 عصر
آکه کسی نیست که بگه چه کدی دارید که انقدر مهمه که محافظت نیاز داره؟
حتی برنامه‌هایه انکریپشن اگر کدشن کاملاًَ قابل بازرسی نباشه مفت نمی ارزن.
اگر انقدر این سورس مهمه تو حیاط چالش کنید، هیچ کی دسترسی پیدا نکنه.

mostafa_leman
شنبه 19 اسفند 1385, 18:53 عصر
نکته جالب این است که اکثر این برنامه هایی که می خواهند مثلا از Source Code شما محافظت کنند خود شان با VS.NET ساخته شده اند و همیشه هم نسخه به نسخه Crack شده اند حال چگونه می خواهند از کد شما محافظت کنند در صورتی که نتوانسته اند از Source Code خودشان محافظت کنند.

واسه همه این برنامه ها این موضوع صدق نمیکنه . مثلا MaxToCode با زبان Visual C نوشته شده

vahidiran
یک شنبه 20 اسفند 1385, 10:21 صبح
در این که کد رو کرکر ها بتونن در بیارند و از jump برای دور زدن قفل ها استفاده کنند شکی نیستش حالا برنامه هر چی باشه و بر هر زبانی هم باشه این یک رقابته مثل رقابت ویروس نویس ها و ویروس کش ها
حداقل من می خوام کدی که نوشتم به راحتی هلو نره توی گلو
یه ذره کرکر ها حالی بکنن و تازه کارها هم حالشون گرفته شه

در ضمن برای Microsoft که بیشتر محصولاتش برای آمریکا و کانادا و یا حتی استرالیا است و بچه های مردم ( آمریکایی ..... ) فرهنگ استفاده از نرم افزار رو دارن و به فکرشون خطور نمی کنه که کرک کنند . ( اگه دوست داشتی نمونه ها شو از دوستام که در خارج بودن برات می گم ) انرژی و توان شرکتشو صرف این کار نمی کنه و تمرکز جای دیگه خرج می کنه مطمئن باش به اندازه که فروش می کنه که نگران این نسخه ها نباشه !

اینجا فقط هست که یه مشت بیکار پشت این Pc نشستن قانونی هم که الحمدا... که نیست اینرنت هم برای بعضی مفتی در دسترس فقط نگرانیشون اینه که سرعتش پایینه که اگر سرعتش هم بالا بود می باست فاتحه هر چی ...
بگذریم ینجا جای این بحث ها نیستش

اون دوستی که گفته Xencode کرکش رو هم داره یا نه
و اون دوست عزیزی دیگه که گفته MaxToCode ؟

VisualStudio
یک شنبه 20 اسفند 1385, 22:05 عصر
در این که کد رو کرکر ها بتونن در بیارند و از jump برای دور زدن قفل ها استفاده کنند شکی نیستش حالا برنامه هر چی باشه و بر هر زبانی هم باشه این یک رقابته مثل رقابت ویروس نویس ها و ویروس کش ها
حداقل من می خوام کدی که نوشتم به راحتی هلو نره توی گلو
یه ذره کرکر ها حالی بکنن و تازه کارها هم حالشون گرفته شه

در ضمن برای Microsoft که بیشتر محصولاتش برای آمریکا و کانادا و یا حتی استرالیا است و بچه های مردم ( آمریکایی ..... ) فرهنگ استفاده از نرم افزار رو دارن و به فکرشون خطور نمی کنه که کرک کنند . ( اگه دوست داشتی نمونه ها شو از دوستام که در خارج بودن برات می گم ) انرژی و توان شرکتشو صرف این کار نمی کنه و تمرکز جای دیگه خرج می کنه مطمئن باش به اندازه که فروش می کنه که نگران این نسخه ها نباشه !

اینجا فقط هست که یه مشت بیکار پشت این Pc نشستن قانونی هم که الحمدا... که نیست اینرنت هم برای بعضی مفتی در دسترس فقط نگرانیشون اینه که سرعتش پایینه که اگر سرعتش هم بالا بود می باست فاتحه هر چی ...
بگذریم ینجا جای این بحث ها نیستش

اون دوستی که گفته Xencode کرکش رو هم داره یا نه
و اون دوست عزیزی دیگه که گفته MaxToCode ؟

کاملا درست می فرمایید حالا یک ابزار کرک شده برای ما معرفی می کنید که حداقلا به قول ایشون هلو برو تو گلو نیان کد را بدست بیارن
در ضمن کرک باشه !

linux
یک شنبه 20 اسفند 1385, 22:23 عصر
کاملا درست می فرمایید حالا یک ابزار کرک شده برای ما معرفی می کنید که حداقلا به قول ایشون هلو برو تو گلو نیان کد را بدست بیارن
در ضمن کرک باشه !

تمام این برنامه هایی که دوستان گرفتن نسخه کاملش را از emule می تونید پیدا کنید

omid_Ahmadi
دوشنبه 21 اسفند 1385, 08:56 صبح
متاسفانه اغلب نظراتی که در این قسمت عنوان شده اصلا صحت علمی ندارن.

@SeniorDev


چون برنامه هایی که با VS.NET ساخته می شوند در واقع به زبان ماشین 80x86 کامپایل نمی شوند بلکه فقط یک Assembly ساده متنی می باشند که خط به خط توسط NET FrameWork خوانده و ترجمه می شوند.
این مورد که برنامه های پلت فرمهایی مثل .NET و Java EE به کد نیتیو تبدیل نمی شن، مطلب واضحیه. اما در مورد .NET بهتره بدونید اجرای خط به خط وجود نداره، نحوه اجرا به صورت دیگه ایه، که در مطالب مختلفی که در این سایت در مورد معماری پلت فرم .NET نوشتم، به تفصیل در مورد اونها صحبت کردم.



حالا شرکت هایی مانند Xencode چه کاری انجام می دهند؟

فقط و فقط نقش یک ماشین مجازی Virtual Machine را بازی می کنند یعنی تمامی کدهای Assembly برنامه شما را رمز گذاری و کمپرس می کنند و در هر زمان که برنامه شما به قسمتی از Assembly هایش نیاز داشته باشد فقط آن قسمت را رمز گشایی می کنند و در اختیار NET FrameWork قرار می دهند و همین روند تا آخر ادامه دارد.
یکی از کارهایی که ابزارهایی که مثل XenoCode انجام می دن، اینه که کد IL تولید شده به وسیله کامپایلرهای .NET رو به کد نیتیو تبدیل می کنن تا بدون نیاز به فریم فرم فقط روی پلت فرم مشخص شده اجرا بشن. به این ترتیب کد شما مثل یه برنامه که با زبانهای دیگه ای مثل C نوشته شده باشه توزیع خواهد شد



اگر برنامه شما دارای کد های حساسی مانند Lock هستش هرگز هرگز از VS.NET استفاده نکنید. مطمئنا شرکت مایروسافت در آینده نزدیک مجبور خواهد شد فرمت فایل های اجرایی خود را در VS.NET عوض کند و دوباره از کد ماشین 80x86 استفاده کند بنابراین تا آن موقع بهتر است منتظر بمانید.
اگر برنامه شما دارای قسمت های حساس باشه هم می تونید اون رو به صورت کامل به کد نیتیو تبدیل کنید هم می تونید با استفاده از روشهایی که در قسمتهای دیگه سایت توضیح دادم قسمت مهم برنامه رو به نیتیو تبدیل کنید و ما بقی به IL. بعد هم با استفاده از قابلیتهای CLR بین این دو قسمت Managed و UnManaged ارتبط برقرار کنید.
در مورد اجبار مایکروسافت هم به تغییر زبان برنامه های اجرایی ، بهتره قبل از اظهار نظر مقداری مطالعه کنید، به خصوص در مورد Java که چه طور تا حالا مجبور نشده از ByteCode به Native مهاجرت کنه تا دیگه با این حرف های بی پایه و اساس بقیه رو هم در اشتباه نندازید.

sonixax
چهارشنبه 24 آذر 1389, 23:30 عصر
ببخشید من همه اینها رو خوندم ولی یک چیزی رو نفهمیدم !
یعنی یک برنامه نویس دات نت اول و آخر برای محافظت از کدش مجبوره از یک برنامه ی ThirdParty استفاده کنه ؟!
البته هر برنامه ای اول و آخر کرک میشه با هر زبانی که باشه ، محافظت از کد در همین حد که جلوی تازه کارهارو بشه باهاش گرفت کفایت میکنه .

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

MEhdi Sobhani
پنج شنبه 25 آذر 1389, 00:21 صبح
آقا شما کرک XenoCode رو دیدی؟ اگر خبر داری از ورژن 2005 اش به ما هم یه ندا بده. ممنون:تشویق:
(اگر ندیدی یعنی تونسته خوش از خودش محافظت کنه.)
سلام
زنوکود کرک شده رو من استفاده کردم ، روش کارش خیلی خیلی ابتداییتر از چیزی هست که فکرش رو میکنید .
فرض کنید من یک فایل 500 کیلو بایتی ساخته شده با دات نت داشتم ، اونو دادم زنوکود و یه فایل 600 کیلوبایتی تحویلم داد که با برنامه های عادی دیکامپایل نمیشد . این قابلیت رو هم داشت که تا دات نت 3.5 رو ضمیمه برنامه کنیم .
نهایتا وقتی برنامم رو اجرا کردم فایروالم پیغام میداد که فلان فایل میخواد فلان کار رو انجام بده و دیدم که یه کپی دقیقا مثل فایل اصلیم ایجاد کرده داخل یه پوشه و داره همون رو اجرا میکنه .
نکته دیگه اینکه این که میگید تونسته از کد خودش محافظت کنه دلیلی برای امنیت محافظت از کد برنامه ای که میده بیرون نیست ، چون خودش با دات نت نوشته نده .
این رو سرچ کنید کرک د رو پیدا میکنید
Xenocode.Virtual.Application.Studio.2010.Edition.S etup.by.RmK-FreE.

farhad5487
پنج شنبه 04 اسفند 1390, 18:45 عصر
من vs .net 2010 نصب کردم و این برنامه با خودش نصب شده PreEmptive Solutions Dotfuscator Community Edition و اگر شما با این برنامه خودتون رو بهش بدید دیگه
و هیچ برنامه ای نمیشه سورس کد برنامه ای که نوشتید رو بخونه مثل reflector
این برنامه هم اصلا کرک بشو نیست هر چی تو گوگل سرچ کردم نیممد
یعنی خوبه دیگه ؟
http://www.preemptive.com/
نظرتون چیه
شما بودید
نسخه پروفشینال رو می خریدید ؟

نظرتون درباره این چیه ؟
PECompact

swallow.pa
پنج شنبه 04 اسفند 1390, 21:06 عصر
من هم نفهمیدم بالاخره برای محافظت از برنامه هام کدهاش چیکار کنم