[资料]IO_STACK_LOCATION中Parameters.Create的参数详解
无论是FSD HOOK,还是SFILTER、MINIFILTER,很多时候都要细致处理IRP_MJ_CREATE。其中有个特别复杂的参数结构体叫做Parameters.Create。下面我来详细一说。Parameters.Create结构体:struct{
PIO_SECURITY_CONTEXT SecurityContext;
ULONG Options;
USHORT POINTER_ALIGNMENT FileAttributes;
USHORT ShareAccess;
ULONG POINTER_ALIGNMENT EaLength;
} Create;其中SecurityContext如下:typedef struct _IO_SECURITY_CONTEXT
{
PSECURITY_QUALITY_OF_SERVICE SecurityQos;
PACCESS_STATE AccessState;
ACCESS_MASK DesiredAccess; //ULONG
ULONG FullCreateOptions;
} IO_SECURITY_CONTEXT, *PIO_SECURITY_CONTEXT;就这个简单的结构体里,就包含了CreationDisposition、CreateOptions、DesiredAccess、ShareAccess、FileAttributes等东西。它们分别这么获得:**** Hidden Message *****它们的常量分别如下://DesiredAccess:
DELETE
FILE_ANY_ACCESS
FILE_READ_ACCESS
FILE_READ_DATA
FILE_LIST_DIRECTORY
FILE_WRITE_ACCESS
FILE_WRITE_DATA
FILE_ADD_FILE
FILE_APPEND_DATA
FILE_ADD_SUBDIRECTORY
FILE_CREATE_PIPE_INSTANCE
FILE_READ_EA
FILE_WRITE_EA
FILE_EXECUTE
FILE_TRAVERSE
FILE_DELETE_CHILD
FILE_READ_ATTRIBUTES
FILE_WRITE_ATTRIBUTES
FILE_ALL_ACCESS
STANDARD_RIGHTS_ALL
//FileAttributes:
FILE_ATTRIBUTE_READONLY
FILE_ATTRIBUTE_HIDDEN
FILE_ATTRIBUTE_SYSTEM
FILE_ATTRIBUTE_DIRECTORY
FILE_ATTRIBUTE_ARCHIVE
FILE_ATTRIBUTE_NORMAL
FILE_ATTRIBUTE_TEMPORARY
FILE_ATTRIBUTE_SPARSE_FILE
FILE_ATTRIBUTE_REPARSE_POINT
FILE_ATTRIBUTE_COMPRESSED
FILE_ATTRIBUTE_OFFLINE
FILE_ATTRIBUTE_NOT_CONTENT_INDEXED
FILE_ATTRIBUTE_ENCRYPTED
//ShareAccess:
FILE_SHARE_READ
FILE_SHARE_WRITE
FILE_SHARE_DELETE
//CreateDisposition:
FILE_SUPERSEDE
FILE_OPEN
FILE_CREATE
FILE_OPEN_IF
FILE_OVERWRITE
FILE_OVERWRITE_IF
//CreateOptions:
FILE_DIRECTORY_FILE
FILE_WRITE_THROUGH
FILE_SEQUENTIAL_ONLY
FILE_NO_INTERMEDIATE_BUFFERING
FILE_SYNCHRONOUS_IO_ALERT
FILE_SYNCHRONOUS_IO_NONALERT
FILE_NON_DIRECTORY_FILE
FILE_CREATE_TREE_CONNECTION
FILE_COMPLETE_IF_OPLOCKED
FILE_NO_EA_KNOWLEDGE
FILE_OPEN_FOR_RECOVERY
FILE_RANDOM_ACCESS
FILE_DELETE_ON_CLOSE
FILE_OPEN_BY_FILE_ID
FILE_OPEN_FOR_BACKUP_INTENT
FILE_NO_COMPRESSION
FILE_RESERVE_OPFILTER
FILE_OPEN_REPARSE_POINT
FILE_OPEN_NO_RECALL
FILE_OPEN_FOR_FREE_SPACE_QUERY 本帖最后由 tangptr@126.com 于 2016-11-23 19:41 编辑
沙发广告位招租 感谢楼主. Miniflter开发总的来说简单了很多啊 找表找结构,感谢楼主分享 Miniflter最近正在看
页:
[1]