Bitdefender Hypervisor Memory Introspection
|
#include "lixdeployer.h"
#include "guests.h"
#include "kernvm.h"
#include "alerts.h"
#include "lixfiles.h"
#include "lixagent_ondemand.h"
Go to the source code of this file.
Functions | |
static INTSTATUS | IntLixDepComplete (LIX_AGENT *Agent) |
static INTSTATUS | IntLixDepRunCommandComplete (LIX_AGENT *Agent) |
static INTSTATUS | IntLixDepGetInternalContent (DWORD Tag, BYTE **Address, DWORD *Length) |
static INTSTATUS | IntLixDepGetInternalArgs (DWORD Tag, DWORD Length, char *Args) |
static INTSTATUS | IntLixDepDeployFileHypercall (LIX_AGENT *Agent) |
Writes a chunk of the file into a allocated buffer by the agent. More... | |
INTSTATUS | IntLixDepInjectFile (BYTE *Content, DWORD Size, const CHAR *Name) |
Injects an agent that deploy a file with the provided content and name on the disk. More... | |
INTSTATUS | IntLixDepRunCommand (const CHAR *CommandLine) |
Injects an agent that creates a process that will execute the provided command line. More... | |
INTSTATUS | IntLixDepInjectProcess (DWORD AgentTag, BYTE *Content, DWORD Size, const char *Name, const char *Args) |
Injects an agent that deploy a file to the disk and creates a process that execute the deployed file. More... | |
Definition at line 15 of file lixdeployer.c.
Referenced by IntLixDepInjectFile(), and IntLixDepInjectProcess().
Writes a chunk of the file into a allocated buffer by the agent.
This function provide to the agent the number of bytes written.
[in] | Agent | The running agent. |
INT_STATUS_SUCCESS | On success. |
Definition at line 111 of file lixdeployer.c.
Referenced by IntLixDepInjectFile(), and IntLixDepInjectProcess().
Definition at line 82 of file lixdeployer.c.
Referenced by IntLixDepInjectProcess().
Definition at line 39 of file lixdeployer.c.
Referenced by IntLixDepInjectProcess().
Injects an agent that deploy a file with the provided content and name on the disk.
This function deploy the file to the root (/) directory. If there's another file with the same name, the existing file will be replaced.
[in] | Content | The content of the file. |
[in] | Size | The size of the content. |
[in] | Name | The name of the file. |
INT_STATUS_SUCCESS | On success. |
INT_STATUS_INVALID_PARAMETER_1 | If the content of the file is null. |
INT_STATUS_INVALID_PARAMETER_2 | If the size of the file is 0. |
INT_STATUS_INVALID_PARAMETER_3 | If the name of the file is null. |
INT_STATUS_NOT_FOUND | If the handler of the agent is not found. |
INT_STATUS_ALREADY_INITIALIZED_HINT | If another agent is already running. |
Definition at line 174 of file lixdeployer.c.
Referenced by IntDepInjectFile().
INTSTATUS IntLixDepInjectProcess | ( | DWORD | AgentTag, |
BYTE * | Content, | ||
DWORD | Size, | ||
const char * | Name, | ||
const char * | Args | ||
) |
Injects an agent that deploy a file to the disk and creates a process that execute the deployed file.
This function deploy the file to the root (/) directory. If there's another file with the same name, the existing file will be replaced. The deployed file is the first argument of the newly created process and the next arguments is provided by the caller, if any.
[in] | AgentTag | The tag used by the integrator. |
[in] | Content | The content of the file. |
[in] | Size | The size of the file. |
[in] | Name | The name of the file. |
[in,out] | Args | The arguments used by the created process. |
INT_STATUS_SUCCESS | On success. |
INT_STATUS_INVALID_PARAMETER_3 | If the name of the file is null. |
INT_STATUS_NOT_FOUND | If the handler of the agent is not found. |
INT_STATUS_NOT_NEEDED_HINT | If the content of the file is empty and we decide that no agent should be deployed. |
INT_STATUS_ALREADY_INITIALIZED_HINT | If another agent is already running. |
Definition at line 337 of file lixdeployer.c.
Referenced by IntDepInjectProcess().
Injects an agent that creates a process that will execute the provided command line.
[in] | CommandLine | The command line to be executed. |
INT_STATUS_SUCCESS | On success. |
INT_STATUS_INVALID_PARAMETER_1 | If the command line is null. |
INT_STATUS_NOT_FOUND | If the handler of the agent is not found. |
INT_STATUS_ALREADY_INITIALIZED_HINT | If another agent is already running. |
Definition at line 266 of file lixdeployer.c.
Referenced by IntDepRunCommand().
Definition at line 28 of file lixdeployer.c.
Referenced by IntLixDepRunCommand().