shell bypass 403

UnknownSec Shell

: /home/bouloter/sms/app/Helpers/ [ drwxr-xr-x ]

name : PermissionsChecker.php
<?php

namespace App\Helpers;

class PermissionsChecker
{
    /**
     * @var array
     */
    protected $results = [];

    /**
     * Set the result array permissions and errors.
     *
     * @return void
     */
    public function __construct()
    {
        $this->results['permissions'] = [];

        $this->results['errors'] = null;
    }

    /**
     * Check for the folders permissions.
     *
     * @param array $folders
     * @return array
     */
    public function check(array $folders)
    {
        foreach ($folders as $folder => $permission) {
            if (! ($this->getPermission($folder) >= $permission)) {
                $this->addFileAndSetErrors($folder, $permission);
            } else {
                $this->addFile($folder, $permission, true);
            }
        }

        return $this->results;
    }

    /**
     * Get a folder permission.
     *
     * @param $folder
     * @return string
     */
    private function getPermission($folder)
    {
        return substr(sprintf('%o', fileperms(base_path($folder))), -4);
    }

    /**
     * Add the file to the list of results.
     *
     * @param $folder
     * @param $permission
     * @param $isSet
     */
    private function addFile($folder, $permission, $isSet)
    {
        $this->results['permissions'][] = [
                'folder'     => $folder,
                'permission' => $permission,
                'isSet'      => $isSet,
        ];
    }

    /**
     * Add the file and set the errors.
     *
     * @param $folder
     * @param $permission
     */
    private function addFileAndSetErrors($folder, $permission)
    {
        $this->addFile($folder, $permission, false);

        $this->results['errors'] = true;
    }
}

© 2025 UnknownSec
afwwrfwafr45458465
Password