Hunter Black Hat SEO
Server:LiteSpeed
System:Linux raton.hozzt.com 4.18.0-553.144.1.lve.el8.x86_64 #1 SMP Thu Jul 16 08:31:06 UTC 2026 x86_64
User:altinkayamarble (1260)
PHP:7.4.33
Disabled:symlink, show_source, system, virtual, shell_exec,passthru, exec, popen, proc_open, proc_close, proc_nice, proc_terminate,proc_get_status, pfsockopen,allow_url_fopen, posix_getpwuid, eval,posix_setsid, posix_mkfifo, posix_setpgid,posix_setuid, posix_uname,posix_kill,apache_child_terminate, apache_setenv,define_syslog_variables,escapeshellarg, escapeshellcmd, leak, dl, fp, fput,ftp_connect, ftp_exec,ftp_get, ftp_login, ftp_nb_fput, ftp_put, ftp_raw, ftp_rawlist,highlight_file, ini_alter, ini_get_all, ini_restore, inject_code
Upload Files
File: //opt/cloudlinux/venv/bin/cagefs_enter_site.py
#!/opt/cloudlinux/venv/bin/python3 -sbb
# -*- coding: utf-8 -*-
#
# Copyright © Cloud Linux GmbH & Cloud Linux Software, Inc 2010-2025 All Rights Reserved
#
# Licensed under CLOUD LINUX LICENSE AGREEMENT
# https://cloudlinux.com/docs/LICENCE.TXT
#
"""
Execute a command inside CageFS for a site (document root or domain).

This wrapper provides a command-line interface for executing commands within
the isolated CageFS environment for a specific website.
"""

import argparse
import os
import sys

from clcagefslib.webisolation import libenter


def create_parser():
    """
    Create argument parser for cagefs_enter_site.

    Returns:
        argparse.ArgumentParser: Configured argument parser
    """
    parser = argparse.ArgumentParser(
        # the command is named with _underscores_ to match
        # existing cagefs_enter wrapper from lvewrappers
        prog="cagefs_enter_site",
        description="Execute a command inside CageFS for a site (document root or domain)",
    )

    parser.add_argument("site", type=str, help="Document root or domain")

    parser.add_argument(
        "command", type=str, nargs=argparse.REMAINDER, help="Command to execute"
    )

    return parser


def main():
    """
    Main entry point.

    Returns:
        int: Exit code
    """
    parser = create_parser()
    args = parser.parse_args()

    if not args.command:
        parser.error("COMMAND is required")

    try:
        return libenter.enter_site(args.site, args.command)
    except ValueError as e:
        print(f"Error: {e}", file=sys.stderr)
        return 1
    except KeyboardInterrupt:
        # Clean Ctrl+C exit without traceback (exit code 130 = SIGINT).
        return 130


if __name__ == "__main__":
    if os.geteuid() == 0:
        print("Error: This program can not be run as root", file=sys.stderr)
        sys.exit(1)

    sys.exit(main())