PDA

View Full Version : سوال: مخفی کردن کدها به صورت قوی به همراه فایل های داخل EXE



davidrobert
جمعه 07 دی 1397, 01:04 صبح
سلام و خسته نباشید.
دوستان بنده چند سال هستش که smart assembly استفاده میکنم و فایل هام کدگزاری میکنم به صورت صفر و یک و بعد دست مشتری میدم ولی نسخه قدیم اش از دست دادم تو عوض کردن ویندوز و روی اینترنت گیر نیاوردم ولی شدیدا به دنیال نرم افزاری هستم که به کل کدهای همچین مخفی کنه برای سی شارپ باشه نه با ریفلکتور و نه با Dotpeack نه فایل و نه Dll و نه گزارشات دسترسی نداشته باشه و مخفی اساسی بشه از دوستان کسی برنامه قوی سراغ نداره ممنون میشم.
اگه سراغ دارید بهم لینک دانلود بدید با تشکر.
و دوستان خواهشمندم تاپیک بنده حذف نشود.

مهدی کرامتی
جمعه 07 دی 1397, 11:05 صبح
سلام
نرم افزار SmartAssembly بهترین نرم افزاری هست که تو زمینه Obfuscation می توانید پیدا کنید، چون آپدیت مرتب و منظم داره، و دائما در حال رفع اشکالات گزارش شده توسط کاربران هست. شما می توانید همیشه آخرین نسخه اش را از سایت سازنده دریافت کنید و سپس با استفاده از کیجن های موجود کد فعال سازی رو دریافت کنید (قبل از فعال کردن برنامه میبایست اینترنت سیستم تون رو قطع کنید تا دیالوگ Activate Manually ظاهر شود).

این نرم افزار یک قابلیت جالب داره که به شما اجازه میده کدتون رو تا 7 لایه زیر Virtual Machine های داخلی که این نرم افزار میتونه به فایل Exe یا Dll نهایی شما اضافه کنه مدفون کنید. همچنین اگر نیاز داشتید کلاس خاصی که تو Serialization استفاده میشه رو از Obfuscate شدن با افزودن یک Attribute مستثنی کنید و خیلی قابلیت های دیگه.

mr.sirwan
جمعه 07 دی 1397, 12:11 عصر
سلام
نرم افزار SmartAssembly بهترین نرم افزاری هست که تو زمینه Obfuscation می توانید پیدا کنید، چون آپدیت مرتب و منظم داره، و دائما در حال رفع اشکالات گزارش شده توسط کاربران هست. شما می توانید همیشه آخرین نسخه اش را از سایت سازنده دریافت کنید و سپس با استفاده از کیجن های موجود کد فعال سازی رو دریافت کنید (قبل از فعال کردن برنامه میبایست اینترنت سیستم تون رو قطع کنید تا دیالوگ Activate Manually ظاهر شود).

این نرم افزار یک قابلیت جالب داره که به شما اجازه میده کدتون رو تا 7 لایه زیر Virtual Machine های داخلی که این نرم افزار میتونه به فایل Exe یا Dll نهایی شما اضافه کنه مدفون کنید. همچنین اگر نیاز داشتید کلاس خاصی که تو Serialization استفاده میشه رو از Obfuscate شدن با افزودن یک Attribute مستثنی کنید و خیلی قابلیت های دیگه.

با سلام خدمت شما جناب کرامتی، سوالی که بنده دارم اینه که آیا میشه پروژه models مربوط به EntityFramework codefirst رو هم مبهم سازی کرد؟ چون من وقتی با همین نرم افزار smart assembly اینکارو میکنم کلا اسم جداول و فیلد ها به هم میریزه و اصلا دیتابیس ایجاد نمیشه و ارور میده که مثلا فلان فیلد [.]:'< چندین بار توی مدل تکرار شده یعنی منظورم اینه اسم فیلد رو دقیقا یه چیزی تو مایه های همین مینویسه [.]:'<
آیا راهی هست که models رو هم obfuscate کرد یا همینطوری بذاریم بمونه؟

مهدی کرامتی
جمعه 07 دی 1397, 13:41 عصر
آیا راهی هست که models رو هم obfuscate کرد یا همینطوری بذاریم بمونه؟
دقیقا همین جور کلاس ها رو نباید Obfuscate کرد. مورد مشابهی هم در مورد کلاس هایی که قراره Serialize شوند وجود داره و اونها رو هم نباید Obfuscate کرد.
انجام پروسه Obfuscate روی کلاس های مدل هم البته تاثیر چندانی نداره. چون شما می خواهید این کار رو انجام بدید که به عنوان مثال، ساختار دیتابیس تون معلوم نباشه چیه، منتهی کسی که می خواد این ساختار رو بفهمه نهایتا میره دیتابیس شما رو باز می کنه و کل ساختار رو می بینه.

davidrobert
شنبه 08 دی 1397, 11:15 صبح
سلام
نرم افزار SmartAssembly بهترین نرم افزاری هست که تو زمینه Obfuscation می توانید پیدا کنید، چون آپدیت مرتب و منظم داره، و دائما در حال رفع اشکالات گزارش شده توسط کاربران هست. شما می توانید همیشه آخرین نسخه اش را از سایت سازنده دریافت کنید و سپس با استفاده از کیجن های موجود کد فعال سازی رو دریافت کنید (قبل از فعال کردن برنامه میبایست اینترنت سیستم تون رو قطع کنید تا دیالوگ Activate Manually ظاهر شود).

این نرم افزار یک قابلیت جالب داره که به شما اجازه میده کدتون رو تا 7 لایه زیر Virtual Machine های داخلی که این نرم افزار میتونه به فایل Exe یا Dll نهایی شما اضافه کنه مدفون کنید. همچنین اگر نیاز داشتید کلاس خاصی که تو Serialization استفاده میشه رو از Obfuscate شدن با افزودن یک Attribute مستثنی کنید و خیلی قابلیت های دیگه.

سلام و خسته نباشید.
آقای کرامتی عزیز متاسفانه تمام نسخه های Smart assembly با این خطا مواجه شدن
149529
نسخه های متدد دانلود کردم ولی متاسفانه همهشون اکتیو شدن ولی کار نمیکنن و نسخه بدون ایرادش رو گشتم گیر نیاوردم.
اگه شما نسخه بدون ایرادش رو دارید در اختیار بنده قرار بدید ممنون میشم.

مهدی کرامتی
شنبه 08 دی 1397, 11:47 صبح
تمام نسخه های Smart assembly با این خطا مواجه شدن
این خطا چه ربطی به SmartAssembly داره؟


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

عرض کردم، آخرین نسخه رو از سایت خودشون (https://www.red-gate.com/dynamic/products/dotnet-development/smartassembly/download) دانلود کنید.

davidrobert
شنبه 08 دی 1397, 12:12 عصر
این خطا چه ربطی به SmartAssembly داره؟


عرض کردم، آخرین نسخه رو از سایت خودشون (https://www.red-gate.com/dynamic/products/dotnet-development/smartassembly/download) دانلود کنید.

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

hamidtmu
یک شنبه 09 دی 1397, 15:40 عصر
سلام استاد.
معذرت میخام .اگه نسخه را از سایت اصلی دانلود کنیم چون تریال هست.نرم افزاری که باهاش میسازیم با مشکلی روبرو نمیشه؟
بعد این نسخه های که توی سایت های مختلف با کرک زدند جواب نمیده؟
ممنون میشم راهنمایی بفرمایید

مهدی کرامتی
یک شنبه 09 دی 1397, 15:49 عصر
سلام به روی ماهت.

اگه نسخه را از سایت اصلی دانلود کنیم چون تریال هست.نرم افزاری که باهاش میسازیم با مشکلی روبرو نمیشه؟
نکته جالب ماجرا درباره محصولات Red Gate اینه که کیجن هایی که سالها پیش برای محصولات اینها ساخته شده هنوز بدون مشکل کار می کنه (از سایت downloadly.ir می توانید فایل فوق را دریافت کنید).
مد نظر داشته باشید زمانی که خواستید هر کدام از محصولات Red Gate رو فعال سازی کنید (کرک کردن نیاز نیست، با کد لایسنسی که کیجن تولید می کنه کار می کنند) میبایست ارتباط اینترنت سیستم تون رو موقتا قطع کنید.

artin1394
یک شنبه 09 دی 1397, 17:01 عصر
سلام استاد ببخشید اگه از این استفاده کنیم انتی ویروسها فایل اجرایی را ویروس تشخیص نمیدن؟
ممنون میشم توضیح بدین

artin1394
یک شنبه 09 دی 1397, 18:27 عصر
بعد از نصب و ریجستر smart assembly این خطا رو میده بعد باز میشه 149536به نظر شما مشکلش چیه؟

artin1394
یک شنبه 09 دی 1397, 18:40 عصر
درست شد نام سرور اس کی یو ال میخواست

مهدی کرامتی
یک شنبه 09 دی 1397, 18:46 عصر
اگه از این استفاده کنیم انتی ویروسها فایل اجرایی را ویروس تشخیص نمیدن؟
خیر. تغییری که Smart Assembly تو ساختار برنامه شما می ده یک الگوی مجازه و توسط هیچ آنتی ویروسی به عنوان ویروس گزارش نمیشه. بعضی دیگه از برنامه ها مثل .Net Reactor در بعضی از نسخه های قدیمی مشکل پیدا می کرد، اما نسخه های جدیدشون رو تست نکردم.

barnamenevisjavan
یک شنبه 09 دی 1397, 20:04 عصر
خیر. تغییری که Smart Assembly تو ساختار برنامه شما می ده یک الگوی مجازه و توسط هیچ آنتی ویروسی به عنوان ویروس گزارش نمیشه. بعضی دیگه از برنامه ها مثل .Net Reactor در بعضی از نسخه های قدیمی مشکل پیدا می کرد، اما نسخه های جدیدشون رو تست نکردم.
اقای کرامتی اسمارت اسمبلی دیگه قدیمی شده اخیرا ابزار جدیدی منتشر شده بود برای ویژوال استودیو برای مبهم سازی کدها PreEmptiveSolutions به نظر کارش عالیه
https://marketplace.visualstudio.com/items?itemName=PreEmptiveSolutions.NETObfuscator-Dotfuscator

مهدی کرامتی
دوشنبه 10 دی 1397, 19:34 عصر
DotFuscator چیز جدیدی نیست، از سال 2003 که ویژوال استودیو 2003 منتشر شد این هم همراهش نصب می شد. اتفاقا اگر تو فوروم های خارجی بگردید ابزار خوش نامی نیست، DeObfuscator و DeCryptor براش زیاد منتشر شده.
اما برای برگرداندن فایل هایی که با SmartAssembly کد شده اند ابزارهای زیادی وجود نداره، اونهایی هم که هست درست کار نمی کنه و بالطبع امنیت بیشتری رو تضمین می کنه.

hamidtmu
دوشنبه 10 دی 1397, 22:46 عصر
استاد طبق راهنمایی های شما نصب و کار کردم باهاش.
خیلی نرم افزار خوبیه
یه راهنمایی میخواستم .کدوم گزینه ها واجبه که تو این نرم افزار بزنیم
مثلا استرینگ خیلی خوب بود.
ایا قسمتی داره که خود کد ها را هم مخفی کنه
در کل چند تا آموزش ازش دیدم که از روی هم کپی کرده بودند
اگه راهنمایی بفرماید تشکر می کنم

davidrobert
سه شنبه 11 دی 1397, 00:48 صبح
سلام به روی ماهت.

نکته جالب ماجرا درباره محصولات Red Gate اینه که کیجن هایی که سالها پیش برای محصولات اینها ساخته شده هنوز بدون مشکل کار می کنه (از سایت downloadly.ir می توانید فایل فوق را دریافت کنید).
مد نظر داشته باشید زمانی که خواستید هر کدام از محصولات Red Gate رو فعال سازی کنید (کرک کردن نیاز نیست، با کد لایسنسی که کیجن تولید می کنه کار می کنند) میبایست ارتباط اینترنت سیستم تون رو موقتا قطع کنید.

سلام و خسته نباشید.
سایت خود Smart Assembly به سمت ایران فیلتر بود و از طرفی با ف ی ل ت ر ش ک ن هم امکان دانلود نبود. و از سایت هم دانلود کردم متسفانه باز ایراد داشت.149541
اگه نسخه قدیمی بدون ایراد داشته باشید ممنون میشم. بیشتر از 10 بار از سایت های مختلف دانلود ولی پر ایراد.

hamidtmu
سه شنبه 11 دی 1397, 09:01 صبح
من دانلود کردم و درست بود.هر مشکلی داری از اون نرم افزار نیست از ارتباطت با دیتا بیسه

barnamenevisjavan
سه شنبه 11 دی 1397, 13:49 عصر
سلام و خسته نباشید.
سایت خود Smart Assembly به سمت ایران فیلتر بود و از طرفی با ف ی ل ت ر ش ک ن هم امکان دانلود نبود. و از سایت هم دانلود کردم متسفانه باز ایراد داشت.149541
اگه نسخه قدیمی بدون ایراد داشته باشید ممنون میشم. بیشتر از 10 بار از سایت های مختلف دانلود ولی پر ایراد.
پروچکت ستینگ رو بزن تنظیمات کانکشن استرینگ دیتابیس رو تنظیم کن اخه چرا خطا رو نمیخونید بعد میگید برنامه اشکال داره

artin1394
سه شنبه 11 دی 1397, 18:39 عصر
من مبهم سازی فایل اجرایی برنامه ام را هم با smart assembly انجام دادم هم با .net reactor ولی خروجی smart assembly موقع اجرا کلی خطا میده ولی خروجی .net reactor بدون مشکل کار میکنه به نظر شما ..net reactor به اندازه کافی امن هست یا برم خطاهای smart assembly را حل کنم
ممنون میشم راهنماییم کنید

samiasoft
شنبه 15 دی 1397, 01:23 صبح
DotFuscator چیز جدیدی نیست، از سال 2003 که ویژوال استودیو 2003 منتشر شد این هم همراهش نصب می شد. اتفاقا اگر تو فوروم های خارجی بگردید ابزار خوش نامی نیست، DeObfuscator و DeCryptor براش زیاد منتشر شده.
اما برای برگرداندن فایل هایی که با SmartAssembly کد شده اند ابزارهای زیادی وجود نداره، اونهایی هم که هست درست کار نمی کنه و بالطبع امنیت بیشتری رو تضمین می کنه.

جناب کرامتی نظرتون درباره Agile.Net (https://downloadly.ir/software/programming/agile-net-obfuscator/) و Crypto Obfuscator (https://downloadly.ir/software/programming/crypto-obfuscator-for-net/) رو هم ممنون میشیم بدونیم...چون SmartAssembly که ذکر کردید متاسفانه فایل خروجی رو اگر در سایتی مثل virustotal اسکن کنیم نتیجه فایل مخرب رو به ما میده...اما از Agile.Net و Crypto Obfuscator من چنین چیزی ندیدم.

درصورت امکان ممنون میشوم این 2 مورد رو هم تست کنید و از نظر امنیتشون بررسی کنید.

همچنین یک عیب دیگر SmartAssembly اینه که اجازه نمیده dll هایی که خودمان ضروری رو میبنیم را بهش بدیم تا در فایل اجراییمون ادغام کنه...درحالت خودکار هم که نمیتونه تشخیص بده..برای مثال اگر اشتباه نکنم dll های استیمول سافت را که در پروژه استفاده میکردم نتوانست شناسایی کند و ادغام کند. اما این 2 تا موردی که معرفی کردم چنین مشکلی نداشتند

mmbguide
چهارشنبه 26 دی 1397, 21:50 عصر
سلام

دوستان من اولین باره که نیاز به obfuscation دارم و این کار رو با برنامه CryptoObfuscator 2018 انجام دادم. حالا سوالم اینه که تو برنامم از یک DLL استفاده کردم و اون فایل رو obfuscation کردم و برنامه اجرا نمیشه. حالا سوالم اینه که چه زمان باید این کار انجام بشه. آیا باید فایل رو ابتدا obfuscation کنم و بعد به عنوان Reference اضافه کنم و بعد از اون پروژه رو Compile کنم؟ البته من این کارو کردم. ولی در زمان اجرا برنامه اجرا نمیشه

ممنون اگر کمک کنید

Shadow_net
پنج شنبه 27 دی 1397, 11:07 صبح
سلام

دوستان من اولین باره که نیاز به obfuscation دارم و این کار رو با برنامه CryptoObfuscator 2018 انجام دادم. حالا سوالم اینه که تو برنامم از یک DLL استفاده کردم و اون فایل رو obfuscation کردم و برنامه اجرا نمیشه. حالا سوالم اینه که چه زمان باید این کار انجام بشه. آیا باید فایل رو ابتدا obfuscation کنم و بعد به عنوان Reference اضافه کنم و بعد از اون پروژه رو Compile کنم؟ البته من این کارو کردم. ولی در زمان اجرا برنامه اجرا نمیشه

ممنون اگر کمک کنید

متاسفانه منم نتونستم همچین کاری بکنم
فایل dll وقتی obfuscation میشه دیگه نمیشه ازش توی VS استفاده کرد و فکر میکنم کدهاش مبهم میشه و عصن نمیتونه بازش کنه بخاطر همین قید مبهم سازی dll رو زدم
ولی من میام کل پروژش رو در پروژه اصلیم Open میکنم و به عنوان پروژه قرارش میدم

mmbguide
پنج شنبه 27 دی 1397, 13:07 عصر
البته با SmartAssembly هم همین مشکل رو دارم. البته بعد از اضافه کردن DLL به Reference برنامه، میتونم یک کلاس جدید بسازم و به اسامی توابع و متدهای ایجاد شده دسترسی دارم و پارامترهای اون تابع رو هم مقدار دهی میکنم و هیچ مشکلی نیست. ولی به محض دریافت خروجی از آن DLL در زمان اجرا برنامه متوقف میشه.

mmbguide
دوشنبه 20 اسفند 1397, 10:51 صبح
سلام. کسی میتونه مشکل رو حل کنه؟ میخوام DLL رو کد کنم و بصورت یک Reference در برنامم استفاده کنم. تشکر

farhad_shiri_ex
دوشنبه 20 اسفند 1397, 12:32 عصر
سلام. کسی میتونه مشکل رو حل کنه؟ میخوام DLL رو کد کنم و بصورت یک Reference در برنامم استفاده کنم. تشکر

معمولا DLL را که مبهم سازی نمیکنن بهتره برای DLL هاتون اگر نمیخواهید استفاده غیر مجاز نشه قفل های لایسنسی بنویسید وتا زمانی که اون لایسنس را نداشته باشند DLL هم خروجی تولید نکنه! البته این روش برای DLL هایی هست که با دات نت ایجاد شده اند بیشتر کاربرد داره به این علت که امکان دی کامپایل شدن وجود دارد ولی معمولا DLL هایی که در ++C چه در ویندوز وچه درلینوکس SO فایلها به راحتی امکان دی کامپایل وجود ندارد ویا تقریبا غیر ممکن هست!

mmbguide
دوشنبه 20 اسفند 1397, 14:17 عصر
موضوع استفاده غیرمجاز نیست. بلکه نمیخوام کدهای اون دیده بشه. مخصوصا جاهایی که مقادیر رشته ای دارم. بطور خلاصه مبهم سازی DLL برام مهمتره تا استفاده غیرمجاز. ممنون اگر راهنمایی کنید

davidrobert
سه شنبه 21 اسفند 1397, 18:34 عصر
سلام و خسته نباشبد من یه dll برای خودم نوشتم و تمام دستورات دیتابیس رو به اون Dll که ساختم دادم و دو تا Dll خارجی هم به Dll خودم معرفی کردم و تمام دستورات دیتابیس ام از برنامه بردم بیرون و در مرحله آخر فایل Dll اصلی خودم با SmartAssembly برداشتم کدگذاری کردم و کدهای بنده SmartAssembly مخفی کردش به صورت مبهم و به پروژه خودم بعدش فایل dll اضافه کردم بدون هیچ نوع مشکلی پروژه بنده با dll ارتباط برقرار کرد و تمام دستورات من آورد و با سه برنامه DotPeek,reflector و DnSpy برنامه و فایل Dll خودم کرک کردم ببینم دستورات من لو میداد که هرچی دستور الکی بود نشان داد جز دستورات خودم تو این چند سال که باهاش کار میکنم و همین طور آقای کرامتی عزیز هم گفتن برنامه قوی جز SmartAssembly پیدا نشده و یک مشکل با فعال سازی نسخه جدیدش داشتم که آقای مهدی کرامتی عزیز کمک کردن و اون مشکل فعال سازی نسخه جدیدش انجام دادم و اکتیو شد. برنامه قوی هستش SmartAssembly بخواهید ازش استفاده کنید و همیشه قبل از اینکه نسخه آپدیت و جدید برنامه ام به مشتری ام بدم قبلش کدهام مخفی میکنم و میدم به مشتری و تا الان چیزی راجب اینکه پروژه ات نشناخت و یا با مشکلی برخورد کرده از مشتری هام نشیندم و برنامه هام تحت شبکه هستش.

davidrobert
سه شنبه 21 اسفند 1397, 18:39 عصر
البته با SmartAssembly هم همین مشکل رو دارم. البته بعد از اضافه کردن DLL به Reference برنامه، میتونم یک کلاس جدید بسازم و به اسامی توابع و متدهای ایجاد شده دسترسی دارم و پارامترهای اون تابع رو هم مقدار دهی میکنم و هیچ مشکلی نیست. ولی به محض دریافت خروجی از آن DLL در زمان اجرا برنامه متوقف میشه.

بابت این موضوع یک بار سر SmartAssembly من با مشکل خوردم اونم بخاطر سامانه پیامکی ام بود که وب سرویس داشتم و وب سرویس من رفرنس داخلی داشت ولی جای دیگه نمایندگی پیامک خودم گرفتم دیگه از رفرس استفاده کردم بلکه به صورت API توسط کلاس به سامانه پیامکی ام دسترسی پیدا کردم وقتی کدنویسی حودم از وب سرویس Reference در آوردم و تبدیل کردم به صورت API مشکلم حل شد و از سامانه پیامکی من ایراد نگرفت و راحت الان با سامانه ام ارتباط دارم . تنها موقع خطا بابت SmartAssembly تو اجرا برنامه این بود که بخاطر وب سرویس خارجی بود که تبدیل به کلاس کردم مشکلش رفع شد.

علی فتحی
جمعه 24 اسفند 1397, 11:59 صبح
بهترین نرم افزار برای ادغام و دیکد کردن
Eziriz.NET.Reactor.4.9.7.0

davidrobert
شنبه 25 اسفند 1397, 00:58 صبح
بهترین نرم افزار برای ادغام و دیکد کردن
Eziriz.NET.Reactor.4.9.7.0
آقای فتحی عزیز این برنامه تو مخفی کردن خوب عمل کرد ولی چند تا ایراد داشت تمام گزارش های بنده و همین طور ارتباط کارت خوان من که توسط یه فایل OCX انجام میشود همه رو از کار انداخت یعنی نه گزارشات قبول کرد و نه هیچ دستورات کارت خوان رو و باعث شد برنامه از کار بیفته.
به نظر بنده بدرد پروژه های که کلی امکانات داره این برنامه بدرد نمیخوره و Smart Assembly بهترین گذینه هستش و وقتی فایل کدهاش ناپدید یا مبهم میکنه باز یه امنیتی روی پروژه هستش و هم پروژه با این حال که ارتباط با کارت خوان، قفل سخت افزاری، گزارش و همین طور ارتباط با سامانه پیامکی داره از کار نمیندازه

Nima NT
شنبه 25 اسفند 1397, 03:48 صبح
یه نگاهی به ابزار زیر بندازید ؛ تقریبا" اکثر مبهم سازهای دات نتی رو پشتیبانی میکنه و میتونه کد شما رو به حالت عادی ( مبهم نشده ) برگردونه

https://github.com/0xd4d/de4dot