
Ein kleines Tool, das ich erstellt habe, um die Exporttabelle von PE-Dateien auszugeben. Der primäre Anwendungsfall war für den Einsatz beim DLL-Proxying gedacht.
Ein kleines Tool, das ich geschrieben habe, um die Exporttabelle von PE-Dateien zu dumpen. Der primäre Anwendungsfall war die Verwendung im Zusammenhang mit DLL-Proxying.
.\ExportDump dllpath
z. B.
.\ExportDump C:\Windows\System32\version.dll
[*] Dumping all 17 exported functions from C:\windows\system32\version.dll.
[+] Dumping done. Check pragma.h
Kopiere den Inhalt von pragma.h in dein Projekt oder binde sie einfach ein, und alle exportierten Funktionen sollten aus der Kopie, die du auf der Festplatte hast, verlinkt werden.
pragma.h
#pragma comment(linker, "/export:GetFileVersionInfoA=C:\\windows\\system32\\version.GetFileVersionInfoA,@1")
#pragma comment(linker, "/export:GetFileVersionInfoByHandle=C:\\windows\\system32\\version.GetFileVersionInfoByHandle,@2")
#pragma comment(linker, "/export:GetFileVersionInfoExA=C:\\windows\\system32\\version.GetFileVersionInfoExA,@3")
#pragma comment(linker, "/export:GetFileVersionInfoExW=C:\\windows\\system32\\version.GetFileVersionInfoExW,@4")
#pragma comment(linker, "/export:GetFileVersionInfoSizeA=C:\\windows\\system32\\version.GetFileVersionInfoSizeA,@5")
#pragma comment(linker, "/export:GetFileVersionInfoSizeExA=C:\\windows\\system32\\version.GetFileVersionInfoSizeExA,@6")
#pragma comment(linker, "/export:GetFileVersionInfoSizeExW=C:\\windows\\system32\\version.GetFileVersionInfoSizeExW,@7")
#pragma comment(linker, "/export:GetFileVersionInfoSizeW=C:\\windows\\system32\\version.GetFileVersionInfoSizeW,@8")
#pragma comment(linker, "/export:GetFileVersionInfoW=C:\\windows\\system32\\version.GetFileVersionInfoW,@9")
#pragma comment(linker, "/export:VerFindFileA=C:\\windows\\system32\\version.VerFindFileA,@10")
#pragma comment(linker, "/export:VerFindFileW=C:\\windows\\system32\\version.VerFindFileW,@11")
#pragma comment(linker, "/export:VerInstallFileA=C:\\windows\\system32\\version.VerInstallFileA,@12")
#pragma comment(linker, "/export:VerInstallFileW=C:\\windows\\system32\\version.VerInstallFileW,@13")
#pragma comment(linker, "/export:VerLanguageNameA=C:\\windows\\system32\\version.VerLanguageNameA,@14")
#pragma comment(linker, "/export:VerLanguageNameW=C:\\windows\\system32\\version.VerLanguageNameW,@15")
#pragma comment(linker, "/export:VerQueryValueA=C:\\windows\\system32\\version.VerQueryValueA,@16")
#pragma comment(linker, "/export:VerQueryValueW=C:\\windows\\system32\\version.VerQueryValueW,@17")