shell bypass 403

GrazzMean Shell

: /var/www/vhosts/m-auto.co/httpdocs/admin/ [ drwxr-xr-x ]
Uname: Linux serv.m-auto.co 3.10.0-1160.42.2.el7.x86_64 #1 SMP Tue Sep 7 14:49:57 UTC 2021 x86_64
Software: nginx/1.28.2
PHP version: 8.1.34 [ PHP INFO ] PHP os: Linux
Server Ip: 41.215.243.19
Your Ip: 216.73.216.151
User: m-auto.co_vxasg6smqe (10000) | Group: psacln (1003)
Safe Mode: OFF
Disable Function:
opcache_get_status,mail

name : user_process.php
<?php
include '../includes/db_production.php';
include '../includes/permissions.php';

if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    $username = $_POST['username'];
    $email = $_POST['email'] ?? null;
    $user_id = $_POST['id'] ?? null;
    $posted_permissions = $_POST['permissions'] ?? [];
    
    // Check appropriate permission based on action
    if (!empty($user_id)) {
        require_permission('users_edit');
    } else {
        require_permission('users_add');
    }

    // --- Validation ---
    if (empty($username)) {
        header("Location: user_form.php?id=$user_id&error=اسم المستخدم مطلوب");
        exit;
    }

    // Validate email if provided
    if (!empty($email) && !filter_var($email, FILTER_VALIDATE_EMAIL)) {
        header("Location: user_form.php?id=$user_id&error=البريد الإلكتروني غير صحيح");
        exit;
    }

    // --- Logic for EDIT ---
    if (!empty($user_id)) {
        if (!empty($_POST['password'])) {
            // Update user with new password
            $password = password_hash($_POST['password'], PASSWORD_DEFAULT);
            $stmt = $conn->prepare("UPDATE users SET username = ?, email = ?, password = ? WHERE id = ?");
            $stmt->bind_param("sssi", $username, $email, $password, $user_id);
        } else {
            // Update user without changing password
            $stmt = $conn->prepare("UPDATE users SET username = ?, email = ? WHERE id = ?");
            $stmt->bind_param("ssi", $username, $email, $user_id);
        }
        $stmt->execute();
        $stmt->close();
    // --- Logic for ADD ---
    } else {
        if (empty($_POST['password'])) {
            header("Location: user_form.php?error=كلمة المرور مطلوبة للمستخدمين الجدد");
            exit;
        }
        $password = password_hash($_POST['password'], PASSWORD_DEFAULT);
        $stmt = $conn->prepare("INSERT INTO users (username, email, password) VALUES (?, ?, ?)");
        $stmt->bind_param("sss", $username, $email, $password);
        $stmt->execute();
        $user_id = $conn->insert_id; // Get the new user's ID
        $stmt->close();
    }

    // --- Update Permissions ---
    if ($user_id) {
        // 1. Delete old permissions
        $delete_stmt = $conn->prepare("DELETE FROM user_permissions WHERE user_id = ?");
        $delete_stmt->bind_param("i", $user_id);
        $delete_stmt->execute();
        $delete_stmt->close();

        // 2. Insert new permissions
        if (!empty($posted_permissions)) {
            $insert_stmt = $conn->prepare("INSERT INTO user_permissions (user_id, permission_id) VALUES (?, ?)");
            foreach ($posted_permissions as $permission_id) {
                $insert_stmt->bind_param("ii", $user_id, $permission_id);
                $insert_stmt->execute();
            }
            $insert_stmt->close();
        }
    }

    // Reload permissions in session if the user is editing themselves
    if ($user_id == $_SESSION['user_id']) {
        load_user_permissions($user_id, $conn);
    }

    header("Location: users.php?success=1");
    exit;

} else {
    header("Location: users.php");
    exit;
}
?>
© 2026 GrazzMean