سؤال

لدي أداة مساعدة صغيرة تمت كتابتها في الأصل في VS2005.

أحتاج إلى إجراء تغيير بسيط، لكن الكود المصدري لأحد ملفات dll قد فقد في مكان ما.

هل هناك أداة مجانية أو ذات أسعار معقولة لإجراء هندسة عكسية لملف dll مرة أخرى إلى كود C++.

هل كانت مفيدة؟

المحلول

عرافة السينية المنقح هو أداة عظيمة، ولكن رمز يكون من الصعب جدا لقراءة وسيكون لديك لقضاء الكثير من الوقت لعكس هندسة DLL كله.

نصائح أخرى

قد ترغب أيضًا في إلقاء نظرة على OllyDbg وهو عبارة عن مصحح أخطاء يقوم بتحليل مستوى المجمّع 32 بت.يتم استخدامه لتحليل الكود الثنائي في السيناريوهات التي لا يكون لديك فيها كود مصدر.إنه مصحح خفيف الوزن. OllyDbg هو برنامج تجريبي لذا يمكنك تنزيله واستخدامه مجانًا..!!

قم بزيارة OllyDbg هي الصفحة الرئيسية هنا

ملاحظة: مرة أخرى في اليوم المفرقعات المستخدمة ثلج ناعم من NuMega لتصحيح الأخطاء في ملف قابل للتنفيذ والتقاط لقطة لقيم السجلات.كان SoftICE مصحح أخطاء متقدمًا.لقد كانت بالتأكيد الأداة المفضلة للمفرقعات.لا أعرف عن الوضع الحالي للمنتج.ولم يكن لدى موقع NuMega أي معلومات حول هذا الموضوع.ربما نسيته ولكني لم أتمكن من العثور عليه.أوصي بالحصول على الإصدار القديم (4.0x) من SoftICE وتطبيق تصحيح WindowsXP لـ SoftICE.يعد العمل مع SoftICE بمثابة "تجربة".

اقرأ المزيد: عكس:أسرار الهندسة العكسية بقلم الداد عيلام

وأنا لا أعرف الوضع المحدد لديك، وكم وظيفة في DLL تنفذ للتطبيق الخاص بك. ولكن أود أن أقول أنه سيكون في معظم الحالات أفضل لإعادة كتابة DLL المفقودة على أساس وظيفة معروفة.

وهذا صحيح لا سيما إذا كان لديك بعض الوثائق لذلك.

ومحاولة عكس مهندس رمز ثنائي إلى المجمع، ثم إلى C ++ ثم محاولة تعديله لتوفير وظائف القائمة تكون في معظم الحالات تستغرق وقتا طويلا، وربما مستحيلا.

إذا تغير الصغيرة الخاصة بك لتحرير بعض النصوص أو لتخطي بعض إجراءات، يمكن استخدام محرر عرافة أو المجمع، ولكنك لن تكون قادرا على رؤية رمز الأصلي C ++، وحتى إذا وجدت أداة يحول DLL العودة إلى رمز، سوف تختفي جميع أسماء المتغيرات وسيكون فوضى كبيرة

واعتمادا قليلا على الوضع الخاص بك وأود أن الحفاظ على إرث / DLL الثنائي كما هو وكتابة DLL المجمع من شأنها أن تغير و / أو إضافة أي سلوك إضافية.

والفكرة هي لتجميع وظائف القديمة في DLL الجديد الذي تستورد القديم.

ما عليك القيام به هو مثل لعبة والتطبيق المفرقعات فعله: استخدام المجمع والإختراق رمز مجمع

وأنت لا يمكن أن تتحول اللحوم إلى حيوان وحتى لو كنت قد عملتم حيوان ميت: P

إذا تم القيام به في. NET ثم لماذا لا تستخدم DOTNET العاكس.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top