diff --git a/pwncat/modules/enumerate.py b/pwncat/modules/enumerate.py index 23b154e..369e43e 100644 --- a/pwncat/modules/enumerate.py +++ b/pwncat/modules/enumerate.py @@ -68,6 +68,8 @@ class Schedule(Enum): ALWAYS = auto() """ Execute the enumeration every time the module is executed """ + NOSAVE = auto() + """ Similar to always, except that no enumerated information will be saved to the database """ PER_USER = auto() """ Execute the enumeration once per user on the target """ ONCE = auto() @@ -191,7 +193,7 @@ class EnumerateModule(BaseModule): for item in self.enumerate(session): # Allow non-fact status updates - if isinstance(item, Status): + if isinstance(item, Status) or self.SCHEDULE == Schedule.NOSAVE: yield item continue diff --git a/pwncat/modules/windows/enumerate/system/processes.py b/pwncat/modules/windows/enumerate/system/processes.py index 2c990bb..751df4d 100644 --- a/pwncat/modules/windows/enumerate/system/processes.py +++ b/pwncat/modules/windows/enumerate/system/processes.py @@ -114,7 +114,8 @@ class Module(EnumerateModule): PROVIDES = ["system.processes"] PLATFORM = [Windows] - SCHEDULE = Schedule.ALWAYS + # We don't save process results. They're volatile. Maybe this should be `Schedule.ALWAYS` anyway though? :shrug: + SCHEDULE = Schedule.NOSAVE def enumerate(self, session):