Adresse zu LoadLibraryA irgendwo in der .exe hinterlegt?
-
Hallo,
also da ich hier schon öfter schnell kompetente Hilfe bekommen habe versuch ich mein Glück erneut.
Und zwar geht es um ein Framework mit welchem man bestehenden .exe Files Funktionen hinzufügen kann.
Das pure hinzufügen von Code funktioniert schon, allerindgs hab ich das Problem das ich nicht weiß wie ich von diesem Code ( der vor dem normalen .exe Code ausgeführt wird ) zumindest verlässlich LoadLibrary und GetProcAddr aufrufen kann da ich ja nie weiß an welcher Adresse der Code landet, in welcher .exe und auch nicht in welchem OS er ausgeführt wird.Gibt es irgend einen Weg die 2 Funktions-Adressen auszulesen ohne API funktionen zu verwenden?
Werden die vll irgendwo in der .exe hinterlegt? Kenn mich damit leider nicht so aus..
mfg
-
Ohne garantie würd ich dir mal ne intensive Suche nach Import Address Table raten.

-
Ah vielen Dank, das war das Stichwort das ich gebraucht hab

Ich glaub das ist was ich gesucht hab, jetzt muss ich nur noch bischen durch das PE Format blicken aber das wird schon
Wenn nicht weiß ich ja wo mir geholfen wird, hehe.mfg
-
gern geschehen

-
Hi Leute,
Also ich habs tatsächlich geschafft mich durch den Haufen Pointer zu wühlen und hab gerade von ein paar zufälligen Test-Programmen die Imports ausgelesen und nirgends LoadLibraryA oder dergleichen gefunden..
Dann hab ich eins meiner alten Programme genommen welches sicher LoadLibrary verwendet und naja.. das ist die Ausgabe:
KERNEL32.dll
AddAtomA
CreateSemaphoreA
ExitProcess
FindAtomA
GetAtomNameA
GetLastError
InterlockedDecrement
InterlockedIncrement
ReleaseSemaphore
SetLastError
SetUnhandledExceptionFilter
Sleep
TlsAlloc
TlsFree
TlsGetValue
TlsSetValue
WaitForSingleObjectmsvcrt.dll
_fdopen
_read
_strdup
_writemsvcrt.dll
__getmainargs
__mb_cur_max
__p__environ
__p__fmode
__set_app_type
_assert
_cexit
_ctype
_errno
_filelengthi64
_fstati64
_iob
_isctype
_lseeki64
_onexit
_pctype
_setmode
_strnicmp
_vsnprintf
abort
atexit
fclose
fflush
fgetpos
fopen
fprintf
fread
free
fsetpos
fwrite
getc
localeconv
malloc
memchr
memcpy
memmove
memset
putc
setlocale
setvbuf
signal
strcmp
strcoll
strcpy
strftime
strlen
strtod
strxfrm
system
ungetcWieso zur Hölle ist da kein LoadLibraryA ?

Überhaupt, warum sind, auch in großen Programmen wie ICQ, nur so wenig Imports? Und irgendwie immer die gleichen wenn ich das richtig in Erinnerung habe..Schonmal vielen Dank für eure Hilfe

mfg
-
Ah ok, hatte nen kleinen Denkfehler drinnen, er hat immer die IAT vom gleichen programm ausgelesen

mfg