PDA

View Full Version : آزمایش دامپ گرفتن از دات نت



once4ever
جمعه 18 دی 1388, 11:16 صبح
برنامه ای که میگذارم تنها برای بررسی نتیجه dump گرفتن از اپلیکیشنهای تحت پلتفرم دات نت هست و فقط obfuscate شده.
نحوه کار برنامه: دوعدد از کاربر گرفته و توسط یک برنامه دیگر (ایجاد شده در مموری) این دوعدد جمع میشوند و اگر نتیجه از 7 بیشتر شد مقدار -1 نشان میدهد.
لطفا فایل دامپ شده و تغییرات لازم برای برداشتن محدودیت 7 فراموش نشود :چشمک:
ممنون

CYCLOPS
جمعه 18 دی 1388, 14:02 عصر
فکر نکنم این روش زیاد امن باشه چون اصلا نیازی به دامپ گرفتن نیست چون کد برنامه دومتون در دسترس است و میشه مستقیما روی اون تغییر ایجاد کرد
من اول با DeObfuscator فایل اصلی رو DeObfuscat کردم و بعد محدودیت 7 رو برداشتم

کد برنامه دوم که تو مموری هست یه همچین چیزی هست دیگه :


using System;
using System.Windows.Forms;
namespace Test
{
public class Message
{
public string Check(int a, int b)
{
if ((a + b) <= (3 + 4))
return string.Format("{0}+{1}={2}\", a, b, a+b");
return string.Format("{0}+{1}={2}\", a, b, -1");
}
}
}
فایل ضمیمه رو ببین دوست من

once4ever
جمعه 18 دی 1388, 14:50 عصر
من که گفتم هیچ کار امنیتی انجام ندادم و فقط میخواستم دامپ شده رو ببینم
ممنون اگه دامپ برنامه دوم قرار بدید

CYCLOPS
جمعه 18 دی 1388, 19:48 عصر
فایل اول نتیجه دامپ برنامه اصلی خودتون هست (با محدودیت 7)
فایل دوم هم نتیجه دامپ برنامه ای است که تو پست قبلی گذاشتم (بدون محدودیت 7)

در واقع هر دو فایل DLL اسمبلی دومی هست که تو حافظه ساختید

برنامتون رو با dotNetSniffer دامپ گرفتم
سوالی بود در خدمتم
موفق باشید

once4ever
جمعه 18 دی 1388, 20:07 عصر
ممنون
میخواستم تفاوت دامپ گرفتن از مموری بین دات نت و win32 بدونم که با این حالت تفاوت خاصی ندارند

CYCLOPS
شنبه 19 دی 1388, 06:05 صبح
راستش دوست عزیز من تو این بخش تازه واردم و در زمینه Win32 زیاد اطلاعات ندارم و بقیه دوستان راحت تر میتونند کمک کنند ولی حدس میزنم تو دات نت ها راحت تر باشه (به خاطر ساختار فریم ورک) چون من با یه سرچ 3 _ 4 دقیقه ای برای اینکار ابزار پیدا کردم و کارم راه افتاد :چشمک:
در هر صورت دوستانی که در زمینه کرک Win32 اطلاعات و تجربه بیشتری دارند راحت تر میتونند پاسخگوی این سوال باشند

موفق باشی

ASKaffash
شنبه 19 دی 1388, 07:40 صبح
فکر نکنم این روش زیاد امن باشه چون اصلا نیازی به دامپ گرفتن نیست چون کد برنامه دومتون در دسترس است و میشه مستقیما روی اون تغییر ایجاد کرد
من اول با DeObfuscator فایل اصلی رو DeObfuscat کردم و بعد محدودیت 7 رو برداشتم

کد برنامه دوم که تو مموری هست یه همچین چیزی هست دیگه :


using System;
using System.Windows.Forms;
namespace Test
{
public class Message
{
public string Check(int a, int b)
{
if ((a + b) <= (3 + 4))
return string.Format("{0}+{1}={2}\", a, b, a+b");
return string.Format("{0}+{1}={2}\", a, b, -1");
}
}
}
فایل ضمیمه رو ببین دوست من

سلام
لطفا کمی در باره عملکرد نرم افزار DeObfuscator توضیح دهید

once4ever
شنبه 19 دی 1388, 08:24 صبح
راستش دوست عزیز من تو این بخش تازه واردم و در زمینه Win32 زیاد اطلاعات ندارم و بقیه دوستان راحت تر میتونند کمک کنند ولی حدس میزنم تو دات نت ها راحت تر باشه (به خاطر ساختار فریم ورک) چون من با یه سرچ 3 _ 4 دقیقه ای برای اینکار ابزار پیدا کردم و کارم راه افتاد :چشمک:
در هر صورت دوستانی که در زمینه کرک Win32 اطلاعات و تجربه بیشتری دارند راحت تر میتونند پاسخگوی این سوال باشند

موفق باشی
اون جمله ام سوالی نبود. درواقع نتیجه ای بود که از تاپیک گرفتم تا بقیه دوستان هم استفاده کنند :چشمک:


سلام
لطفا کمی در باره عملکرد نرم افزار DeObfuscator توضیح دهید
برنامه های DeObfuscator با استفاده از مهندسی معکوس شروع به برگرداندن بعضی از قسمتهای سورس میکنند.
قسمتی از رشته ها - نام کلاسها و متدها - بدنه متدها توسط Obfuscator ها ممکنه رمزگزاری یا تیکه شده باشه که DeObfuscator ها اونارو با مهندسی معکوس کامل میکنه
بعضی Obfuscator ها از کاراکترهایی تو کدها استفاده میکنند که تو بعضی نمایش دهنده ها مشکل ساز بشن که باز DeObfuscator اون کدهارو تعییر میدن.

اگر برنامه ای داشته باشید که پیچیدگی کدها تو اون زیاد باشه و بطور مستقیم از رشته ها استفاده نکرده باشید از DeObfuscator چیز زیادی نتیجه نمیشه. استفاده از کدهای char بجای string و تعداد فایلهای زیاد میتونه خوندن کدهاتون سخت تر کنه