Trees | Indices | Help |
|
---|
|
A collection of types relating to a single compilation unit.
Profiles are usually not instantiated directly. Rather, the profiles are loaded from the profile repository using the session.LoadProfile() method.
Nested Classes | |
__metaclass__ Automatic Plugin Registration through metaclasses. |
|
top_level_class A collection of types relating to a single compilation unit. |
Instance Methods | |||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
Inherited from |
Class Methods | |||
|
|||
|
|||
|
|||
|
Class Variables | |
overlays = None hash(x) |
|
vtypes = None hash(x) |
|
types = None hash(x) |
|
constants = None hash(x) |
|
applied_modifications = None hash(x) |
|
EMPTY_DESCRIPTOR =
|
|
METADATA =
|
|
COMMON_CLASSES =
|
|
classes =
|
|
classes_by_name =
|
|
plugin_feature =
|
Properties | |
Inherited from |
Method Details |
Creates a profile directly from a JSON object. Args: data: A data structure of an encoded profile. Described: http://www.rekall-forensic.com/docs/development.html#_profile_serializations session: A Session object. name: The name of the profile. profile: An optional initial profile to apply the new sections to. If None we create a new profile instance according to the $METADATA section. Returns: a Profile() instance. Raises: IOError if we can not load the profile. |
Install required types, classes and constants. This method should be extended by derived classes. It is a class method to allow other profiles to call this method and install the various components into their own profiles. |
x.__init__(...) initializes x; see help(type(x)) for signature
|
Merges another profile into this one. The result is that we are able to parse all the types that the other profile has. |
Compile the specific type and ensure it exists in the type cache. The type_name here is a reference to the vtypes which are loaded into the profile. |
Converts the list expression into a target, target_args notation. Legacy vtypes use lists to specify the objects. This function is used to convert from the legacy format to the more accurate modern format. Hopefully the legacy format can be deprecated at some point. Args: typeList: A list of types. e.g. ['pointer64', ['_HMAP_TABLE']] Returns: A target, target_args tuple. Target is the class name which should be instantiated, while target_args is a dict of args to be passed to this class. e.g. 'Pointer', {target="_HMAP_TABLE"} |
Parses a specification list and returns a VType object. This function is a bit complex because we support lots of different list types for backwards compatibility. This is the core function which effectively parses the VType language. |
Return a prototype of objects of type 'type_name'. A prototype is a dummy object that looks like a type, but uses data from the profile to provide a list of members and type information. |
Returns a member's offset within the struct. Note that this can be wrong if the offset is a callable. |
Retrieve a constant from the profile. Args: constant: The name of the constant to retrieve. is_address: If true the constant is converted to an address. |
Make it easier to instantiate individual members. This method makes it possible to use the form: self.profile._EPROCESS(vm=self.kernel_address_space, offset=X) Which is easier to type and works well with attribute completion (provided by __dir__). |
A function which instantiates the object named in type_name (as a string) from the type in profile passing optional args of kwargs. Args: type_name: The name of the Struct to instantiate (e.g. _EPROCESS). vm: The address space to instantiate the object onto. If not provided we use a dummy null padded address space. offset: The location in the address space where the object is instantiated. name: An optional name for the object. context: An opaque dict which is passed to all objects created from this object. parent: The object can maintain a reference to its parent object. |
repr(x)
|
Class Variable Details |
COMMON_CLASSES
|
classes
|
classes_by_name
|
Trees | Indices | Help |
|
---|
Generated by Epydoc 3.0.1 on Mon Oct 9 03:27:53 2017 | http://epydoc.sourceforge.net |