DLL injection and Hooking
در اینجا قصد داریم تا در مورد DLL Injection و استفاده از آن برای انجام Inline Hooking در پروسس راه دور را بصورت تئوری توضیح دهیم.
در ویندوز هر پروسس فضای آدرس مجازی مختص به خودش را دارد که در آن می توان هر DLL را در هر زمانی لود یا آنلود کرد. اما این لود و آنلود شدن DLL توسط خود پروسس انجام می گیرد. گاهی وقت ها ما تمایل داریم یک DLL را بدون اینکه پروسس بفهمد در داخل پروسس لود کنیم.دلایل زیادی برای این کار وجود دارد (قانونی و غیر قانونی) . برای مثال یک بدافزار نویس ممکن است بخواهد تا فعالیت های مخربش را با لود کردن یک DLL در یک پروسس قابل اطمینان مخفی کند یا ممکن است بخواهد دستگاه های امنیتی را bypass کند از طرف دیگر یک شخص ممکن است بخواهد عملکرد های برنامه ای را توسعه دهد.
ما در اینجا راه های تزریق code/DLL در داخل یک پروسس راه دور (Remote process) را نشان می دهیم .سپس ما آنرا برای هوک کردن API خاصی در پروسس هدف توسعه می دهیم تا بتوانیم کارهای خودمان را انجام دهیم.
- ۱ نظر
- ۳۱ شهریور ۹۶ ، ۰۱:۳۴
- ۱۴۷۵ نمایش