Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi [Assembler] Thread mit CreateRemoteThread injizieren (https://www.delphipraxis.net/101580-%5Bassembler%5D-thread-mit-createremotethread-injizieren.html)

Zacherl 15. Okt 2007 22:11


[Assembler] Thread mit CreateRemoteThread injizieren
 
Hey,

ich bin grade bisschen Assembler am lernen und wollte zum Spaß mal ein kleines Delphi Projekt, welches eine MessageBox im Notepad Prozess anzeigt nach ASM portieren.

Soweit meine Injection Funktion:
Code:
Inject PROC NEAR
   mov dwPid, eax
   invoke GetModuleHandle, 0
   mov hModule, eax
   mov edi, eax
   assume edi:ptr IMAGE_DOS_HEADER
   add edi, [edi].e_lfanew
   add edi, sizeof dword
   add edi, sizeof IMAGE_FILE_HEADER
   assume edi:ptr IMAGE_OPTIONAL_HEADER32 
   mov eax, [edi].SizeOfImage
   mov dwSize, eax
   assume edi:NOTHING
   invoke OpenProcess, PROCESS_ALL_ACCESS, FALSE, dwPid
   mov hProcess, eax
   invoke VirtualFreeEx, hProcess, hModule, 0, MEM_RELEASE
   invoke VirtualAllocEx, hProcess, hModule, dwSize, MEM_COMMIT or MEM_RESERVE, PAGE_EXECUTE_READWRITE
   mov hNewModule, eax
   invoke WriteProcessMemory, hProcess, hNewModule, hModule, dwSize, addr dwBytesWritten
   invoke CreateRemoteThread, hProcess, 0, 0, addr RemoteThread, hModule, 0, addr dwTid
   Ret
Inject EndP
und hier die Funktion die injiziert wird:

Code:
RemoteThread PROC
   invoke MessageBox, 0, addr SE_DEBUG, addr SE_DEBUG, 64
   Ret
RemoteThread EndP
Es wird zwar injiziert, aber Notepad verabschiedet sich mit einer AV. Muss / kann man in Assembler auch die ImageBase setzen? Unter Delphi musste die ImageBase für diesen Zweck $13140000 betragen, sonst bekam ich auch eine AV beim Injizieren.

Vielen Dank

brechi 16. Okt 2007 18:44

Re: [Assembler] Thread mit CreateRemoteThread injizieren
 
jo Imagebase stimm net, muss in beiden Programmen die selbe sein.
Toll ist der Code generell nicht und weiß auch nciht wie man die imagebase setzt sry

Zacherl 16. Okt 2007 18:53

Re: [Assembler] Thread mit CreateRemoteThread injizieren
 
Oki macht nichts, probiere ich mich halt erst an aderen Dingen :P


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:13 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz