PDA

View Full Version : کد کردن فایل های منبع



sinpin
سه شنبه 31 شهریور 1383, 17:07 عصر
سلام :)

فایل های منبع را چه جوری میشه Code کرد، که قابل دسترسی در خارج از برنامه نباشه.
و البته خود برنامه بتونه اونارو تو حافظه Decode کنه و بشناسه (بدون کپی کردن رو هارد)
ممنون

Vahid_Nasiri
سه شنبه 31 شهریور 1383, 18:18 عصر
اگر فایلهای منبع را در دی ال ال ها ذخیره می کنید (resource files) و یا فایل exe، می تونید از کامپرسورهای فایلهای exe و dll استفاده کنید. کار این کامپرسورها دقیقا همین موردی است که شما فرمودید. (یکی از مواردی است که عموما کار مهندسی معکوس برنامه را *کمی* سخت تر می کند)

برای نمونه: (یکی از معروفترین packer ها)
http://www.aspack.com/asprotect.html
یک مورد دیگر هم UPX است:
http://upx.sourceforge.net/

sinpin
سه شنبه 31 شهریور 1383, 18:30 عصر
:)

با تشکر از توجه شما :‌آقای نصیری

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

sinpin
سه شنبه 31 شهریور 1383, 18:36 عصر
:roll:
در واقع مشکل اصلی اینه که :
چطور فایل های دکود شده در حافظه رو استفاده کنم.
مثلا یه فایل mp3 یا یک exe که تو حافظه قرار داده شده.

اصلا فکر میکنید چنین کاری ممکن باشه ؟!!! :?:

Best Programmer
پنج شنبه 16 مهر 1383, 19:33 عصر
اصلا فکر میکنید چنین کاری ممکن باشه ؟!!!

میتونی فایل های مورد نظر خودتو با الگوریتم خودت یا الگوریتم های عمومی رمزنگاری کنید و در هنگام اجرا به سرعت باز کنید.

francosoft
دوشنبه 21 دی 1383, 16:32 عصر
سلام
راستی کسی می دونه چطور میشه یک فایل exe را مستقیم بروی حافظه اجرا کرد.

مثلا من در دلفی یک فایل exe را embed کردم و می خواهم اجرا کنم بدون extract کردن در هارد.

مرسی :)

Vahid_Nasiri
دوشنبه 21 دی 1383, 20:53 عصر
اگر علاقمند به این مباحث هستید به کتابهای جناب Matt Pietrek (یکی از بانیان SoftIce در شرکت Numega) مراجعه کنید (قسمت های دیباگینگ ویژوال سی پلاس پلاس جدید مایکروسافت زیر نظر این بزرگوار است!).
من این کتابها رو ندارم! لطفا سوال نفرمایید.گوگل بهترین دوست شما است.

+

http://www.barnamenevis.org/forum/viewtopic.php?t=17582&postdays=0&postorder=asc&start=0

و همچنین :
http://www.programmersheaven.com/zone16/cat1055/

francosoft
دوشنبه 21 دی 1383, 20:56 عصر
زحمت کشیدی :wink:

houtanal
پنج شنبه 11 فروردین 1384, 16:49 عصر
میتونی فایل های مورد نظر خودتو با الگوریتم خودت

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

sinpin
شنبه 13 فروردین 1384, 12:05 عصر
فکر میکنم دوستان سئوال رو نگرفتند

آقا من بخدا بلدم فایل رو encrypt کنم ولی میخوام برای decode اونو توی ram باز کنم و بدون ریختن روی هارد از اون استفاده کنم.
فرض کنید میخواین یه exe را infect کنید نه bundle

seyedof
پنج شنبه 23 تیر 1384, 21:10 عصر
سلام
تابع CreateProcess رو بخونین ممکنه بشه به جای فایل بهش بگیم از یه اشاره گر در حافظه اجرا کنه.
ممنون علی