DARKLord Napisano Czerwiec 12, 2008 Zgłoś Udostępnij Napisano Czerwiec 12, 2008 Jak pozyskać adres jakiej kolwiek funkcji bez wywołania funkcji LoadLibrary i GetProcAddress?? Cytuj Link do komentarza Udostępnij na innych stronach More sharing options...
Bartosz Wójcik Napisano Czerwiec 12, 2008 Zgłoś Udostępnij Napisano Czerwiec 12, 2008 Parsowanie pliku PE, jej struktury export directory z uwzglednieniem wszystkich ciekawych rzeczy jak funkcje exportowane przez numer, forwardowane funkcje (przez numer i string), ogolnie prosta sprawa, bo export directory nie jest skomplikowany. To odnosnie GetProcAddress. Co do LoadLibrary to juz zalezy skad chcesz pobrac adres tej funkcji i jakiego rodzaju to biblioteka. Jesli to systemowa mozesz wykorzystac liste bibliotek zapisanych bodaj w strukturze PEB (poprawcie mnie jesli sie myle), dzieki czemu uzyskasz dostep do uchwytow zaladowanych bibliotek. Mozesz tez pobrac adres z pliku PE na dysku (tak jak mowilem, zalezy co chcesz zrobic). Cytuj Link do komentarza Udostępnij na innych stronach More sharing options...
DARKLord Napisano Czerwiec 12, 2008 Autor Zgłoś Udostępnij Napisano Czerwiec 12, 2008 nie bardzo wiem w jaki sposób można to wykonać.:( Cytuj Link do komentarza Udostępnij na innych stronach More sharing options...
Bartosz Wójcik Napisano Czerwiec 12, 2008 Zgłoś Udostępnij Napisano Czerwiec 12, 2008 No ale masz pojecie o czyms takim jak struktura pliku wykonywalnego? Wiec biblioteki DLL i czasami nawet pliki EXE posiadaja magiczna tabele :) - tabele exportow, ktora zawiera informacje o adresach i nazwach funkcji / zmiennych, ktore udostepnia innym aplikacjom. Twoim zadaniem jest pobranie adresu export directory z naglowka pliku wykonywalnego (ktory znajduje sie w strukturze data directory), a nastepnie przeskanowanie zawartosci export directory w poszukiwaniu danej funkcji :) Potrzebujesz do tego opis struktury export directory, procedur przerabiajacych adresy relatywne RVA na bezposrednie i funkcji porownujacej stringi :) Dalbym ci gotowca ale niczego bys sie nie nauczyl ta metoda :) Cytuj Link do komentarza Udostępnij na innych stronach More sharing options...
DARKLord Napisano Czerwiec 13, 2008 Autor Zgłoś Udostępnij Napisano Czerwiec 13, 2008 Mam mam jako takie :P. Dzieki bartek za wskazanie drogi :D cos wykombinuje. Cytuj Link do komentarza Udostępnij na innych stronach More sharing options...
ged_ Napisano Czerwiec 13, 2008 Zgłoś Udostępnij Napisano Czerwiec 13, 2008 wszystko masz w zinach 29a. http://www.29a.net/" title="http://www.29a.net/">http://www.29a.net/ slowa kluczowe, ktore cie interesuja: base address (ew. imagebase) kernel32. Cytuj Link do komentarza Udostępnij na innych stronach More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.