summaryrefslogtreecommitdiff
path: root/csgo-loader/csgo-client/Security/RuntimeSecurity.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'csgo-loader/csgo-client/Security/RuntimeSecurity.hpp')
-rw-r--r--csgo-loader/csgo-client/Security/RuntimeSecurity.hpp20
1 files changed, 17 insertions, 3 deletions
diff --git a/csgo-loader/csgo-client/Security/RuntimeSecurity.hpp b/csgo-loader/csgo-client/Security/RuntimeSecurity.hpp
index 671f67b..9ad94fd 100644
--- a/csgo-loader/csgo-client/Security/RuntimeSecurity.hpp
+++ b/csgo-loader/csgo-client/Security/RuntimeSecurity.hpp
@@ -6,6 +6,10 @@
// Intrinsics (_ReturnAddress)
#include <intrin.h>
+// PEB
+#include <windows.h>
+#include <winternl.h>
+
// Required for the SDK from Themida which offers multiple
// virtual machines and string encryption, as well as debug/VM checks.
#include <ThemidaSDK.h>
@@ -69,9 +73,13 @@ namespace Security
void DispatchSecurityThreads();
// The following functions are used in security threads to run checks.
- bool CheckForVirtualMachine();
+ void CheckForVirtualMachine();
+
+ void CheckForDebugger();
- bool CheckForDebugger();
+ void CheckForDrivers();
+
+ void CheckForThreads();
public:
// Initializes the runtime security system.
@@ -80,8 +88,14 @@ namespace Security
// Retrieves the current Hardware ID for the system.
HardwareIdentifier GetHardwareId();
- // ...
+ // Syscall wrapper for ZwQueryVirtualMemory.
+ // This is so we don't get hooked.
MEMORY_BASIC_INFORMATION QueryMemory(void *Address);
+
+ // Security callback.
+ // This should phone back to the server and log any tampering.
+ // TODO: Nave, actually implement this.
+ void SecurityCallback();
};
// Readability