تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
كيف يمكن حقن تعليمه القفز مع العنوان [jump + address] داخل Process أخر بشكل صحيح ؟
#4
السلام عليكم
(31-12-2022, 01:22 PM)lionking كتب :  
  • كيف يمكنني كتابة العنوان Address الذي سيتم القفز إليه JMP بشكل صحيح؟

  •  

قم بتخزين العوان باحدى المسجلات ثم دعه يقفز اليه.
(31-12-2022, 01:22 PM)lionking كتب : كيف أقوم بحقن التعليمة كمثال JMP 0x0048D9B2 بسطر كود واحد بأستخدام الدالة WriteProcessMemory بدلا من تكرار كتابة الدالة مرة لكتابة أمر JMP ومرة لكتابة العنوان Address؟
 
void writeMemory()
{
byte bMove = 0xB8;
DWORD dwAddress = 0x48D9B2 ;
WORD wJumpeax = 0xE0FF;

byte* buf = new byte[7]; // 1 mov , 4 address , 2 jmp eax

*buf = bMove;
memcpy(&buf[1], &dwAddress,sizeof(DWORD));
memcpy(&buf[5], &wJumpeax, sizeof(WORD));

DWORD dwBytesWritten = 0;
DWORD dwTargetAddress = 0x40100A;

WriteProcessMemory(GetCurrentProcess(), (LPVOID)dwTargetAddress, buf, 7, &dwBytesWritten);
delete[] buf;
}
أعضاء أعجبوا بهذه المشاركة : TeRcO


الردود في هذا الموضوع
RE: كيف يمكن حقن تعليمه القفز مع العنوان [jump + address] داخل Process أخر بشكل صحيح ؟ - بواسطة SeGNMeNT - 01-01-2023, 11:07 AM

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


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم