我正在 Visual Studio 2010中 WIN32项目 。我正在尝试通过ClamAV(开源防病毒)引擎扫描我的主内存,以搜索主内存中的恶意/受感染文件。
我到目前为止编写的代码通过使用windows函数 CreateToolhelp32Snapshot
创建整个主内存的快照然后我从快照中打开一个特定的进程,并将其传递给ClamAV引擎,然后引擎决定它是否是恶意的。并且我每隔10秒重复一次整个机制。但我认为这不是一种有效的方式,
我想要做的是扫描整个内存一次,之后我只扫描主内存中新创建的进程。请指导我有没有办法从内存中获取新创建的方法,而不是整个内存
答案 0 :(得分:1)
我认为它不能完全在用户空间程序中完成。 我对Windows API不是很熟悉,但我可以给你一些粗略的提示。
注意:如果您想确保安全性,内存区域 NEVER 可以同时变为可执行和可写。
通过这种方式,您只需要检查正在执行的内存。它应该非常有效。