PDA

View Full Version : آیا می توان فایل های اجرایی دات نت را که Obfuscate شده اند به حالت اولیه باز گرداند؟



blackbird
یک شنبه 09 مهر 1385, 14:45 عصر
سلام دوستان
آیا می توان فایل های اجرایی دات نت را که Obfuscate شده اند به حالت اولیه باز گرداند؟ و توسط Decompiler سورس آنها رو مشاهده کرد؟
با تشکر

Farhad.B.S
یک شنبه 09 مهر 1385, 18:28 عصر
خیر،
کاری که obfuscator ها انجام میدن در ساده ترین حالت تبدیل اسامی به کار رفته، تبدیل توابع مختلف به یک تابع در قالب Overload های مختلف ، انکد رشته ها و ... هستش.
طبیعیه که بازگردوندن این فرمت به قالب اصلی از عهده نرم افزار خارجه (تمامی اطلاعات اولیه مثل جدول اسامی ، جدول توابع و ... از بین خواهند رفت)

البته بعد از obfuscation هم میتونی کد IL و نهایتاً سورس رو در قالب زبان مورد نظرت بدست بیاری اما تغییرات فوق رو هم مشاهده خواهی کرد.

blackbird
یک شنبه 09 مهر 1385, 19:27 عصر
خیر،
طبیعیه که بازگردوندن این فرمت به قالب اصلی از عهده نرم افزار خارجه (تمامی اطلاعات اولیه مثل جدول اسامی ، جدول توابع و ... از بین خواهند رفت)

البته بعد از obfuscation هم میتونی کد IL و نهایتاً سورس رو در قالب زبان مورد نظرت بدست بیاری اما تغییرات فوق رو هم مشاهده خواهی کرد.

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

Farhad.B.S
یک شنبه 09 مهر 1385, 22:39 عصر
هیچ تضمینی وجود نداره ، این ابزارها همونطور که از نامشون مشخصه فقط کد رو پیچیده تر میکنند.
منظور از پیچیده کردن هم سخت تر شدن فهم کد توسط انسان هستش.

این ابزار ها نه از decompile شدن جلوگیری میکنند و نه چیزی رو غیر قابل مشاهده میکنند، فقط با ایجاد تغییرات منطقی باعث میشند که درک کد برای مخاطب "انسان" سخت و یا غیر ممکن بشه.

blackbird
دوشنبه 10 مهر 1385, 13:27 عصر
با ایجاد تغییرات منطقی باعث میشند که درک کد برای مخاطب "انسان" سخت و یا غیر ممکن بشه.

سلام
فرهاد جان از لطفت ممنونم. فقط یه سوال دیگه. از کدهایی که Decompiler از یه فایل محافظت شده بدست میاره می توان در محیط زبان برنامه نویسی استفاده کرد یا درک کدها برای زبان برنامه نویسی هم غیر ممکن می شه؟
ممنون

Farhad.B.S
دوشنبه 10 مهر 1385, 15:23 عصر
بله ، مسلما این کد ها قابل اجرا هستند و با کامپایل کد IL تولید شده میتونید یه binary قابل اجرا بسازید اما به هرحال به دلیل مسائلی مثل encrypt شدن رشته ها و ... شاید به سادگی یک کپی/پیست در محیط develop نباشه.

blackbird
سه شنبه 11 مهر 1385, 10:56 صبح
سلام
آقا فرهاد متشکرم