Diferencias
Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anterior Revisión previa Próxima revisión | Revisión previa | ||
| epub:libro01:notas:start [2026/06/16 14:52] – webmaster | epub:libro01:notas:start [2026/06/16 16:26] (actual) – webmaster | ||
|---|---|---|---|
| Línea 33: | Línea 33: | ||
| AVANZADO 3 (VARIOS DOKUS) (experimental) | AVANZADO 3 (VARIOS DOKUS) (experimental) | ||
| + | |||
| Es posible que esta estructura genere algún tipo de error desconocido hasta el momento. No parece ser así. No obstante, es reversible. Solo habría que restablecer las posiciones físicas de los archivos donde se han puesto simbólicamente. Y todas ellas son perfectamente conocidas. | Es posible que esta estructura genere algún tipo de error desconocido hasta el momento. No parece ser así. No obstante, es reversible. Solo habría que restablecer las posiciones físicas de los archivos donde se han puesto simbólicamente. Y todas ellas son perfectamente conocidas. | ||
| Línea 40: | Línea 41: | ||
| * ubicación compartida de plugins en xampp/ | * ubicación compartida de plugins en xampp/ | ||
| * script para activar/ | * script para activar/ | ||
| + | * Enviar al usuario al lugar correcto (a mí) y al falso al incorrecto | ||
| + | |||
| + | LUGAR INCORRECTO | ||
| + | |||
| + | Primero decirle como desviar | ||
| + | |||
| + | f: | ||
| + | |||
| + | <code text .htaccess> | ||
| + | RewriteEngine On | ||
| + | |||
| + | # CONDICIÓN: Si la IP NO es la mía (reemplaza 127.0.0.1 por tu IP si accedes desde red) | ||
| + | RewriteCond %{REMOTE_ADDR} !^127\.0\.0\.1$ | ||
| + | |||
| + | # ACCIÓN: Enviar al usuario incorrecto a un destino falso o un callejón sin salida | ||
| + | RewriteRule ^(.*)$ http:// | ||
| + | </ | ||
| + | |||
| + | Esto significaría dejar de usar https:// | ||
| + | |||
| + | Se crea la carpeta f: | ||
| + | |||
| + | <code php index.php> | ||
| + | <?php | ||
| + | // ========================================== | ||
| + | // CAPA 1: EXTRACCIÓN HARDCORE DE RED (PHP) | ||
| + | // ========================================== | ||
| + | $ip = $_SERVER[' | ||
| + | $puerto = $_SERVER[' | ||
| + | $metodo = $_SERVER[' | ||
| + | $protocolo = $_SERVER[' | ||
| + | $hora = date(' | ||
| + | $user_agent = $_SERVER[' | ||
| + | $accept = $_SERVER[' | ||
| + | $encoding = isset($_SERVER[' | ||
| + | $idioma = isset($_SERVER[' | ||
| + | $conexion_header = isset($_SERVER[' | ||
| + | |||
| + | // Captura de cabeceras de proxy o modificaciones de red | ||
| + | $forwarded_for = isset($_SERVER[' | ||
| + | $via = isset($_SERVER[' | ||
| + | ?> | ||
| + | < | ||
| + | <html lang=" | ||
| + | < | ||
| + | <meta charset=" | ||
| + | < | ||
| + | < | ||
| + | body { background-color: | ||
| + | .panel { border: 2px solid #00ff55; background-color: | ||
| + | h1 { color: #ff2222; font-size: 22px; margin-top: 0; border-bottom: | ||
| + | h2 { color: #2299ff; font-size: 16px; margin-top: 30px; border-bottom: | ||
| + | .fila { display: flex; border-bottom: | ||
| + | .label { color: #88bb88; width: 350px; font-weight: | ||
| + | .valor { color: #ffffff; word-break: break-all; } | ||
| + | .alerta-roja { color: #ff3333; font-weight: | ||
| + | @keyframes parpadeo { 0% { opacity: 1; } 50% { opacity: 0.4; } 100% { opacity: 1; } } | ||
| + | </ | ||
| + | </ | ||
| + | < | ||
| + | |||
| + | <div class=" | ||
| + | <h1>[ EXTRACCIÓN PERICIAL INTEGRAL - PROTOCOLO DE EXPOSICIÓN DE TELEMETRÍA ]</ | ||
| + | < | ||
| + | |||
| + | < | ||
| + | <div class=" | ||
| + | <div class=" | ||
| + | <div class=" | ||
| + | <div class=" | ||
| + | <div class=" | ||
| + | <div class=" | ||
| + | <div class=" | ||
| + | <div class=" | ||
| + | <div class=" | ||
| + | <div class=" | ||
| + | <div class=" | ||
| + | <div class=" | ||
| + | |||
| + | < | ||
| + | <div id=" | ||
| + | <p style=" | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | let auditoriaOk = false; | ||
| + | |||
| + | try { | ||
| + | // ---- 1. HARDWARE FÍSICO Y COMPONENTES ---- | ||
| + | const cores = navigator.hardwareConcurrency ? navigator.hardwareConcurrency + " hilos lógicos" | ||
| + | const ram = navigator.deviceMemory ? navigator.deviceMemory + " GB estimados" | ||
| + | | ||
| + | // Tarjeta Gráfica y Renderizador (WebGL masivo) | ||
| + | let gpu_fabricante = " | ||
| + | let gpu_renderizador = " | ||
| + | const canvas = document.createElement(' | ||
| + | const gl = canvas.getContext(' | ||
| + | if (gl) { | ||
| + | const debugInfo = gl.getExtension(' | ||
| + | if (debugInfo) { | ||
| + | gpu_fabricante = gl.getParameter(debugInfo.UNMASKED_RENDERER_VENDOR_SGIX); | ||
| + | gpu_renderizador = gl.getParameter(debugInfo.UNMASKED_RENDERER_INFO_SGIX); | ||
| + | } | ||
| + | } | ||
| + | |||
| + | // Subsistema de Audio (Hardware de sonido integrado) | ||
| + | let subsistema_audio = " | ||
| + | try { | ||
| + | const AudioContext = window.AudioContext || window.webkitAudioContext; | ||
| + | if (AudioContext) { | ||
| + | const ctx = new AudioContext(); | ||
| + | subsistema_audio = ctx.sampleRate + " Hz (Frecuencia de muestreo física)"; | ||
| + | ctx.close(); | ||
| + | } | ||
| + | } catch(e){} | ||
| + | |||
| + | // ---- 2. ENTORNO DE PANTALLA Y MONITORES ---- | ||
| + | const resolucion_pantalla = window.screen.width + " | ||
| + | const area_utilizable = window.screen.availWidth + " | ||
| + | const profundidad_color = window.screen.colorDepth + " bits"; | ||
| + | const orientacion = (window.screen.orientation && window.screen.orientation.type) ? window.screen.orientation.type : "No reportada"; | ||
| + | |||
| + | // ---- 3. ESTADO INTERNO DEL SISTEMA ---- | ||
| + | const plataforma_raw = navigator.platform ? navigator.platform : "No declarada"; | ||
| + | const cookies_habilitadas = navigator.cookieEnabled ? " | ||
| + | const zona_horaria_placa = Intl.DateTimeFormat().resolvedOptions().timeZone; | ||
| + | const offset_gmt = "GMT " + (new Date().getTimezoneOffset() / -60); | ||
| + | | ||
| + | // Detección de automatización (Herramientas como Puppeteer/ | ||
| + | const automatizado = navigator.webdriver ? "SÍ (Posible bot/script automatizado)" | ||
| + | |||
| + | // Inspección de persistencia (Ver si usa almacenamiento local en disco) | ||
| + | let almacenamiento_local = " | ||
| + | try { | ||
| + | localStorage.setItem(' | ||
| + | localStorage.removeItem(' | ||
| + | almacenamiento_local = " | ||
| + | } catch(e){} | ||
| + | |||
| + | // Control de pantalla completa (Ver si está maximizado o en modo ventana) | ||
| + | const pantalla_completa = (window.innerWidth == window.screen.width && window.innerHeight == window.screen.height) ? " | ||
| + | // Si el navegador ha falseado u ocultado la GPU y cores esenciales, forzamos la caída al modo de protección inverso | ||
| + | if (navigator.hardwareConcurrency === undefined && gpu_fabricante === " | ||
| + | // Permitimos que actúe el temporizador por falta de datos verídicos | ||
| + | } else { | ||
| + | auditoriaOk = true; | ||
| + | document.getElementById(' | ||
| + | <div class=" | ||
| + | <div class=" | ||
| + | <div class=" | ||
| + | <div class=" | ||
| + | <div class=" | ||
| + | <div class=" | ||
| + | <div class=" | ||
| + | <div class=" | ||
| + | <div class=" | ||
| + | <div class=" | ||
| + | <div class=" | ||
| + | <div class=" | ||
| + | <div class=" | ||
| + | <div class=" | ||
| + | <div class=" | ||
| + | `; | ||
| + | } | ||
| + | } catch (e) { | ||
| + | // Si rompe la ejecución por medidas defensivas del cliente, se mantiene en false | ||
| + | } | ||
| + | // ========================================== | ||
| + | // CAPA 3: LÓGICA DE DETECCIÓN INVERSA (MODO CONTENCIÓN FRONTAL) | ||
| + | // ========================================== | ||
| + | setTimeout(() => { | ||
| + | if (!auditoriaOk) { | ||
| + | document.getElementById(' | ||
| + | <div style=" | ||
| + | <p style=" | ||
| + | [ ANOMALÍA: BLOQUEO CRÍTICO DE AUDITORÍA DETECTADO ] | ||
| + | </p> | ||
| + | | ||
| + | <p style=" | ||
| + | "Vaya, veo que no he obtenido absolutamente ningún dato de su computadora. | ||
| + | Si estaba tan bien protegida accediendo a un servidor web local y privado, | ||
| + | es porque sabe ocultarse muy bien." | ||
| + | </p> | ||
| + | | ||
| + | <div style=" | ||
| + | <p style=" | ||
| + | 🚨 AVISO DE VIOLACIÓN DE PROTOCOLO PERICIAL: | ||
| + | </p> | ||
| + | <p style=" | ||
| + | "Este proceso no está supuesto a ser bloqueado. Si aparece este mensaje, es una | ||
| + | evidencia inequívoca de un ataque deliberado para detener el proceso de registro | ||
| + | en curso y enmascarar la identidad del cliente." | ||
| + | </p> | ||
| + | </ | ||
| + | | ||
| + | <p style=" | ||
| + | > ACCIÓN: Interrupción forzosa de la telemetría estándar. El motor local ha catalogado este vector como ' | ||
| + | </p> | ||
| + | </ | ||
| + | `; | ||
| + | } | ||
| + | }, 800); | ||
| + | </ | ||
| + | </ | ||
| + | </ | ||
| + | </ | ||