volatility3.framework.symbols.windows.extensions.gui module
- class GUIExtensions(*args, **kwargs)[source]
Bases:
VersionableInterface- class LARGE_UNICODE_STRING(context, type_name, object_info, size, members)[source]
Bases:
StructTypeA class for Windows unicode string structures.
Constructs an Object adhering to the ObjectInterface.
- Parameters:
context (
ContextInterface) – The context associated with the objecttype_name (
str) – The name of the type structure for the objectobject_info (
ObjectInformation) – Basic information relevant to the object (layer, offset, member_name, parent, etc)
- class VolTemplateProxy
Bases:
VolTemplateProxy- classmethod child_template(template, child)
Returns the template of a child to its parent.
- Return type:
- classmethod has_member(template, member_name)
Returns whether the object would contain a member called member_name.
- Return type:
- classmethod relative_child_offset(template, child)
Returns the relative offset of a child to its parent.
- Return type:
- classmethod replace_child(template, old_child, new_child)
Replace a child elements within the arguments handed to the template.
- Return type:
- cast(new_type_name, **additional)
Returns a new object at the offset and from the layer that the current object inhabits.
Note
If new type name does not include a symbol table, the symbol table for the current object is used
- Return type:
- get_symbol_table_name()
Returns the symbol table name for this particular object.
- Raises:
ValueError – If the object’s symbol does not contain an explicit table
KeyError – If the table_name is not valid within the object’s context
- Return type:
- has_member(member_name)
Returns whether the object would contain a member called member_name.
- Return type:
- has_valid_member(member_name)
Returns whether the dereferenced type has a valid member.
- has_valid_members(member_names)
Returns whether the object has all of the members listed in member_names
- property vol: ReadOnlyMapping
Returns the volatility specific object information.
- write(value)
Writes the new value into the format at the offset the object currently resides at.
- class_types = {'_LARGE_UNICODE_STRING': <class 'volatility3.framework.symbols.windows.extensions.gui.GUIExtensions.LARGE_UNICODE_STRING'>, 'tagDESKTOP': <class 'volatility3.framework.symbols.windows.extensions.gui.GUIExtensions.tagDESKTOP'>, 'tagWINDOWSTATION': <class 'volatility3.framework.symbols.windows.extensions.gui.GUIExtensions.tagWINDOWSTATION'>, 'tagWND': <class 'volatility3.framework.symbols.windows.extensions.gui.GUIExtensions.tagWND'>}
- class tagDESKTOP(context, type_name, object_info, size, members)[source]
Bases:
StructType,ExecutiveObjectConstructs an Object adhering to the ObjectInterface.
- Parameters:
context (
ContextInterface) – The context associated with the objecttype_name (
str) – The name of the type structure for the objectobject_info (
ObjectInformation) – Basic information relevant to the object (layer, offset, member_name, parent, etc)
- class VolTemplateProxy
Bases:
VolTemplateProxy- classmethod child_template(template, child)
Returns the template of a child to its parent.
- Return type:
- classmethod has_member(template, member_name)
Returns whether the object would contain a member called member_name.
- Return type:
- classmethod relative_child_offset(template, child)
Returns the relative offset of a child to its parent.
- Return type:
- classmethod replace_child(template, old_child, new_child)
Replace a child elements within the arguments handed to the template.
- Return type:
- cast(new_type_name, **additional)
Returns a new object at the offset and from the layer that the current object inhabits.
Note
If new type name does not include a symbol table, the symbol table for the current object is used
- Return type:
- get_object_header(symbol_table_name=None)
- Return type:
- get_symbol_table_name()
Returns the symbol table name for this particular object.
- Raises:
ValueError – If the object’s symbol does not contain an explicit table
KeyError – If the table_name is not valid within the object’s context
- Return type:
- get_threads()[source]
Returns the threads of each desktop along with owning process information
- Return type:
- has_member(member_name)
Returns whether the object would contain a member called member_name.
- Return type:
- has_valid_member(member_name)
Returns whether the dereferenced type has a valid member.
- has_valid_members(member_names)
Returns whether the object has all of the members listed in member_names
- is_valid()[source]
Enforce a valid session ID and Window station We aren’t interested in terminated desktops as there are so many pointers going from station -> desktop -> windows, that we would just be processing junk. Even if the pointers were still in tact by some miracle, its not that helpful to have a floating desktop appear in the output as you can’t do much with it.
- Return type:
- property vol: ReadOnlyMapping
Returns the volatility specific object information.
- windows(window, max_windows=10000)[source]
Enumerates all windows adjacent to and children of window
- write(value)
Writes the new value into the format at the offset the object currently resides at.
- class tagWINDOWSTATION(context, type_name, object_info, size, members)[source]
Bases:
StructType,ExecutiveObjectConstructs an Object adhering to the ObjectInterface.
- Parameters:
context (
ContextInterface) – The context associated with the objecttype_name (
str) – The name of the type structure for the objectobject_info (
ObjectInformation) – Basic information relevant to the object (layer, offset, member_name, parent, etc)
- class VolTemplateProxy
Bases:
VolTemplateProxy- classmethod child_template(template, child)
Returns the template of a child to its parent.
- Return type:
- classmethod has_member(template, member_name)
Returns whether the object would contain a member called member_name.
- Return type:
- classmethod relative_child_offset(template, child)
Returns the relative offset of a child to its parent.
- Return type:
- classmethod replace_child(template, old_child, new_child)
Replace a child elements within the arguments handed to the template.
- Return type:
- cast(new_type_name, **additional)
Returns a new object at the offset and from the layer that the current object inhabits.
Note
If new type name does not include a symbol table, the symbol table for the current object is used
- Return type:
- get_object_header(symbol_table_name=None)
- Return type:
- get_symbol_table_name()
Returns the symbol table name for this particular object.
- Raises:
ValueError – If the object’s symbol does not contain an explicit table
KeyError – If the table_name is not valid within the object’s context
- Return type:
- has_member(member_name)
Returns whether the object would contain a member called member_name.
- Return type:
- has_valid_member(member_name)
Returns whether the dereferenced type has a valid member.
- has_valid_members(member_names)
Returns whether the object has all of the members listed in member_names
- property vol: ReadOnlyMapping
Returns the volatility specific object information.
- write(value)
Writes the new value into the format at the offset the object currently resides at.
- class tagWND(context, type_name, object_info, size, members)[source]
Bases:
StructType,ExecutiveObjectConstructs an Object adhering to the ObjectInterface.
- Parameters:
context (
ContextInterface) – The context associated with the objecttype_name (
str) – The name of the type structure for the objectobject_info (
ObjectInformation) – Basic information relevant to the object (layer, offset, member_name, parent, etc)
- class VolTemplateProxy
Bases:
VolTemplateProxy- classmethod child_template(template, child)
Returns the template of a child to its parent.
- Return type:
- classmethod has_member(template, member_name)
Returns whether the object would contain a member called member_name.
- Return type:
- classmethod relative_child_offset(template, child)
Returns the relative offset of a child to its parent.
- Return type:
- classmethod replace_child(template, old_child, new_child)
Replace a child elements within the arguments handed to the template.
- Return type:
- cast(new_type_name, **additional)
Returns a new object at the offset and from the layer that the current object inhabits.
Note
If new type name does not include a symbol table, the symbol table for the current object is used
- Return type:
- get_desktop()[source]
Attempts to return the host desktop (tagDESKTOP) for this window
- Return type:
- get_name()[source]
directName appeared in later Windows 10 versions and is pointer strName is a unicode string directly in the structure
- get_object_header(symbol_table_name=None)
- Return type:
- get_symbol_table_name()
Returns the symbol table name for this particular object.
- Raises:
ValueError – If the object’s symbol does not contain an explicit table
KeyError – If the table_name is not valid within the object’s context
- Return type:
- has_member(member_name)
Returns whether the object would contain a member called member_name.
- Return type:
- has_valid_member(member_name)
Returns whether the dereferenced type has a valid member.
- has_valid_members(member_names)
Returns whether the object has all of the members listed in member_names
- property vol: ReadOnlyMapping
Returns the volatility specific object information.
- write(value)
Writes the new value into the format at the offset the object currently resides at.
- version = (1, 0, 0)