سلام :)
فایل های منبع را چه جوری میشه Code کرد، که قابل دسترسی در خارج از برنامه نباشه.
و البته خود برنامه بتونه اونارو تو حافظه Decode کنه و بشناسه (بدون کپی کردن رو هارد)
ممنون
Printable View
سلام :)
فایل های منبع را چه جوری میشه Code کرد، که قابل دسترسی در خارج از برنامه نباشه.
و البته خود برنامه بتونه اونارو تو حافظه Decode کنه و بشناسه (بدون کپی کردن رو هارد)
ممنون
اگر فایلهای منبع را در دی ال ال ها ذخیره می کنید (resource files) و یا فایل exe، می تونید از کامپرسورهای فایلهای exe و dll استفاده کنید. کار این کامپرسورها دقیقا همین موردی است که شما فرمودید. (یکی از مواردی است که عموما کار مهندسی معکوس برنامه را *کمی* سخت تر می کند)
برای نمونه: (یکی از معروفترین packer ها)
http://www.aspack.com/asprotect.html
یک مورد دیگر هم UPX است:
http://upx.sourceforge.net/
:)
با تشکر از توجه شما :آقای نصیری
شاید اصطلاح فایل های منبع رو بد بکار بردم، منظور اصلی من اینه که هر فایلی که در برنامه استفاده بشه ( مثلا mp3، avi) رو چه جوری میشه کد کرد که فقط برنامه من بتونه اونا رو بخونه.
البته بدون کپی کردن روی هارد. یعنی میشه تو حافظه اونا رو دکود کرد و بعد از اونا استفاده کرد ؟
ممنون میشم اگه کسی راهنماییم کنه.
:roll:
در واقع مشکل اصلی اینه که :
چطور فایل های دکود شده در حافظه رو استفاده کنم.
مثلا یه فایل mp3 یا یک exe که تو حافظه قرار داده شده.
اصلا فکر میکنید چنین کاری ممکن باشه ؟!!! :?:
میتونی فایل های مورد نظر خودتو با الگوریتم خودت یا الگوریتم های عمومی رمزنگاری کنید و در هنگام اجرا به سرعت باز کنید.نقل قول:
اصلا فکر میکنید چنین کاری ممکن باشه ؟!!!
سلام
راستی کسی می دونه چطور میشه یک فایل exe را مستقیم بروی حافظه اجرا کرد.
مثلا من در دلفی یک فایل exe را embed کردم و می خواهم اجرا کنم بدون extract کردن در هارد.
مرسی :)
اگر علاقمند به این مباحث هستید به کتابهای جناب Matt Pietrek (یکی از بانیان SoftIce در شرکت Numega) مراجعه کنید (قسمت های دیباگینگ ویژوال سی پلاس پلاس جدید مایکروسافت زیر نظر این بزرگوار است!).
من این کتابها رو ندارم! لطفا سوال نفرمایید.گوگل بهترین دوست شما است.
+
http://www.barnamenevis.org/vi...er=asc&start=0
و همچنین :
http://www.programmersheaven.com/zone16/cat1055/
زحمت کشیدی :wink:
من برای این کار یک فایل رو کاراکتر به کاراکتر میخونم و با یک کلید تک تک کاراکتر ها رو کد می کنم و برای جلوگیری از رمز گشایی یک کلید خاص رو آن قرار میدهم سپس از کل محتوا یک امضای هش شده می گیرم.نقل قول:
میتونی فایل های مورد نظر خودتو با الگوریتم خودت
البته کمی از اینی که گفتم پیچیده تره و تمهیداتی برای جلوگیری از رمز گشایی روی فایل اجرا میشه. امیدوارم ایده رو گرفته باشی.
فکر میکنم دوستان سئوال رو نگرفتند
آقا من بخدا بلدم فایل رو encrypt کنم ولی میخوام برای decode اونو توی ram باز کنم و بدون ریختن روی هارد از اون استفاده کنم.
فرض کنید میخواین یه exe را infect کنید نه bundle
سلام
تابع CreateProcess رو بخونین ممکنه بشه به جای فایل بهش بگیم از یه اشاره گر در حافظه اجرا کنه.
ممنون علی