EXE Cryptor مشفر ملفات تنفيدية بسيط
#1
السلام عليكم

مشفر ملفات تنفيدية بسيط ... هده الطرقة مستوحات من المثال iPacker


الملفات المرفقة
.rar   EXE Cryptor.rar (الحجم : 3.62 KB / التحميلات : 530)
.rar   Delphi_7_Cryptor.rar (الحجم : 2.6 KB / التحميلات : 473)
[-] كل من 1 user says قال شكرا ل hanipino على المشاركة المفيدة
  • mohamed49
الرد
#2
بارك الله فيك أخي ـ برنامج جميل ـ ممكن تشرح لنا المبدأ ؟
ومن يتهيب صعود الجبال يعش أبد الدهر بين التلال و الحفر
الرد
#3
وعليكم السلام و رحمة الله

من الاحسن تغيير الاسم من EXE Cryptor الى أخر
ايضا حاول اضافة الضغط
الرد
#4
مشكور على التطبيق
جربته على بعض التطبيقات التي كان avira يعتبرها Gen و الان اصبحت سليمة . ولكن تحولت في نظر بعض المضادات الى فيروسات !!
الرد
#5
بارك الله فيك على البرنامج لكن جربته فتعارضني هته الرسالة
Access violation at address 00401DD1 in module 'Project1.exe'. Write of address 83EC8B54.
لأستهلنّ الصعب أو أدرك المنى    فما انقادت الآمال إلاّ لصابر
الرد
#6
khiro.alg كتب :بارك الله فيك أخي ـ برنامج جميل ـ ممكن تشرح لنا المبدأ ؟

المبداء بسيط .
1- تشفير كل الملف معدى Tls, Resource, ImportTable
2- اضافت Section تقوم بفك التشفير فى الداكرة ... كيف دالك :
ا) تحصل على ImageBase ( العنوان الدى يبداء منه البرنامج فى الذاكرة) باستدعاء الدالة
إقتباس :GetModuleHandle(nil);

الان بما اننا حصلنا على ImageBase فالعمل سهل اى اننا نعلم اين توجد كل بيانات Sections بدايتها و نهايتها

ب) نغير الحماية للمكان المحمل فيه برنامجنا فى الذاكرة ... اى امكانية الدخول لهذا المكان للكتابة و القراءة و التنفيذ

ج) نفك تشفير المشفر

د) بالنسبة OEP يتم تخزينها فى اول 4 Byte ل Section المضافة

....
المهم اخى khiro.alg ان توفر الوقت ساشرح العملية بالتفصيل على شكل درس فلاشى و ان شاء الله ستفهم المبداء يشكل جيد .

إقتباس :من الاحسن تغيير الاسم من EXE Cryptor الى أخر
ايضا حاول اضافة الضغط
بارك الله فيك اخى عبد العزيز ... فى المستقبل ان شاء الله سيتم اضافة الضغط ... لحد الان العملية صعبة قليلا ... المشكل فى ImportTable

إقتباس :Access violation at address 00401DD1 in module 'Project1.exe'. Write of address 83EC8B54

اخ mobile هل ممكن ان ترفق لنا هذا الملف لمحاولت فهم سبب المشكل .
الرد
#7
السلام عليكم
ليس ملف واحد لكن كل ملف **** ان اشفره تخرج لي هته الرسالة
لأستهلنّ الصعب أو أدرك المنى    فما انقادت الآمال إلاّ لصابر
الرد
#8
هل حاولت تتبع الملف ب OLLYDBG ...
هل الدالة GetModuleHandleA تعيد ImageBase
هل الدالة VirtualProtectEx تنجح اى عائدها True

---------------------

افتح مشروع جديد فى الدالفى وكتب هاذ الكود

PHP كود :
ShowMessage
  
(
   
'GetModuleHandleA = $' +
   
IntToHex
           
(
            
DWORD(GetProcAddress(LoadLibrary('Kernel32.dll'), 'GetModuleHandleA'))
            ,
8
           
)
  + 
'   ' +
  
'VirtualProtectEx = $' +
   
IntToHex
           
(
            
DWORD(GetProcAddress(LoadLibrary('Kernel32.dll'), 'VirtualProtectEx'))
            ,
8
           
)
  ); 

هل الرسالة هى هكذا اى عناوين الدوال متطابقة .
إقتباس :GetModuleHandleA = $7C80B731 VirtualProtectEx = $7C801A61
الرد
#9
جيد أخي ...لابد أن نتعلم شيأ غير قواعد البيانات Smile

لازال يحتاج لتطوير ...شفرت به ملف تنفيدي لدلفي (فورم فارغ 361 كيلو بايت دلفي 7)

يشفر لكن يظهر سالة خطأ عند الولوج لعنوان في الداكرة

كنت قد برمجت مشفرا آخرا وتخليت مؤقتا عنه ...يشفر جميع Section لكن لم أستطع تشفر data. والرسورس

ويعتمد على طريقة مشابهة لطريقتك عكس المشفر الأول...الأمر يستلزم معرفة قوية لبنية الملفات التنفيدية

في آخر المطاف برمجة Protector جيد هو الأفضل ...

تحياتي
لا اله الا أنت سبحانك اني كنت من الضالمين
الرد
#10
هاهو نص الرسالة كما قلت
---------------------------
Project1
---------------------------
GetModuleHandleA = $7C80B741 VirtualProtectEx = $7C801A61
---------------------------
OK
---------------------------
لأستهلنّ الصعب أو أدرك المنى    فما انقادت الآمال إلاّ لصابر
الرد


التنقل السريع :


مستخدمين يتصفحوا هذا الموضوع: 1 ضيف