:py:mod:`dissect.target.plugins.os.unix.cronjobs` ================================================= .. py:module:: dissect.target.plugins.os.unix.cronjobs Module Contents --------------- Classes ~~~~~~~ .. autoapisummary:: dissect.target.plugins.os.unix.cronjobs.CronjobPlugin Attributes ~~~~~~~~~~ .. autoapisummary:: dissect.target.plugins.os.unix.cronjobs.CronjobRecord dissect.target.plugins.os.unix.cronjobs.EnvironmentVariableRecord dissect.target.plugins.os.unix.cronjobs.RE_CRONJOB dissect.target.plugins.os.unix.cronjobs.RE_ENVVAR .. py:data:: CronjobRecord .. py:data:: EnvironmentVariableRecord .. py:data:: RE_CRONJOB .. py:data:: RE_ENVVAR .. py:class:: CronjobPlugin(target: dissect.target.target.Target) Bases: :py:obj:`dissect.target.plugin.Plugin` Unix cronjob plugin. .. py:attribute:: CRONTAB_DIRS :value: ('/var/cron/tabs', '/var/spool/cron', '/var/spool/cron/crontabs', '/etc/cron.d', '/usr/local/etc/cron.d') .. py:attribute:: CRONTAB_FILES :value: ('/etc/crontab', '/etc/anacrontab') .. py:attribute:: crontabs .. py:method:: 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 :class:`UnsupportedPluginError`. :raises UnsupportedPluginError: If the plugin could not be loaded. .. py:method:: find_crontabs() -> collections.abc.Iterator[pathlib.Path] .. py:method:: cronjobs() -> collections.abc.Iterator[CronjobRecord | EnvironmentVariableRecord] Yield cronjobs, and their configured environment variables on a Unix system A cronjob is a scheduled task/command on a Unix based system. Adversaries may use cronjobs to gain persistence on the system. .. rubric:: References - https://linux.die.net/man/8/cron - https://linux.die.net/man/1/crontab - https://linux.die.net/man/5/crontab - https://en.wikipedia.org/wiki/Cron - https://linux.die.net/man/8/anacron - https://manpages.ubuntu.com/manpages/oracular/en/man5/crontab.5.html - https://www.gnu.org/software/mcron/manual/mcron.html#Guile-Syntax