Panoptes 1.0.0
Endpoint Detection and Response
Loading...
Searching...
No Matches
driver.cpp
Go to the documentation of this file.
1#include "driver_constants.h"
2#include "callbacks.h"
3#include "pano_query.h"
4#include "trace.h"
5#include "pano_filter.h"
6
7UNICODE_STRING g_deviceName;
8UNICODE_STRING g_symLink;
9PDEVICE_OBJECT g_deviceObject;
10UNICODE_STRING g_SymbolicLinkName;
11
12void UnloadPanoptes(PDRIVER_OBJECT DriverObject)
13{
14 PAGED_CODE();
15 DbgPrintEx(DPFLTR_IHVDRIVER_ID, DPFLTR_ERROR_LEVEL, "[+] Panoptes: Driver Exit\n");
16 Log_DriverExit(DriverObject);
17 //IoDeleteDevice(driver_object);
18 //IoDeleteSymbolicLink(&g_symLink);
21}
22
23NTSTATUS DriverEntry(
24 PDRIVER_OBJECT DriverObject,
25 PUNICODE_STRING RegistryPath
26)
27{
28 PAGED_CODE();
29 DriverObject->DriverUnload = UnloadPanoptes;
30
31 TraceInit();
32 Log_DriverEntry(DriverObject, RegistryPath);
33
34 NTSTATUS status = FilterInit(&DriverObject);
35 if (!NT_SUCCESS(status)) {
36 DbgPrintEx(DPFLTR_IHVDRIVER_ID, DPFLTR_ERROR_LEVEL, "[!] Panoptes: An error occured when attempting to initialized filter\n");
37 return status;
38 }
39
40 //status = InitializeDriverLink(driver_object);
41 //if (!NT_SUCCESS(status))
42 //{
43 // DbgPrintEx(DPFLTR_IHVDRIVER_ID, DPFLTR_ERROR_LEVEL, "[!] Panoptes: An error occured when attempting to initialized device pipe\n");
44 // return status;
45 //}
46
48 if (!NT_SUCCESS(status))
49 {
50 DbgPrintEx(DPFLTR_IHVDRIVER_ID, DPFLTR_ERROR_LEVEL, "[!] Panoptes: An error occured when attempting to initialized kernel callbacks\n");
51 return status;
52 }
53
54 return 0;
55}
NTSTATUS InitializeKernelCallbacks()
VOID RemoveCallbacks()
void UnloadPanoptes(PDRIVER_OBJECT DriverObject)
Definition driver.cpp:12
UNICODE_STRING g_deviceName
Definition driver.cpp:7
NTSTATUS DriverEntry(PDRIVER_OBJECT DriverObject, PUNICODE_STRING RegistryPath)
Definition driver.cpp:23
PDEVICE_OBJECT g_deviceObject
Definition driver.cpp:9
UNICODE_STRING g_symLink
Definition driver.cpp:8
UNICODE_STRING g_SymbolicLinkName
Definition driver.cpp:10
NTSTATUS FilterInit(PDRIVER_OBJECT *DriverObject)
void Log_DriverExit(PDRIVER_OBJECT DriverObject)
Definition trace.cpp:34
void Log_DriverEntry(PDRIVER_OBJECT DriverObject, PUNICODE_STRING RegistryPath)
Definition trace.cpp:22
void TraceUninit()
Definition trace.cpp:15
void TraceInit()
Definition trace.cpp:10