Help
RSS
API
Feed
Maltego
Contact
Domain > assessmentbr.conversyschile.cl
×
More information on this domain is in
AlienVault OTX
Is this malicious?
Yes
No
DNS Resolutions
Date
IP Address
2026-02-09
192.185.41.206
(
ClassC
)
Port 80
HTTP/1.1 200 OKDate: Mon, 09 Feb 2026 04:23:24 GMTServer: ApacheExpires: Thu, 19 Nov 1981 08:52:00 GMTCache-Control: no-store, no-cache, must-revalidatePragma: no-cacheSet-Cookie: PHPSESSIDe62aac4ef7d2521bf03ef8ef02b37009; path/Upgrade: h2,h2cConnection: UpgradeVary: Accept-EncodingTransfer-Encoding: chunkedContent-Type: text/html; charsetUTF-8 !DOCTYPE html>html langpt-BR>head> meta charsetUTF-8> meta nameviewport contentwidthdevice-width, initial-scale1.0> title>CyberSafe - Acesso ao Sistema/title> !-- Bootstrap CSS --> link hrefhttps://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css relstylesheet> !-- Font Awesome --> link relstylesheet hrefhttps://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css> style> :root { --primary-color: #0a2472; --secondary-color: #1e50a2; --accent-color: #00b4d8; --highlight-color: #5e60ce; --warning-color: #f4a261; --danger-color: #e76f51; --success-color: #00af54; --light-color: #f8f9fa; --dark-color: #212529; --bg-color: #f0f2f5; --text-color: #333; --card-bg: rgba(255, 255, 255, 0.95); } * { margin: 0; padding: 0; box-sizing: border-box; font-family: Segoe UI, Tahoma, Geneva, Verdana, sans-serif; } body { background: linear-gradient(rgba(10, 36, 114, 0.8), rgba(30, 80, 162, 0.8)), url(https://images.unsplash.com/photo-1510511459019-5dda7724fd87?ixlibrb-1.2.1&autoformat&fitcrop&w1350&q80); background-size: cover; background-position: center; background-attachment: fixed; color: var(--text-color); min-height: 100vh; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 20px; } .container { width: 100%; max-width: 900px; position: relative; } .logo { text-align: center; margin-bottom: 30px; } .logo h1 { font-size: 2.8rem; background: linear-gradient(to right, var(--accent-color), var(--highlight-color)); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; margin-top: 15px; font-weight: 700; } .logo-icon { font-size: 4.5rem; color: var(--accent-color); text-shadow: 0 4px 8px rgba(0, 180, 216, 0.3); } .card { background: var(--card-bg); border-radius: 20px; padding: 40px; box-shadow: 0 20px 40px rgba(0, 0, 0, 0.2); backdrop-filter: blur(15px); border: 1px solid rgba(255, 255, 255, 0.2); margin-bottom: 20px; transition: transform 0.3s ease; } .card:hover { transform: translateY(-5px); } .card h2 { text-align: center; margin-bottom: 25px; font-weight: 600; color: var(--primary-color); font-size: 1.8rem; } .card h3 { text-align: center; margin-bottom: 20px; font-weight: 600; color: var(--primary-color); font-size: 1.5rem; } .input-group { position: relative; margin-bottom: 25px; } .input-group input { width: 100%; padding: 15px 20px; border: 2px solid rgba(10, 36, 114, 0.1); background: rgba(255, 255, 255, 0.9); border-radius: 12px; color: var(--text-color); font-size: 16px; transition: all 0.3s ease; } .input-group input:focus { outline: none; border-color: var(--accent-color); box-shadow: 0 0 0 0.25rem rgba(0, 180, 216, 0.25); background: white; } .input-group input.is-invalid { border-color: var(--danger-color); box-shadow: 0 0 0 0.25rem rgba(231, 111, 81, 0.25); } .input-group input.is-valid { border-color: var(--success-color); box-shadow: 0 0 0 0.25rem rgba(0, 175, 84, 0.25); } .input-group label { position: absolute; top: 15px; left: 20px; color: #666; pointer-events: none; transition: all 0.3s ease; font-weight: 500; background: transparent; } .input-group input:focus ~ label, .input-group input:not(:placeholder-shown) ~ label { top: -10px; left: 15px; font-size: 14px; background: var(--card-bg); padding: 0 8px; color: var(--accent-color); font-weight: 600; } .btn { width: 100%; padding: 15px; border: none; border-radius: 12px; background: linear-gradient(135deg, var(--primary-color), var(--secondary-color)); color: white; font-size: 16px; font-weight: 600; cursor: pointer; transition: all 0.3s ease; margin-top: 10px; } .btn:hover:not(:disabled) { transform: translateY(-2px); box-shadow: 0 8px 25px rgba(10, 36, 114, 0.3); background: linear-gradient(135deg, var(--secondary-color), var(--accent-color)); } .btn:active { transform: translateY(0); } .btn:disabled { opacity: 0.6; cursor: not-allowed; transform: none; } .alert { padding: 15px 20px; border-radius: 10px; margin-bottom: 20px; font-weight: 500; border: none; } .alert-danger { background: linear-gradient(135deg, rgba(231, 111, 81, 0.1), rgba(244, 162, 97, 0.1)); color: var(--danger-color); border-left: 4px solid var(--danger-color); } .alert-success { background: linear-gradient(135deg, rgba(0, 175, 84, 0.1), rgba(72, 187, 120, 0.1)); color: var(--success-color); border-left: 4px solid var(--success-color); } .alert-info { background: linear-gradient(135deg, rgba(0, 180, 216, 0.1), rgba(94, 96, 206, 0.1)); color: var(--primary-color); border-left: 4px solid var(--accent-color); } .loading { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(10, 36, 114, 0.9); display: flex; flex-direction: column; justify-content: center; align-items: center; z-index: 9999; opacity: 0; visibility: hidden; transition: all 0.3s ease; } .loading.show { opacity: 1; visibility: visible; } .spinner { width: 60px; height: 60px; border: 4px solid rgba(255, 255, 255, 0.1); border-radius: 50%; border-top-color: var(--accent-color); animation: spin 1s linear infinite; margin-bottom: 20px; } @keyframes spin { to { transform: rotate(360deg); } } .loading p { color: white; font-size: 18px; font-weight: 500; } .step-indicator { display: flex; justify-content: center; margin-bottom: 30px; } .step { width: 12px; height: 12px; border-radius: 50%; background: rgba(0, 180, 216, 0.3); margin: 0 8px; transition: all 0.3s ease; position: relative; } .step.active { background: var(--accent-color); transform: scale(1.3); box-shadow: 0 0 15px rgba(0, 180, 216, 0.5); } .step.completed { background: var(--success-color); transform: scale(1.1); } .otp-section { display: none; } .otp-section.show { display: block; } .otp-input { font-family: Courier New, monospace; text-align: center; font-size: 24px; letter-spacing: 8px; font-weight: bold; } .captcha-container { background: rgba(255, 255, 255, 0.1); border: 2px solid var(--accent-color); border-radius: 12px; padding: 20px; margin: 20px 0; text-align: center; } .captcha-question { font-size: 24px; font-weight: bold; color: var(--primary-color); margin-bottom: 15px; background: white; padding: 15px; border-radius: 8px; display: inline-block; min-width: 150px; } .captcha-input { width: 150px !important; text-align: center; font-size: 20px; font-weight: bold; margin: 0 auto; display: block; } .captcha-refresh { background: var(--accent-color); border: none; color: white; cursor: pointer; padding: 8px 16px; margin-top: 10px; font-size: 16px; border-radius: 8px; transition: all 0.3s ease; } .captcha-refresh:hover { background: var(--primary-color); transform: scale(1.05); } .info-section { background: rgba(255, 255, 255, 0.1); border-radius: 15px; padding: 25px; margin-bottom: 30px; text-align: center; border: 1px solid rgba(255, 255, 255, 0.2); } .info-section h3 { color: white; margin-bottom: 15px; font-size: 1.4rem; } .info-section p { color: rgba(255, 255, 255, 0.9); margin-bottom: 10px; line-height: 1.5; } .security-features { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 15px; margin-top: 20px; } .security-feature { background: rgba(255, 255, 255, 0.1); padding: 15px; border-radius: 10px; text-align: center; } .security-feature i { font-size: 2rem; color: var(--accent-color); margin-bottom: 10px; } .security-feature h5 { color: white; margin-bottom: 5px; font-size: 0.9rem; } .security-feature p { color: rgba(255, 255, 255, 0.8); font-size: 0.8rem; margin: 0; } .footer-info { text-align: center; margin-top: 30px; font-size: 14px; color: rgba(255, 255, 255, 0.7); font-weight: 500; } /style>/head>body> div classloading idloading> div classspinner>/div> p idloading-text>Processando.../p> /div> div classcontainer idmain-container> !-- Informações do sistema --> div classinfo-section> h3>🛡️ Sistema de Avaliação de Cibersegurança/h3> p>Acesse com seu e-mail corporativo para realizar uma avaliação completa de maturidade em cibersegurança baseada em padrões internacionais/p> div classsecurity-features> div classsecurity-feature> i classfas fa-shield-check>/i> h5>E-mail Corporativo/h5> p>Verificação obrigatória/p> /div> div classsecurity-feature> i classfas fa-key>/i> h5>Código OTP/h5> p>Segurança adicional/p> /div> div classsecurity-feature> i classfas fa-calculator>/i> h5>Verificação Matemática/h5> p>Anti-bot simples/p> /div> /div> /div> div classlogo> i classfas fa-shield-alt logo-icon>/i> h1>CyberSafe/h1> /div> !-- Formulário de verificação de e-mail --> div classcard idemail-card> h2> i classfas fa-envelope-check me-2>/i> Verificação de Acesso /h2> div classstep-indicator> div classstep active data-step1>/div> div classstep data-step2>/div> div classstep data-step3>/div> /div> div idalert-container>/div> !-- Passo 1: E-mail corporativo --> div idemail-section> div classalert alert-info> i classfas fa-info-circle me-2>/i> strong>Importante:/strong> Você deve usar um e-mail corporativo. E-mails genéricos como Gmail, Outlook, Yahoo, etc. não são permitidos. /div> form idemail-form> div classinput-group> input typeemail idcorporate_email namecorporate_email placeholder required> label forcorporate_email> i classfas fa-building me-2>/i> E-mail Corporativo /label> /div> !-- Captcha matemático simples --> div classcaptcha-container> p>strong>Verificação Anti-Bot:/strong>/p> div classcaptcha-question idcaptcha-question> 2 + 9 ? /div> br> input typenumber classform-control captcha-input idcaptcha_answer namecaptcha_answer placeholderResposta required> button typebutton classcaptcha-refresh onclickrefreshCaptcha() titleGerar nova pergunta> i classfas fa-sync-alt>/i> Nova pergunta /button> /div> button typesubmit classbtn idverify-email-btn> i classfas fa-paper-plane me-2>/i> Enviar Código de Verificação /button> /form> /div> !-- Passo 2: Verificação OTP --> div classotp-section idotp-section> h3> i classfas fa-shield-alt me-2>/i> Código de Verificação /h3> div classalert alert-success> i classfas fa-check-circle me-2>/i> Enviamos um código de 8 dígitos para seu e-mail. O código é válido por 5 minutos. /div> form idotp-form> div classinput-group> input typetext idotp_code nameotp_code maxlength8 pattern0-9* inputmodenumeric classotp-input placeholder required> label forotp_code> i classfas fa-key me-2>/i> Código de 8 dígitos /label> /div> button typesubmit classbtn idverify-otp-btn> i classfas fa-check-circle me-2>/i> Verificar e Acessar /button> button typebutton classbtn idresend-otp-btn stylebackground: linear-gradient(135deg, #6c757d, #495057); margin-top: 10px; disabled> i classfas fa-redo me-2>/i> Reenviar código (span idcountdown>60/span>s) /button> /form> /div> /div> div classfooter-info> i classfas fa-shield-alt me-1>/i> Plataforma Segura de Avaliação de Cibersegurança - Acesso Verificado /div> /div> !-- Bootstrap Bundle with Popper --> script srchttps://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js>/script> !-- jQuery --> script srchttps://code.jquery.com/jquery-3.6.0.min.js>/script> script> // Variáveis globais let currentStep 1; let verifiedEmail ; let resendTimer 0; let resendInterval null; $(document).ready(function() { // Função para mostrar alertas window.showAlert function(message, type danger) { const alertContainer $(#alert-container); const alertClass type danger ? alert-danger : type success ? alert-success : alert-info; const iconClass type danger ? fa-exclamation-triangle : type success ? fa-check-circle : fa-info-circle; alertContainer.html(` div classalert ${alertClass}> i classfas ${iconClass} me-2>/i> ${message} /div> `); setTimeout(() > { alertContainer.html(); }, 7000); }; // Função para mostrar/ocultar loading window.showLoading function(show, message Processando...) { const loading $(#loading); const loadingText $(#loading-text); loadingText.text(message); if (show) { loading.addClass(show); } else { loading.removeClass(show); } }; // Função para atualizar indicador de passos window.updateStepIndicator function(step) { $(.step).removeClass(active completed); for (let i 1; i 3; i++) { if (i step) { $(`.stepdata-step${i}`).addClass(completed); } else if (i step) { $(`.stepdata-step${i}`).addClass(active); } } currentStep step; }; // Função para iniciar countdown de reenvio function startResendCountdown() { resendTimer 60; $(#resend-otp-btn).prop(disabled, true); resendInterval setInterval(() > { resendTimer--; $(#countdown).text(resendTimer); if (resendTimer 0) { clearInterval(resendInterval); $(#resend-otp-btn).prop(disabled, false); $(#resend-otp-btn).html(i classfas fa-redo me-2>/i>Reenviar código); } }, 1000); } // Validação de e-mail corporativo em tempo real $(#corporate_email).on(input, function() { const email $(this).val().toLowerCase().trim(); const input $(this); if (email && email.includes(@)) { const domain email.split(@)1; // Lista básica de domínios genéricos para validação no frontend const genericDomains gmail.com, yahoo.com, hotmail.com, outlook.com, live.com, aol.com, icloud.com, me.com, mac.com, protonmail.com, yandex.com, mail.ru, tempmail.org, guerrillamail.com ; if (genericDomains.includes(domain)) { input.removeClass(is-valid).addClass(is-invalid); showAlert(E-mails genéricos não são permitidos. Use seu e-mail corporativo., danger); } else { input.removeClass(is-invalid).addClass(is-valid); } } else { input.removeClass(is-invalid is-valid); } }); // Envio do formulário de e-mail $(#email-form).submit(async function(e) { e.preventDefault(); const email $(#corporate_email).val().trim(); const captchaAnswer $(#captcha_answer).val(); if (!email) { showAlert(Por favor, digite seu e-mail corporativo, danger); return; } if (!captchaAnswer) { showAlert(Por favor, complete a verificação matemática, danger); return; } showLoading(true, Enviando código de verificação...); try { const response await fetch(process_email_verification_simple.php, { method: POST, headers: { Content-Type: application/json, }, body: JSON.stringify({ action: send_otp, email: email, captcha_answer: captchaAnswer }) }); const result await response.json(); if (result.success) { verifiedEmail email; $(#email-section).hide(); $(#otp-section).addClass(show); updateStepIndicator(2); startResendCountdown(); showAlert(result.message || Código enviado com sucesso, success); $(#otp_code).focus(); // Gerar novo captcha para usos futuros refreshCaptcha(); } else { showAlert(result.message || Erro ao enviar o código, danger); // Gerar novo captcha em caso de erro refreshCaptcha(); } } catch (error) { console.error(Erro:, error); showAlert(Erro de conexão. Tente novamente., danger); refreshCaptcha(); } finally { showLoading(false); } }); // Verificação do código OTP $(#otp-form).submit(async function(e) { e.preventDefault(); const otpCode $(#otp_code).val().trim(); if (!otpCode || otpCode.length ! 8) { showAlert(Digite um código válido de 8 dígitos, danger); return; } showLoading(true, Verificando código...); try { const response await fetch(process_email_verification_simple.php, { method: POST, headers: { Content-Type: application/json, }, body: JSON.stringify({ action: verify_otp, email: verifiedEmail, otp_code: otpCode }) }); const result await response.json(); if (result.success) { updateStepIndicator(3); showAlert(Verificação bem-sucedida. Redirecionando..., success); setTimeout(() > { window.location.href sistema.php; }, 2000); } else { showAlert(result.message || Código incorreto, danger); $(#otp_code).val().focus(); } } catch (error) { console.error(Erro:, error); showAlert(Erro de conexão. Tente novamente., danger); } finally { showLoading(false); } }); // Reenviar código OTP $(#resend-otp-btn).click(async function() { if (resendTimer > 0) return; showLoading(true, Reenviando código...); try { const response await fetch(process_email_verification_simple.php, { method: POST, headers: { Content-Type: application/json, }, body: JSON.stringify({ action: resend_otp, email: verifiedEmail }) }); const result await response.json(); if (result.success) { showAlert(Novo código enviado, success); startResendCountdown(); $(#otp_code).val().focus(); } else { showAlert(result.message || Erro ao reenviar código, danger); } } catch (error) { console.error(Erro:, error); showAlert(Erro de conexão. Tente novamente., danger); } finally { showLoading(false); } }); // Permitir apenas números no campo OTP $(#otp_code).on(input, function() { this.value this.value.replace(/^0-9/g, ); if (this.value.length 8) { $(this).removeClass(is-invalid).addClass(is-valid); } else { $(this).removeClass(is-valid is-invalid); } }); // Enter nos campos $(#otp_code).keypress(function(e) { if (e.which 13) { $(#verify-otp-btn).click(); } }); }); // Atualizar captcha matemático async function refreshCaptcha() { try { const response await fetch(process_email_verification_simple.php, { method: POST, headers: { Content-Type: application/json, }, body: JSON.stringify({ action: refresh_captcha }) }); const result await response.json(); if (result.success) { $(#captcha-question).text(result.question + ?); $(#captcha_answer).val().focus(); } } catch (error) { console.error(Erro ao atualizar captcha:, error); } } /script>/body>/html>
Port 443
HTTP/1.1 200 OKDate: Mon, 09 Feb 2026 04:23:25 GMTServer: ApacheExpires: Thu, 19 Nov 1981 08:52:00 GMTCache-Control: no-store, no-cache, must-revalidatePragma: no-cacheSet-Cookie: PHPSESSIDbb0e56f239258fba39b5a997589028c0; path/Upgrade: h2,h2cConnection: UpgradeVary: Accept-EncodingTransfer-Encoding: chunkedContent-Type: text/html; charsetUTF-8 !DOCTYPE html>html langpt-BR>head> meta charsetUTF-8> meta nameviewport contentwidthdevice-width, initial-scale1.0> title>CyberSafe - Acesso ao Sistema/title> !-- Bootstrap CSS --> link hrefhttps://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css relstylesheet> !-- Font Awesome --> link relstylesheet hrefhttps://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css> style> :root { --primary-color: #0a2472; --secondary-color: #1e50a2; --accent-color: #00b4d8; --highlight-color: #5e60ce; --warning-color: #f4a261; --danger-color: #e76f51; --success-color: #00af54; --light-color: #f8f9fa; --dark-color: #212529; --bg-color: #f0f2f5; --text-color: #333; --card-bg: rgba(255, 255, 255, 0.95); } * { margin: 0; padding: 0; box-sizing: border-box; font-family: Segoe UI, Tahoma, Geneva, Verdana, sans-serif; } body { background: linear-gradient(rgba(10, 36, 114, 0.8), rgba(30, 80, 162, 0.8)), url(https://images.unsplash.com/photo-1510511459019-5dda7724fd87?ixlibrb-1.2.1&autoformat&fitcrop&w1350&q80); background-size: cover; background-position: center; background-attachment: fixed; color: var(--text-color); min-height: 100vh; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 20px; } .container { width: 100%; max-width: 900px; position: relative; } .logo { text-align: center; margin-bottom: 30px; } .logo h1 { font-size: 2.8rem; background: linear-gradient(to right, var(--accent-color), var(--highlight-color)); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; margin-top: 15px; font-weight: 700; } .logo-icon { font-size: 4.5rem; color: var(--accent-color); text-shadow: 0 4px 8px rgba(0, 180, 216, 0.3); } .card { background: var(--card-bg); border-radius: 20px; padding: 40px; box-shadow: 0 20px 40px rgba(0, 0, 0, 0.2); backdrop-filter: blur(15px); border: 1px solid rgba(255, 255, 255, 0.2); margin-bottom: 20px; transition: transform 0.3s ease; } .card:hover { transform: translateY(-5px); } .card h2 { text-align: center; margin-bottom: 25px; font-weight: 600; color: var(--primary-color); font-size: 1.8rem; } .card h3 { text-align: center; margin-bottom: 20px; font-weight: 600; color: var(--primary-color); font-size: 1.5rem; } .input-group { position: relative; margin-bottom: 25px; } .input-group input { width: 100%; padding: 15px 20px; border: 2px solid rgba(10, 36, 114, 0.1); background: rgba(255, 255, 255, 0.9); border-radius: 12px; color: var(--text-color); font-size: 16px; transition: all 0.3s ease; } .input-group input:focus { outline: none; border-color: var(--accent-color); box-shadow: 0 0 0 0.25rem rgba(0, 180, 216, 0.25); background: white; } .input-group input.is-invalid { border-color: var(--danger-color); box-shadow: 0 0 0 0.25rem rgba(231, 111, 81, 0.25); } .input-group input.is-valid { border-color: var(--success-color); box-shadow: 0 0 0 0.25rem rgba(0, 175, 84, 0.25); } .input-group label { position: absolute; top: 15px; left: 20px; color: #666; pointer-events: none; transition: all 0.3s ease; font-weight: 500; background: transparent; } .input-group input:focus ~ label, .input-group input:not(:placeholder-shown) ~ label { top: -10px; left: 15px; font-size: 14px; background: var(--card-bg); padding: 0 8px; color: var(--accent-color); font-weight: 600; } .btn { width: 100%; padding: 15px; border: none; border-radius: 12px; background: linear-gradient(135deg, var(--primary-color), var(--secondary-color)); color: white; font-size: 16px; font-weight: 600; cursor: pointer; transition: all 0.3s ease; margin-top: 10px; } .btn:hover:not(:disabled) { transform: translateY(-2px); box-shadow: 0 8px 25px rgba(10, 36, 114, 0.3); background: linear-gradient(135deg, var(--secondary-color), var(--accent-color)); } .btn:active { transform: translateY(0); } .btn:disabled { opacity: 0.6; cursor: not-allowed; transform: none; } .alert { padding: 15px 20px; border-radius: 10px; margin-bottom: 20px; font-weight: 500; border: none; } .alert-danger { background: linear-gradient(135deg, rgba(231, 111, 81, 0.1), rgba(244, 162, 97, 0.1)); color: var(--danger-color); border-left: 4px solid var(--danger-color); } .alert-success { background: linear-gradient(135deg, rgba(0, 175, 84, 0.1), rgba(72, 187, 120, 0.1)); color: var(--success-color); border-left: 4px solid var(--success-color); } .alert-info { background: linear-gradient(135deg, rgba(0, 180, 216, 0.1), rgba(94, 96, 206, 0.1)); color: var(--primary-color); border-left: 4px solid var(--accent-color); } .loading { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(10, 36, 114, 0.9); display: flex; flex-direction: column; justify-content: center; align-items: center; z-index: 9999; opacity: 0; visibility: hidden; transition: all 0.3s ease; } .loading.show { opacity: 1; visibility: visible; } .spinner { width: 60px; height: 60px; border: 4px solid rgba(255, 255, 255, 0.1); border-radius: 50%; border-top-color: var(--accent-color); animation: spin 1s linear infinite; margin-bottom: 20px; } @keyframes spin { to { transform: rotate(360deg); } } .loading p { color: white; font-size: 18px; font-weight: 500; } .step-indicator { display: flex; justify-content: center; margin-bottom: 30px; } .step { width: 12px; height: 12px; border-radius: 50%; background: rgba(0, 180, 216, 0.3); margin: 0 8px; transition: all 0.3s ease; position: relative; } .step.active { background: var(--accent-color); transform: scale(1.3); box-shadow: 0 0 15px rgba(0, 180, 216, 0.5); } .step.completed { background: var(--success-color); transform: scale(1.1); } .otp-section { display: none; } .otp-section.show { display: block; } .otp-input { font-family: Courier New, monospace; text-align: center; font-size: 24px; letter-spacing: 8px; font-weight: bold; } .captcha-container { background: rgba(255, 255, 255, 0.1); border: 2px solid var(--accent-color); border-radius: 12px; padding: 20px; margin: 20px 0; text-align: center; } .captcha-question { font-size: 24px; font-weight: bold; color: var(--primary-color); margin-bottom: 15px; background: white; padding: 15px; border-radius: 8px; display: inline-block; min-width: 150px; } .captcha-input { width: 150px !important; text-align: center; font-size: 20px; font-weight: bold; margin: 0 auto; display: block; } .captcha-refresh { background: var(--accent-color); border: none; color: white; cursor: pointer; padding: 8px 16px; margin-top: 10px; font-size: 16px; border-radius: 8px; transition: all 0.3s ease; } .captcha-refresh:hover { background: var(--primary-color); transform: scale(1.05); } .info-section { background: rgba(255, 255, 255, 0.1); border-radius: 15px; padding: 25px; margin-bottom: 30px; text-align: center; border: 1px solid rgba(255, 255, 255, 0.2); } .info-section h3 { color: white; margin-bottom: 15px; font-size: 1.4rem; } .info-section p { color: rgba(255, 255, 255, 0.9); margin-bottom: 10px; line-height: 1.5; } .security-features { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 15px; margin-top: 20px; } .security-feature { background: rgba(255, 255, 255, 0.1); padding: 15px; border-radius: 10px; text-align: center; } .security-feature i { font-size: 2rem; color: var(--accent-color); margin-bottom: 10px; } .security-feature h5 { color: white; margin-bottom: 5px; font-size: 0.9rem; } .security-feature p { color: rgba(255, 255, 255, 0.8); font-size: 0.8rem; margin: 0; } .footer-info { text-align: center; margin-top: 30px; font-size: 14px; color: rgba(255, 255, 255, 0.7); font-weight: 500; } /style>/head>body> div classloading idloading> div classspinner>/div> p idloading-text>Processando.../p> /div> div classcontainer idmain-container> !-- Informações do sistema --> div classinfo-section> h3>🛡️ Sistema de Avaliação de Cibersegurança/h3> p>Acesse com seu e-mail corporativo para realizar uma avaliação completa de maturidade em cibersegurança baseada em padrões internacionais/p> div classsecurity-features> div classsecurity-feature> i classfas fa-shield-check>/i> h5>E-mail Corporativo/h5> p>Verificação obrigatória/p> /div> div classsecurity-feature> i classfas fa-key>/i> h5>Código OTP/h5> p>Segurança adicional/p> /div> div classsecurity-feature> i classfas fa-calculator>/i> h5>Verificação Matemática/h5> p>Anti-bot simples/p> /div> /div> /div> div classlogo> i classfas fa-shield-alt logo-icon>/i> h1>CyberSafe/h1> /div> !-- Formulário de verificação de e-mail --> div classcard idemail-card> h2> i classfas fa-envelope-check me-2>/i> Verificação de Acesso /h2> div classstep-indicator> div classstep active data-step1>/div> div classstep data-step2>/div> div classstep data-step3>/div> /div> div idalert-container>/div> !-- Passo 1: E-mail corporativo --> div idemail-section> div classalert alert-info> i classfas fa-info-circle me-2>/i> strong>Importante:/strong> Você deve usar um e-mail corporativo. E-mails genéricos como Gmail, Outlook, Yahoo, etc. não são permitidos. /div> form idemail-form> div classinput-group> input typeemail idcorporate_email namecorporate_email placeholder required> label forcorporate_email> i classfas fa-building me-2>/i> E-mail Corporativo /label> /div> !-- Captcha matemático simples --> div classcaptcha-container> p>strong>Verificação Anti-Bot:/strong>/p> div classcaptcha-question idcaptcha-question> 7 - 3 ? /div> br> input typenumber classform-control captcha-input idcaptcha_answer namecaptcha_answer placeholderResposta required> button typebutton classcaptcha-refresh onclickrefreshCaptcha() titleGerar nova pergunta> i classfas fa-sync-alt>/i> Nova pergunta /button> /div> button typesubmit classbtn idverify-email-btn> i classfas fa-paper-plane me-2>/i> Enviar Código de Verificação /button> /form> /div> !-- Passo 2: Verificação OTP --> div classotp-section idotp-section> h3> i classfas fa-shield-alt me-2>/i> Código de Verificação /h3> div classalert alert-success> i classfas fa-check-circle me-2>/i> Enviamos um código de 8 dígitos para seu e-mail. O código é válido por 5 minutos. /div> form idotp-form> div classinput-group> input typetext idotp_code nameotp_code maxlength8 pattern0-9* inputmodenumeric classotp-input placeholder required> label forotp_code> i classfas fa-key me-2>/i> Código de 8 dígitos /label> /div> button typesubmit classbtn idverify-otp-btn> i classfas fa-check-circle me-2>/i> Verificar e Acessar /button> button typebutton classbtn idresend-otp-btn stylebackground: linear-gradient(135deg, #6c757d, #495057); margin-top: 10px; disabled> i classfas fa-redo me-2>/i> Reenviar código (span idcountdown>60/span>s) /button> /form> /div> /div> div classfooter-info> i classfas fa-shield-alt me-1>/i> Plataforma Segura de Avaliação de Cibersegurança - Acesso Verificado /div> /div> !-- Bootstrap Bundle with Popper --> script srchttps://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js>/script> !-- jQuery --> script srchttps://code.jquery.com/jquery-3.6.0.min.js>/script> script> // Variáveis globais let currentStep 1; let verifiedEmail ; let resendTimer 0; let resendInterval null; $(document).ready(function() { // Função para mostrar alertas window.showAlert function(message, type danger) { const alertContainer $(#alert-container); const alertClass type danger ? alert-danger : type success ? alert-success : alert-info; const iconClass type danger ? fa-exclamation-triangle : type success ? fa-check-circle : fa-info-circle; alertContainer.html(` div classalert ${alertClass}> i classfas ${iconClass} me-2>/i> ${message} /div> `); setTimeout(() > { alertContainer.html(); }, 7000); }; // Função para mostrar/ocultar loading window.showLoading function(show, message Processando...) { const loading $(#loading); const loadingText $(#loading-text); loadingText.text(message); if (show) { loading.addClass(show); } else { loading.removeClass(show); } }; // Função para atualizar indicador de passos window.updateStepIndicator function(step) { $(.step).removeClass(active completed); for (let i 1; i 3; i++) { if (i step) { $(`.stepdata-step${i}`).addClass(completed); } else if (i step) { $(`.stepdata-step${i}`).addClass(active); } } currentStep step; }; // Função para iniciar countdown de reenvio function startResendCountdown() { resendTimer 60; $(#resend-otp-btn).prop(disabled, true); resendInterval setInterval(() > { resendTimer--; $(#countdown).text(resendTimer); if (resendTimer 0) { clearInterval(resendInterval); $(#resend-otp-btn).prop(disabled, false); $(#resend-otp-btn).html(i classfas fa-redo me-2>/i>Reenviar código); } }, 1000); } // Validação de e-mail corporativo em tempo real $(#corporate_email).on(input, function() { const email $(this).val().toLowerCase().trim(); const input $(this); if (email && email.includes(@)) { const domain email.split(@)1; // Lista básica de domínios genéricos para validação no frontend const genericDomains gmail.com, yahoo.com, hotmail.com, outlook.com, live.com, aol.com, icloud.com, me.com, mac.com, protonmail.com, yandex.com, mail.ru, tempmail.org, guerrillamail.com ; if (genericDomains.includes(domain)) { input.removeClass(is-valid).addClass(is-invalid); showAlert(E-mails genéricos não são permitidos. Use seu e-mail corporativo., danger); } else { input.removeClass(is-invalid).addClass(is-valid); } } else { input.removeClass(is-invalid is-valid); } }); // Envio do formulário de e-mail $(#email-form).submit(async function(e) { e.preventDefault(); const email $(#corporate_email).val().trim(); const captchaAnswer $(#captcha_answer).val(); if (!email) { showAlert(Por favor, digite seu e-mail corporativo, danger); return; } if (!captchaAnswer) { showAlert(Por favor, complete a verificação matemática, danger); return; } showLoading(true, Enviando código de verificação...); try { const response await fetch(process_email_verification_simple.php, { method: POST, headers: { Content-Type: application/json, }, body: JSON.stringify({ action: send_otp, email: email, captcha_answer: captchaAnswer }) }); const result await response.json(); if (result.success) { verifiedEmail email; $(#email-section).hide(); $(#otp-section).addClass(show); updateStepIndicator(2); startResendCountdown(); showAlert(result.message || Código enviado com sucesso, success); $(#otp_code).focus(); // Gerar novo captcha para usos futuros refreshCaptcha(); } else { showAlert(result.message || Erro ao enviar o código, danger); // Gerar novo captcha em caso de erro refreshCaptcha(); } } catch (error) { console.error(Erro:, error); showAlert(Erro de conexão. Tente novamente., danger); refreshCaptcha(); } finally { showLoading(false); } }); // Verificação do código OTP $(#otp-form).submit(async function(e) { e.preventDefault(); const otpCode $(#otp_code).val().trim(); if (!otpCode || otpCode.length ! 8) { showAlert(Digite um código válido de 8 dígitos, danger); return; } showLoading(true, Verificando código...); try { const response await fetch(process_email_verification_simple.php, { method: POST, headers: { Content-Type: application/json, }, body: JSON.stringify({ action: verify_otp, email: verifiedEmail, otp_code: otpCode }) }); const result await response.json(); if (result.success) { updateStepIndicator(3); showAlert(Verificação bem-sucedida. Redirecionando..., success); setTimeout(() > { window.location.href sistema.php; }, 2000); } else { showAlert(result.message || Código incorreto, danger); $(#otp_code).val().focus(); } } catch (error) { console.error(Erro:, error); showAlert(Erro de conexão. Tente novamente., danger); } finally { showLoading(false); } }); // Reenviar código OTP $(#resend-otp-btn).click(async function() { if (resendTimer > 0) return; showLoading(true, Reenviando código...); try { const response await fetch(process_email_verification_simple.php, { method: POST, headers: { Content-Type: application/json, }, body: JSON.stringify({ action: resend_otp, email: verifiedEmail }) }); const result await response.json(); if (result.success) { showAlert(Novo código enviado, success); startResendCountdown(); $(#otp_code).val().focus(); } else { showAlert(result.message || Erro ao reenviar código, danger); } } catch (error) { console.error(Erro:, error); showAlert(Erro de conexão. Tente novamente., danger); } finally { showLoading(false); } }); // Permitir apenas números no campo OTP $(#otp_code).on(input, function() { this.value this.value.replace(/^0-9/g, ); if (this.value.length 8) { $(this).removeClass(is-invalid).addClass(is-valid); } else { $(this).removeClass(is-valid is-invalid); } }); // Enter nos campos $(#otp_code).keypress(function(e) { if (e.which 13) { $(#verify-otp-btn).click(); } }); }); // Atualizar captcha matemático async function refreshCaptcha() { try { const response await fetch(process_email_verification_simple.php, { method: POST, headers: { Content-Type: application/json, }, body: JSON.stringify({ action: refresh_captcha }) }); const result await response.json(); if (result.success) { $(#captcha-question).text(result.question + ?); $(#captcha_answer).val().focus(); } } catch (error) { console.error(Erro ao atualizar captcha:, error); } } /script>/body>/html>
View on OTX
|
View on ThreatMiner
Please enable JavaScript to view the
comments powered by Disqus.
Data with thanks to
AlienVault OTX
,
VirusTotal
,
Malwr
and
others
. [
Sitemap
]