dissect.target.plugins.os.windows.log.schedlgu

Module Contents

Classes

SchedLgU

SchedLgUPlugin

Plugin for parsing the Task Scheduler Service transaction log file (SchedLgU.txt).

Attributes

dissect.target.plugins.os.windows.log.schedlgu.log
dissect.target.plugins.os.windows.log.schedlgu.SchedLgURecord
dissect.target.plugins.os.windows.log.schedlgu.JOB_REGEX_PATTERN
dissect.target.plugins.os.windows.log.schedlgu.SCHEDLGU_REGEX_PATTERN
class dissect.target.plugins.os.windows.log.schedlgu.SchedLgU
ts: datetime.datetime
job: str
status: str
command: str
exit_code: int
version: str
classmethod from_line(line: str) SchedLgU

Parse a group of SchedLgU.txt lines.

class dissect.target.plugins.os.windows.log.schedlgu.SchedLgUPlugin(target: dissect.target.Target)

Bases: dissect.target.plugin.Plugin

Plugin for parsing the Task Scheduler Service transaction log file (SchedLgU.txt).

PATHS
check_compatible() None

Perform a compatibility check with the target.

This function should return None if the plugin is compatible with the current target (self.target). For example, check if a certain file exists. Otherwise it should raise an UnsupportedPluginError.

Raises:

UnsupportedPluginError – If the plugin could not be loaded.

schedlgu() Iterator[SchedLgURecord]

Return all events in the Task Scheduler Service transaction log file (SchedLgU.txt).

Older Windows systems may log .job tasks that get started remotely in the SchedLgU.txt file. In addition, this log file records when the Task Scheduler service starts and stops.

Adversaries may use malicious .job files to gain persistence on a system.

Yields:

ts (datetime) – The timestamp of the event. job (str): The name of the .job file. command (str): The command executed. status (str): The status of the event (finished, completed, exited, stopped). exit_code (int): The exit code of the event. version (str): The version of the Task Scheduler service.