mirror-ac/user/km/kmanager.h

41 lines
1.2 KiB
C
Raw Normal View History

2023-08-17 10:45:50 +02:00
#ifndef KMANAGER_H
#define KMANAGER_H
#include <windows.h>
2023-08-22 19:32:25 +02:00
#include "..\client.h"
2023-08-17 10:45:50 +02:00
#include "..\threadpool.h"
2023-08-18 07:33:13 +02:00
2023-08-17 10:45:50 +02:00
#include "driver.h"
namespace kernelmode {
class KManager
2023-08-17 10:45:50 +02:00
{
std::unique_ptr<Driver> driver_interface;
std::shared_ptr<global::ThreadPool> thread_pool;
2023-08-19 04:52:57 +02:00
public:
KManager(LPCWSTR DriverName,
std::shared_ptr<global::ThreadPool> ThreadPool,
std::shared_ptr<global::Client> ReportInterface);
VOID RunNmiCallbacks();
VOID VerifySystemModuleDriverObjects();
VOID MonitorCallbackReports();
VOID DetectSystemVirtualization();
VOID EnumerateHandleTables();
VOID RequestModuleExecutableRegionsForIntegrityCheck();
VOID ScanPoolsForUnlinkedProcesses();
VOID PerformIntegrityCheck();
VOID CheckForAttachedThreads();
VOID ValidateProcessModules();
VOID SendClientHardwareInformation();
VOID InitiateApcStackwalkOperation();
VOID CheckForHiddenThreads();
VOID CheckForEptHooks();
VOID LaunchIpiInterrupt();
VOID ValidateSystemModules();
};
2023-08-17 10:45:50 +02:00
}
#endif