这个软件列出当前进程并使用未记录的当前功能写入内存的技巧是什么

What this software trick to list current process and write memory with current function that not documented

谁能解释一下为什么这个软件可以列出所有进程并写入进程,而无需使用与该特定任务相关的任何 api 功能?或者使用当前功能可以做那些事情。该软件称为 ArtMoney。它是一个内存编辑器软件。我可以从源代码中获取功能列表。

当前新版本叫

am800.exe

。这列出了软件使用的功能。

VirtualProtect
LoadLibraryA
ExitProcess
GetProcAddress
RegCloseKey
ImageList_Add
ChooseFontW
SymLoadModule64
Pie
WNetGetConnectionW
memset
NetWkstaGetInfo
IsEqualGUID

我们看到软件有函数loadlibraryA,这意味着它会在运行时加载其他dll。我通过从进程浏览器模块中查找找到了软件加载的 dll。我发现 am800.dll 有几个功能。

SetThreadLocale
GetLastError
GetStdHandle
GetSystemInfo
SysReAllocStringLen
PostThreadMessageW

通过查看我没有找到任何可以列出进程的相关函数,如 EnumProcessesWriteProcess。在那之后,我认为在 am800.dll 之前再次加载了模块。当我检查进程资源管理器时。一个一个打开,没有可疑文件。这个软件是流行的老软件。所以我认为这个开发者有隐藏存在的经验。

LoadLibraryA 在 运行 时将 DLL 加载到进程中,并且 GetProcAddress returns 指向加载库中特定函数的函数指针。这两个函数一起可用于有效地后期绑定到 DLL 函数。

在 运行 时间的某个时候,程序正在使用这些函数来加载它需要的库,然后获取指向它需要的函数的指针。这可能是为了逃避反恶意软件检测,或者可能是为了让程序可以 运行 在可能彼此不兼容的 Windows API 的多个版本上。