PDA

View Full Version : استخراج کد از فایل exe???!!!



sa1378
یک شنبه 18 آبان 1393, 13:53 عصر
سلام
آیا راهی هست که از یه فایل exe کد برنامه ای که داره اجرا میکنه رو بدست اورد؟
به نظر من باید بشه
چون بالاخره این فایل داره کد رو اجرا میکنه و باید یجاییش ذخیره شده باشه

کامبیز اسدزاده
یک شنبه 18 آبان 1393, 14:15 عصر
سلام
آیا راهی هست که از یه فایل exe کد برنامه ای که داره اجرا میکنه رو بدست اورد؟
به نظر من باید بشه
چون بالاخره این فایل داره کد رو اجرا میکنه و باید یجاییش ذخیره شده باشه

سلام ٫

معمولا توسط مهندسی معکوس و ابزار های خاص یا نمونه پروژه های زیر میشه کارهایی کرد باید جستجو کنید برای مثال با یک جستجوی سایده نتایج زیر رو گرفتم :
مثلا نمونش پروژه Boomerang توضیحات : http://boomerang.sourceforge.net/
یا مثلا : http://www.backerstreet.com/decompiler/decompilers.htm

البته باید ذکر کنم که خیلی روشون حساب نکنید.

مسعود اقدسی فام
یک شنبه 18 آبان 1393, 14:30 عصر
سلام
آیا راهی هست که از یه فایل exe کد برنامه ای که داره اجرا میکنه رو بدست اورد؟
به نظر من باید بشه
چون بالاخره این فایل داره کد رو اجرا میکنه و باید یجاییش ذخیره شده باشه

کد جایی ذخیره نمی‌شه. متناسب با زبانی که استفاده شده به زبان ماشین یا زبان واسط (مثل دات نت یا جاوا) تبدیل می‌شه. برگشت از این کد به کد اصلی (دقیقا همون کدی که نوشته شده با کامنت و خیلی چیزای دیگه) غیر ممکن هست. اما شاید بشه کد معادل رو به دست آورد که مهندسی معکوس و امثالهم برای این کاراست. در مقابل هم مبهم سازی وجود داره.

sa1378
یک شنبه 18 آبان 1393, 15:04 عصر
کد جایی ذخیره نمی‌شه. متناسب با زبانی که استفاده شده به زبان ماشین یا زبان واسط (مثل دات نت یا جاوا) تبدیل می‌شه. برگشت از این کد به کد اصلی (دقیقا همون کدی که نوشته شده با کامنت و خیلی چیزای دیگه) غیر ممکن هست. اما شاید بشه کد معادل رو به دست آورد که مهندسی معکوس و امثالهم برای این کاراست. در مقابل هم مبهم سازی وجود داره.
یعنی مثلا برنامه های بزرگ که نوشته میشن و میرن تو بازار رو امکان داره یکی کدشو بفهمه و از الگوریتماش برای کارای خودش استفاده کنه؟

یه سوالی هم داشتم
من اینو پیدا کردم:
http://daneshportal.blogfa.com/post-1104.aspx
ocx چی هست؟

کامبیز اسدزاده
یک شنبه 18 آبان 1393, 15:49 عصر
یعنی مثلا برنامه های بزرگ که نوشته میشن و میرن تو بازار رو امکان داره یکی کدشو بفهمه و از الگوریتماش برای کارای خودش استفاده کنه؟

یه سوالی هم داشتم
من اینو پیدا کردم:
http://daneshportal.blogfa.com/post-1104.aspx
ocx چی هست؟

مثال هایی که در بالا آوردم روش های سیستم Decompiling رو بکار گرفتند. تنها روشی که میشه بهش امیدوار بود همینه که در زمینه مهندسی معکوس استفاده میشوند.

negative60
یک شنبه 18 آبان 1393, 17:43 عصر
بهتره سؤالتون رو اينجا بپرسيد (http://barnamenevis.org/forumdisplay.php?116-%D9%85%D9%87%D9%86%D8%AF%D8%B3%DB%8C-%D9%85%D8%AC%D8%AF%D8%AF-%D9%88-%D9%85%D8%B9%DA%A9%D9%88%D8%B3) بهتر ميتونند کمکتون کنند همچنين ربطی به c++ نداره
برنامه های Native رو نميشه به راحتی ديکامپايل کرد کار هر کسی هم نيست چون نيازمند تجربه و ساعت ها وقت و تلاش هست تا بتونند تک تک توابع رو تحليل کنند
اما برنامه های ساخته شده با .net يا جاوا رو با ابزار هايی که برای همين منظور ساخته شده اند رو ميشه ديکامپايل کرد اما از طرف ديگه ابزار هایی هم برای محافظت ساخته شده اند اما هيچکدم امنيت کامل رو به وجود نميارند فقط راه رو سخت ميکنند



یعنی مثلا برنامه های بزرگ که نوشته میشن و میرن تو بازار رو امکان داره یکی کدشو بفهمه و از الگوریتماش برای کارای خودش استفاده کنه؟
بله, اما برنامه های بزرگ معمولاً قسمتيش به وسيله NDK با C/C++ نوشته ميشن همانند يک dll اما برای لينوکس (نه فقط به خاطر امنيت) که اين قسمت رو مثل برنامهای Native نميشه به راحتی ديکامپايل کرد



یه سوالی هم داشتم
من اینو پیدا کردم:
http://daneshportal.blogfa.com/post-1104.aspx

ocx چی هست؟

با VB Decompiler فقط ميشه UI برنامه رو به دست آورد کرد که هيچ کارایی نداره
فايل های OCX کامپوننت هايی هست که با VB6 ساخته ميشند تقريباً مثل همون dll اما ميتونه ظاهر گرافيکی هم داشته باشه ، مثل تب کنترل, دکمه، و...