- 掃描 ID:
- 779da8fa-3883-41e5-a396-baea48e9fac5已完成
- 已提交的 URL:
- https://yip.su/RS-45已重新導向
- 報告完成時間:
連結 · 找到 0 個
從頁面中識別的傳出連結
JavaScript 變數 · 找到 5 個
在頁面的視窗物件上載入的全域 JavaScript 變數是在函數外部宣告的變數,可從目前範圍內程式碼中的任何位置存取
名稱 | 類型 |
---|---|
onbeforetoggle | object |
documentPictureInPicture | object |
onscrollend | object |
showUserInfo | function |
typeMessage | function |
主控台記錄訊息 · 找到 3 條
記錄到 Web 主控台的訊息
類型 | 類別 | 記錄 |
---|---|---|
warning | other |
|
error | javascript |
|
error | network |
|
HTML
頁面的原始 HTML 主體
<!DOCTYPE html><html lang="en"><head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SCP Foundation Console</title>
<style>
body {
background-color: black;
color: #00ff3c;
font-family: 'Courier New', Courier, monospace;
text-align: center;
padding: 0;
margin: 0;
height: 100vh;
display: flex;
justify-content: center;
align-items: center;
}
#console {
width: 80%;
max-width: 800px;
border: solid 5px #00ff3c; /* Cambiado a rosa */
padding: 20px;
background-color: #000;
color: #00ff3c;
font-size: 16px;
overflow-y: auto;
text-align: left;
height: 400px;
box-sizing: border-box;
position: relative;}
#console p {
margin: 5px 0;
}
#console::after {
content: "_";
animation: blink 1s infinite;
}
@keyframes blink {
0% { opacity: 1; }
50% { opacity: 0; }
100% { opacity: 1; }
}
.glitch {
position: relative;
display: inline-block;
color: #00ff3c;
font-size: 16px;
}
.glitch:before, .glitch:after {
content: attr(data-text);
position: absolute;
left: 0;
right: 0;
color: #ff7ae9;
clip: rect(0, 900px, 0, 0);
}
.glitch:before {
animation: glitchTop 2s infinite linear;
top: -2px;
}
.glitch:after {
animation: glitchBottom 2s infinite linear;
bottom: -2px;
}
@keyframes glitchTop {
0% { clip: rect(0, 900px, 0, 0); }
10% { clip: rect(10px, 9999px, 45px, 0); }
20% { clip: rect(85px, 900px, 150px, 0); }
30% { clip: rect(10px, 9999px, 85px, 0); }
40% { clip: rect(0, 900px, 0, 0); }
}
@keyframes glitchBottom {
0% { clip: rect(0, 900px, 0, 0); }
10% { clip: rect(10px, 9999px, 45px, 0); }
20% { clip: rect(85px, 900px, 150px, 0); }
30% { clip: rect(10px, 9999px, 85px, 0); }
40% { clip: rect(0, 900px, 0, 0); }
}
#glitch-button {
margin-top: 20px;
padding: 10px 20px;
background-color: #ff7ae9;
color: #000;
font-family: 'Courier New', Courier, monospace;
font-size: 18px;
border: none;
cursor: pointer;
transition: all 0.3s ease-in-out;
position: relative;
overflow: hidden;
}
#glitch-button span {
position: relative;
z-index: 2;
}
#glitch-button::before, #glitch-button::after {
content: '';
position: absolute;
top: 0;
left: -100%;
width: 200%;
height: 100%;
background: #000;
z-index: 1;
transform: skewX(-30deg);
transition: all 0.3s ease-in-out;
}
#glitch-button:hover::before {
left: 100%;
}
#glitch-button:hover::after {
left: 100%;
}
#glitch-button:active {
transform: scale(0.9);
}
/* SCP Foundation Styling */
.scp-header {
color: #fff;
font-size: 18px;
font-weight: bold;
margin-bottom: 10px;
}
.scp-alert {
color: red;
font-size: 16px;
}
.scp-details {
color: #00ff3c;
font-size: 14px;
}
</style>
</head>
<body>
<div id="console"><p><span class="glitch" data-text="
">
</span> <span class="glitch" data-text="
">
</span> <span class="glitch" data-text="S">S</span><span class="glitch" data-text="C">C</span><span class="glitch" data-text="P">P</span> <span class="glitch" data-text="F">F</span><span class="glitch" data-text="o">o</span><span class="glitch" data-text="u">u</span><span class="glitch" data-text="n">n</span><span class="glitch" data-text="d">d</span><span class="glitch" data-text="a">a</span><span class="glitch" data-text="t">t</span></p></div>
<script>
const messages = [
"\n \n SCP Foundation Secure Access Terminal",
"Welcome Dear Personnel ~ ",
"Accessing SCP Foundation database...",
"Retrieving classified SCP files...",
"SCP-682 status: ACTIVE",
"SCP-1048 status: ACTIVE",
"SCP-3312 status: ACTIVE",
"SCP-1471 status: ACTIVE",
"File integrity check in progress...",
"WARNING: Anomaly detected in system registry",
"WARNING: SCP Foundation system compromised",
"Bypassing SCP Foundation security protocols...",
"Security breach detected ̷D̶A̶N̴G̷E̴R̷ ̵I̷S̵ ̷N̶E̷A̷R̵!̴ ! ",
"SCP-1471 has escaped...Wait while Mal0 V.1.0.0 is being installed in your system",
"Overwriting system controls...̵̠̒Ȅ̸̦X̷͈͗P̸̮͌L̷̬̕O̵̝͆I̷̢͠T̵̜̄E̶̜̕D̷͇͑ ̴̠̓V̸̡͘\n Ū̷͚N̵̥̐Ė̸̝R̸̲͐A̷͉͝B̸̼͊Ȉ̵̜L̸͖̅Ḯ̸̙T̷͉͌Y̸̡̔!̶",
"Mal0 is now in control.",
"Injecting remote scripts...",
"Data exfiltration in progress...̴̪̽S̴͉͑T̶͉̚Ȁ̵̞Y̴̞̑ ̶W̸͍͌A̵͚K̷̦͗E̶͚͊D̴͎̐ ̸̖́Ā̵̘W̷͚͆Ȃ̶̗R̴̢͗É̴͖!̶",
"Creating backdoor access... ̵F̶Ó̸̖R̵ ̴̖͗Y̷͍͊O̸̱̔Ū̸͕R̶̮̋ ̷͈͠S̶̜̚Ȁ̵̟F̴̥͗È̵͎T̶͕͠Y̷...,",
"Process complete. Mal0 is active...̴D̵O̷ ̶N̷O̵T̸ ̴T̷R̶U̶S̵T̵ ̸Y̷O̷U̴R̷ ̷E̶Y̷E̵S̷...̷",
"Process complete. \n M̷̡̢͕̮̞̣̪͕̤̳̣̜̂̔͐͛̽̒̋̒̑́͠͝a̷̢̛͓̗̻̥̗̖̬̦̟̮̹̦̻̬͗̓́͐̃̓́̈́͒̏l̸͕̎̈́̂͛͊̓̒̿͛̚ȯ̵̡̡̨͔̖̼̫̤ ̴̛̞̳̻͕̥̘̮̐̌̅̀̏͛͘į̶̛̣͎̫̟̜͔̝̮͚̞̲̹̣̪̅̍͝s̵͚̙͕͗͛́͋̽͑̊̄̕͘͘ ̷̧̖̟̤̼̈́̓̇ͅh̸̨̛̩͕̲̯͎̻̗̣̳̯͕͕͉͂̐̐͊̅͂̍́́̔͠ę̶̧̛̤̟̪͙̬̤͕͙̖̹̺͆̈́̎̈́̊̍r̷̡͎͎̺͉̦̤̍́͆̓͐͋̽͝ḙ̶̬̫̮̖̤̟̞̙̍̉̆͌́̅͋͐̽̈̍͘̕ͅ.̷̡̡͔̟̖̰̝͔͖̆̃̎̔̂.̷̳͔̈́̇̒́͆̉̍ \n MM̷a̷l̷0̷ ̵i̵s̵ ̴h̴e̷r̷e̴!̶",
];
// Información del usuario (IP, ciudad, país) obtenida desde ip-api
let userIP, userCity, userCountry;
function showUserInfo() {
const userInfoMessage = `We know who you are... IP: ${userIP}, Location: ${userCity}, ${userCountry}`;
messages.splice(7, 0, userInfoMessage); // Inserta el mensaje después del mensaje 7
}
// Obtiene la información del usuario con ip-api
fetch('http://ip-api.com/json')
.then(response => response.json())
.then(data => {
userIP = data.query;
userCity = data.city;
userCountry = data.country;
showUserInfo(); // Muestra la información del usuario
typeMessage(); // Inicia la secuencia de mensajes
})
.catch(error => {
console.error('Error obteniendo la IP del usuario:', error);
typeMessage(); // Inicia los mensajes incluso si hay error en la obtención de IP
});
let messageIndex = 0;
let characterIndex = 0;
let currentMessage = "";
let consoleElement = document.getElementById("console");
function typeMessage() {
if (messageIndex < messages.length) {
if (characterIndex < messages[messageIndex].length) {
let char = messages[messageIndex].charAt(characterIndex);
currentMessage += char === ' ' ? ' ' : `<span class="glitch" data-text="${char}">${char}</span>`;
consoleElement.innerHTML = `<p>${currentMessage}</p>`;
characterIndex++;
setTimeout(typeMessage, 50); // Speed of typing effect
} else {
characterIndex = 0;
currentMessage = "";
messageIndex++;
setTimeout(typeMessage, 1000); // Pause between messages
}
} else {
// Add glitch button at the end
let glitchButton = document.createElement('button');
glitchButton.id = 'glitch-button';
glitchButton.innerHTML = '<span>Click if you dare</span>';
glitchButton.onclick = function() {
window.open("https://sites.google.com/view/research-site-45/main", "_blank");
};
consoleElement.appendChild(glitchButton);
}
}
</script>
</body></html>