GhostManSec
Server: Apache
System: Linux 57.167.178.68.host.secureserver.net 3.10.0-1160.118.1.el7.x86_64 #1 SMP Wed Apr 24 16:01:50 UTC 2024 x86_64
User: countrycraft1 (1001)
PHP: 7.4.33
Disabled: exec,passthru,shell_exec,system
Upload Files
File: //lib/fm-agent/library/process_manager.py
import pwd
import os

class ProcessManager(object):

    def get_process_from_user(self, pids, username):
        """
        Return only the pids belonging to certain username.
        """
        filtered_pids = [
            pid for pid in pids if os.path.isdir('/proc/%s' % pid) \
            if self.get_owner_name('/proc/%s' % pid) == username
        ]
        return filtered_pids

    def get_owner_name(self, pid):
        """
        Return the owner name of the passed pid.
        """
        try:
            return pwd.getpwuid(os.stat(pid).st_uid)[0]
        except os.error:
            return None

    def filter_non_pid_process(self, process_list):
        """
        Filter non pid process from the list, by checking that they are
        castable to integers.
        """
        return list(filter(str.isdigit, process_list))