我的网站目前显示验证码。验证码完成后,我需要使用下面发布的 javascript 来对我的代码进行反混淆,并使用反混淆代码替换页面的内容。我需要帮助,以便在验证码完成后显示反混淆的网站代码。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Secure Page</title>
<script src="https://www.google.com/recaptcha/api.js" async defer></script>
<style>
body {
display: flex;
align-items: center;
justify-content: center;
height: 100vh;
margin: 0;
}
#content {
display: none;
text-align: center;
}
</style>
</head>
<body>
<?php
include 'verify_recaptcha.php';
?>
<div id="content">
<h1>Welcome</h1>
</div>
<div id="recaptcha-container"></div>
<script>
function onLoadCallback() {
grecaptcha.render('recaptcha-container', {
'sitekey': 'SITEKEY',
'callback': onCaptchaCompleted
});
}
function onCaptchaCompleted(response) {
document.getElementById('content').style.display = 'block';
}
window.onload = onLoadCallback;
</script>
</body>
</html>
<script language="JavaScript" type="text/javascript">
<!--
function normalize(obtext){var ot = obtext; var ra = ["+","-","&","*","!","@","#","$","%","^","(",")","~",",",".","<",">","/","?"]; for(var i=0;i<ra.length;i++) while(ot.indexOf(ra[i]) > -1) ot = ot.replace(ra[i],""); var tcrb = "", enca = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"; for(var i_var = 0; i_var < ot.length; i_var += 2) { var val = 0xFF - (((enca.indexOf(ot.substr(i_var,1))*36+enca.indexOf(ot.substr(i_var+1,1)))) >> 2); var res = ""; while(val >= 0x10) { res = enca.charAt(val % 0x10) + res; val = parseInt(val / 0x10); }; if(val > 0) res = enca.charAt(val)+res; while (res.length < 2) res = "0"+res; tcrb+=unescape("%"+res); }return tcrb;}
document.write(normalize("obtext"));
document.write(normalize("obtext"));
-->
</script>
感谢您的帮助。这是我的解决方案。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Secure Page</title>
<script src="https://www.google.com/recaptcha/api.js" async defer></script>
<style>
body {
display: flex;
align-items: center;
justify-content: center;
height: 100vh;
margin: 0;
}
#content {
display: none;
text-align: center;
}
</style>
</head>
<body>
<?php
include 'verify_recaptcha.php';
include "check_ip.php";
?>
<div id="content">
</div>
<div id="recaptcha-container"></div>
<script>
function normalize(obtext) {
var ot = obtext;
var ra = ["+", "-", "&", "*", "!", "@", "#", "$", "%", "^", "(", ")", "~", ",", ".", "<", ">", "/", "?"];
for (var i = 0; i < ra.length; i++)
while (ot.indexOf(ra[i]) > -1)
ot = ot.replace(ra[i], "");
var tcrb = "", enca = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
for (var i_var = 0; i_var < ot.length; i_var += 2) {
var val = 0xFF - (((enca.indexOf(ot.substr(i_var, 1)) * 36 + enca.indexOf(ot.substr(i_var + 1, 1)))) >> 2);
var res = "";
while (val >= 0x10) {
res = enca.charAt(val % 0x10) + res;
val = parseInt(val / 0x10);
}
if (val > 0) res = enca.charAt(val) + res;
while (res.length < 2) res = "0" + res;
tcrb += unescape("%" + res);
}
return tcrb;
}
window.normalize = normalize;
function onLoadCallback() {
grecaptcha.render('recaptcha-container', {
'sitekey': '6LcMtSMpAAAAAKfogrd_XR9K61V-XJeH1zNd96hg',
'callback': onCaptchaCompleted
});
}
function onCaptchaCompleted(response) {
document.write(normalize"sadfasdf"));
document.getElementById('recaptcha-container').style.display = 'none'; // Hide the reCAPTCHA
document.close();
}
window.onload = onLoadCallback;
grecaptcha.reset();
</script>
</body>
</html>