BlackBone
Windows memory hacking library
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros
BlackBoneDef.h File Reference

Go to the source code of this file.

Data Structures

struct  _DISABLE_DEP
 Input for IOCTL_BLACKBONE_DISABLE_DEP More...
 
struct  _SET_PROC_PROTECTION
 Input for IOCTL_BLACKBONE_SET_PROTECTION More...
 
struct  _HANDLE_GRANT_ACCESS
 Input for IOCTL_BLACKBONE_GRANT_ACCESS More...
 
struct  _COPY_MEMORY
 Input for IOCTL_BLACKBONE_COPY_MEMORY More...
 
struct  _ALLOCATE_FREE_MEMORY
 Input for IOCTL_BLACKBONE_ALLOCATE_FREE_MEMORY More...
 
struct  _ALLOCATE_FREE_MEMORY_RESULT
 Output for IOCTL_BLACKBONE_ALLOCATE_FREE_MEMORY More...
 
struct  _PROTECT_MEMORY
 Input for IOCTL_BLACKBONE_PROTECT_MEMORY More...
 
struct  _MAP_MEMORY
 Input for IOCTL_BLACKBONE_REMAP_MEMORY More...
 
struct  _MAP_MEMORY_RESULT_ENTRY
 Remapped region info More...
 
struct  _MAP_MEMORY_RESULT
 Output for IOCTL_BLACKBONE_REMAP_REGION More...
 
struct  _MAP_MEMORY_REGION
 Input for IOCTL_BLACKBONE_REMAP_REGION More...
 
struct  _MAP_MEMORY_REGION_RESULT
 Output for IOCTL_BLACKBONE_REMAP_REGION More...
 
struct  _UNMAP_MEMORY
 Input for IOCTL_BLACKBONE_UNMAP_MEMORY More...
 
struct  _UNMAP_MEMORY_REGION
 Input for IOCTL_BLACKBONE_UNMAP_REGION More...
 
struct  _HIDE_VAD
 Input for IOCTL_BLACKBONE_HIDE_VAD More...
 
struct  _INJECT_DLL
 Input for IOCTL_BLACKBONE_INJECT_DLL More...
 
struct  _MMAP_DRIVER
 Input for IOCTL_BLACKBONE_MAP_DRIVER More...
 

Macros

#define BLACKBONE_DEVICE_NAME   L"BlackBone"
 
#define BLACKBONE_DEVICE_FILE   L"\\\\.\\" ## BLACKBONE_DEVICE_NAME
 
#define FILE_DEVICE_BLACKBONE   0x00008005
 
#define IOCTL_BLACKBONE_DISABLE_DEP   (ULONG)CTL_CODE(FILE_DEVICE_BLACKBONE, 0x800, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
 
#define IOCTL_BLACKBONE_SET_PROTECTION   (ULONG)CTL_CODE(FILE_DEVICE_BLACKBONE, 0x801, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
 
#define IOCTL_BLACKBONE_GRANT_ACCESS   (ULONG)CTL_CODE(FILE_DEVICE_BLACKBONE, 0x802, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
 
#define IOCTL_BLACKBONE_COPY_MEMORY   (ULONG)CTL_CODE(FILE_DEVICE_BLACKBONE, 0x803, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
 
#define IOCTL_BLACKBONE_ALLOCATE_FREE_MEMORY   (ULONG)CTL_CODE(FILE_DEVICE_BLACKBONE, 0x804, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
 
#define IOCTL_BLACKBONE_PROTECT_MEMORY   (ULONG)CTL_CODE(FILE_DEVICE_BLACKBONE, 0x805, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
 
#define IOCTL_BLACKBONE_MAP_MEMORY   (ULONG)CTL_CODE(FILE_DEVICE_BLACKBONE, 0x806, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
 
#define IOCTL_BLACKBONE_MAP_REGION   (ULONG)CTL_CODE(FILE_DEVICE_BLACKBONE, 0x807, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
 
#define IOCTL_BLACKBONE_UNMAP_MEMORY   (ULONG)CTL_CODE(FILE_DEVICE_BLACKBONE, 0x808, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
 
#define IOCTL_BLACKBONE_UNMAP_REGION   (ULONG)CTL_CODE(FILE_DEVICE_BLACKBONE, 0x809, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
 
#define IOCTL_BLACKBONE_HIDE_VAD   (ULONG)CTL_CODE(FILE_DEVICE_BLACKBONE, 0x80A, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
 
#define IOCTL_BLACKBONE_INJECT_DLL   (ULONG)CTL_CODE(FILE_DEVICE_BLACKBONE, 0x80B, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
 
#define IOCTL_BLACKBONE_MAP_DRIVER   (ULONG)CTL_CODE(FILE_DEVICE_BLACKBONE, 0x80C, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
 

Typedefs

typedef struct _DISABLE_DEP DISABLE_DEP
 Input for IOCTL_BLACKBONE_DISABLE_DEP More...
 
typedef struct _DISABLE_DEPPDISABLE_DEP
 
typedef struct _SET_PROC_PROTECTION SET_PROC_PROTECTION
 Input for IOCTL_BLACKBONE_SET_PROTECTION More...
 
typedef struct
_SET_PROC_PROTECTION
PSET_PROC_PROTECTION
 
typedef struct _HANDLE_GRANT_ACCESS HANDLE_GRANT_ACCESS
 Input for IOCTL_BLACKBONE_GRANT_ACCESS More...
 
typedef struct
_HANDLE_GRANT_ACCESS
PHANDLE_GRANT_ACCESS
 
typedef struct _COPY_MEMORY COPY_MEMORY
 Input for IOCTL_BLACKBONE_COPY_MEMORY More...
 
typedef struct _COPY_MEMORYPCOPY_MEMORY
 
typedef struct
_ALLOCATE_FREE_MEMORY 
ALLOCATE_FREE_MEMORY
 Input for IOCTL_BLACKBONE_ALLOCATE_FREE_MEMORY More...
 
typedef struct
_ALLOCATE_FREE_MEMORY
PALLOCATE_FREE_MEMORY
 
typedef struct
_ALLOCATE_FREE_MEMORY_RESULT 
ALLOCATE_FREE_MEMORY_RESULT
 Output for IOCTL_BLACKBONE_ALLOCATE_FREE_MEMORY More...
 
typedef struct
_ALLOCATE_FREE_MEMORY_RESULT
PALLOCATE_FREE_MEMORY_RESULT
 
typedef struct _PROTECT_MEMORY PROTECT_MEMORY
 Input for IOCTL_BLACKBONE_PROTECT_MEMORY More...
 
typedef struct _PROTECT_MEMORYPPROTECT_MEMORY
 
typedef struct _MAP_MEMORY MAP_MEMORY
 Input for IOCTL_BLACKBONE_REMAP_MEMORY More...
 
typedef struct _MAP_MEMORYPMAP_MEMORY
 
typedef struct
_MAP_MEMORY_RESULT_ENTRY 
MAP_MEMORY_RESULT_ENTRY
 Remapped region info More...
 
typedef struct
_MAP_MEMORY_RESULT_ENTRY
PMAP_MEMORY_RESULT_ENTRY
 
typedef struct _MAP_MEMORY_RESULT MAP_MEMORY_RESULT
 Output for IOCTL_BLACKBONE_REMAP_REGION More...
 
typedef struct _MAP_MEMORY_RESULTPMAP_MEMORY_RESULT
 
typedef struct _MAP_MEMORY_REGION MAP_MEMORY_REGION
 Input for IOCTL_BLACKBONE_REMAP_REGION More...
 
typedef struct _MAP_MEMORY_REGIONPMAP_MEMORY_REGION
 
typedef struct
_MAP_MEMORY_REGION_RESULT 
MAP_MEMORY_REGION_RESULT
 Output for IOCTL_BLACKBONE_REMAP_REGION More...
 
typedef struct
_MAP_MEMORY_REGION_RESULT
PMAP_MEMORY_REGION_RESULT
 
typedef struct _UNMAP_MEMORY UNMAP_MEMORY
 Input for IOCTL_BLACKBONE_UNMAP_MEMORY More...
 
typedef struct _UNMAP_MEMORYPUNMAP_MEMORY
 
typedef struct _UNMAP_MEMORY_REGION UNMAP_MEMORY_REGION
 Input for IOCTL_BLACKBONE_UNMAP_REGION More...
 
typedef struct
_UNMAP_MEMORY_REGION
PUNMAP_MEMORY_REGION
 
typedef struct _HIDE_VAD HIDE_VAD
 Input for IOCTL_BLACKBONE_HIDE_VAD More...
 
typedef struct _HIDE_VADPHIDE_VAD
 
typedef enum _InjectType InjectType
 
typedef struct _INJECT_DLL INJECT_DLL
 Input for IOCTL_BLACKBONE_INJECT_DLL More...
 
typedef struct _INJECT_DLLPINJECT_DLL
 
typedef struct _MMAP_DRIVER MMAP_DRIVER
 Input for IOCTL_BLACKBONE_MAP_DRIVER More...
 
typedef struct _MMAP_DRIVERPMMAP_DRIVER
 

Enumerations

enum  _InjectType { IT_Thread, IT_Apc }
 

Macro Definition Documentation

#define BLACKBONE_DEVICE_FILE   L"\\\\.\\" ## BLACKBONE_DEVICE_NAME
#define BLACKBONE_DEVICE_NAME   L"BlackBone"
#define FILE_DEVICE_BLACKBONE   0x00008005
#define IOCTL_BLACKBONE_ALLOCATE_FREE_MEMORY   (ULONG)CTL_CODE(FILE_DEVICE_BLACKBONE, 0x804, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
#define IOCTL_BLACKBONE_COPY_MEMORY   (ULONG)CTL_CODE(FILE_DEVICE_BLACKBONE, 0x803, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
#define IOCTL_BLACKBONE_DISABLE_DEP   (ULONG)CTL_CODE(FILE_DEVICE_BLACKBONE, 0x800, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
#define IOCTL_BLACKBONE_GRANT_ACCESS   (ULONG)CTL_CODE(FILE_DEVICE_BLACKBONE, 0x802, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
#define IOCTL_BLACKBONE_HIDE_VAD   (ULONG)CTL_CODE(FILE_DEVICE_BLACKBONE, 0x80A, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
#define IOCTL_BLACKBONE_INJECT_DLL   (ULONG)CTL_CODE(FILE_DEVICE_BLACKBONE, 0x80B, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
#define IOCTL_BLACKBONE_MAP_DRIVER   (ULONG)CTL_CODE(FILE_DEVICE_BLACKBONE, 0x80C, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
#define IOCTL_BLACKBONE_MAP_MEMORY   (ULONG)CTL_CODE(FILE_DEVICE_BLACKBONE, 0x806, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
#define IOCTL_BLACKBONE_MAP_REGION   (ULONG)CTL_CODE(FILE_DEVICE_BLACKBONE, 0x807, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
#define IOCTL_BLACKBONE_PROTECT_MEMORY   (ULONG)CTL_CODE(FILE_DEVICE_BLACKBONE, 0x805, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
#define IOCTL_BLACKBONE_SET_PROTECTION   (ULONG)CTL_CODE(FILE_DEVICE_BLACKBONE, 0x801, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
#define IOCTL_BLACKBONE_UNMAP_MEMORY   (ULONG)CTL_CODE(FILE_DEVICE_BLACKBONE, 0x808, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
#define IOCTL_BLACKBONE_UNMAP_REGION   (ULONG)CTL_CODE(FILE_DEVICE_BLACKBONE, 0x809, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)

Typedef Documentation

Input for IOCTL_BLACKBONE_ALLOCATE_FREE_MEMORY

Output for IOCTL_BLACKBONE_ALLOCATE_FREE_MEMORY

typedef struct _COPY_MEMORY COPY_MEMORY

Input for IOCTL_BLACKBONE_COPY_MEMORY

typedef struct _DISABLE_DEP DISABLE_DEP

Input for IOCTL_BLACKBONE_DISABLE_DEP

Input for IOCTL_BLACKBONE_GRANT_ACCESS

typedef struct _HIDE_VAD HIDE_VAD

Input for IOCTL_BLACKBONE_HIDE_VAD

typedef struct _INJECT_DLL INJECT_DLL

Input for IOCTL_BLACKBONE_INJECT_DLL

typedef enum _InjectType InjectType
typedef struct _MAP_MEMORY MAP_MEMORY

Input for IOCTL_BLACKBONE_REMAP_MEMORY

Input for IOCTL_BLACKBONE_REMAP_REGION

Output for IOCTL_BLACKBONE_REMAP_REGION

Output for IOCTL_BLACKBONE_REMAP_REGION

Remapped region info

typedef struct _MMAP_DRIVER MMAP_DRIVER

Input for IOCTL_BLACKBONE_MAP_DRIVER

typedef struct _COPY_MEMORY * PCOPY_MEMORY
typedef struct _DISABLE_DEP * PDISABLE_DEP
typedef struct _HIDE_VAD * PHIDE_VAD
typedef struct _INJECT_DLL * PINJECT_DLL
typedef struct _MAP_MEMORY * PMAP_MEMORY
typedef struct _MMAP_DRIVER * PMMAP_DRIVER
typedef struct _PROTECT_MEMORY * PPROTECT_MEMORY

Input for IOCTL_BLACKBONE_PROTECT_MEMORY

typedef struct _UNMAP_MEMORY * PUNMAP_MEMORY

Input for IOCTL_BLACKBONE_SET_PROTECTION

typedef struct _UNMAP_MEMORY UNMAP_MEMORY

Input for IOCTL_BLACKBONE_UNMAP_MEMORY

Input for IOCTL_BLACKBONE_UNMAP_REGION

Enumeration Type Documentation

Enumerator
IT_Thread 
IT_Apc