ورود

View Full Version : تزریق DLL به برنامهی دیگه



r00tkit
پنج شنبه 08 مهر 1389, 21:25 عصر
سلام

استاد Inpy یه مثال زده بود با دلفی (که برای متوجه شدنش رفتم10 دقیقه ای دلفی رو یاد گرفتم البته فقط syntax )

منم تو c/C++‎ با یه روش دیگه نوشتم

اول calc رو اجرا کنید بعد برنامه رو بعد title ماشین حساب رو ببینید




#include<stdio.h>
#include<iostream>
#include<Windows.h>
#define DLLname "d:\\a.dll"
int main()

{

DWORD pid=4672;

GetWindowThreadProcessId(FindWindow(NULL,"Calculator"),&pid);
HANDLE ph;
LPVOID gp,sp;
gp=(LPVOID)GetProcAddress(GetModuleHandle("Kernel32.dll"),"LoadLibraryA");

ph=OpenProcess(PROCESS_ALL_ACCESS,FALSE,pid);
sp=(LPVOID)VirtualAllocEx(ph,NULL,strlen(DLLname), MEM_RESERVE|MEM_COMMIT,PAGE_READWRITE);

if(!WriteProcessMemory(ph,(LPVOID)sp,DLLname,strle n(DLLname),NULL))
{
std::cout<<"error code:"<<GetLastError();

}
else
{
if(!CreateRemoteThread(ph,NULL,0,(LPTHREAD_START_R OUTINE)gp,(LPVOID)sp,0,NULL))
{
std::cout<<"error code:"<<GetLastError();

}

}
}
اینم سورس DLL



#include<Windows.h>

BOOLEAN WINAPI DllMain( HINSTANCE hDllHandle,DWORD nReason, LPVOID Reserved)
{


MessageBox(NULL,"hi","its a MessageBOX",MB_OK);
SetWindowText(FindWindow(NULL,"Calculator"),"i am geek");
return TRUE;
}

r00tkit
شنبه 08 آبان 1389, 16:54 عصر
سلام

یه مقالهی خوب در مورد راه های inject dll به همراه مثال کامل برای همهی روش ها

حالشو ببر هم وتن