:py:mod:`dissect.target.plugins.os.default._os` =============================================== .. py:module:: dissect.target.plugins.os.default._os Module Contents --------------- Classes ~~~~~~~ .. autoapisummary:: dissect.target.plugins.os.default._os.DefaultOSPlugin .. py:class:: DefaultOSPlugin(target: dissect.target.target.Target) Bases: :py:obj:`dissect.target.plugin.OSPlugin` Base class for OS plugins. This provides a base class for certain common functions of OS's, which each OS plugin has to implement separately. For example, it provides an interface for retrieving the hostname and users of a target. All derived classes MUST implement ALL the classmethods and exported methods with the same ``@classmethod`` or ``@export(...)`` annotation. .. py:method:: detect(target: dissect.target.target.Target) -> dissect.target.filesystem.Filesystem | None :classmethod: Provide detection of this OSPlugin on a given filesystem. :param fs: :class:`~dissect.target.filesystem.Filesystem` to detect the OS on. :returns: The root filesystem / sysvol when found. .. py:method:: create(target: dissect.target.target.Target, sysvol: dissect.target.filesystem.Filesystem) -> Self :classmethod: Initiate this OSPlugin with the given target and detected filesystem. :param target: The :class:`~dissect.target.target.Target` object. :param sysvol: The filesystem that was detected in the ``detect()`` function. :returns: An instantiated version of the OSPlugin. .. py:method:: hostname() -> str | None Return the target's hostname. :returns: The hostname as string. .. py:method:: ips() -> list[str] Return the IP addresses configured in the target. :returns: The IPs as list. .. py:method:: version() -> str | None Return the target's OS version. :returns: The OS version as string. .. py:method:: users() -> collections.abc.Iterator[flow.record.Record] Return the users available in the target. :returns: A list of user records. .. py:method:: misc_user_paths() -> collections.abc.Iterator[tuple[str, tuple[str, str] | None]] Yields miscellaneous user paths and user keys. .. rubric:: Example ("c:/Windows/ServiceProfiles/LocalService", ("sid", "S-1-5-19")) .. py:method:: os() -> str Return a slug of the target's OS name. :returns: A slug of the OS name, e.g. 'windows' or 'linux'. .. py:method:: architecture() -> str | None Return a slug of the target's OS architecture. :returns: A slug of the OS architecture, e.g. 'x86_32-unix', 'MIPS-linux' or 'AMD64-win32', or 'unknown' if the architecture is unknown.