BUUCTF RE [FlareOn4]login

<input type="text" name="flag" id="flag" value="Enter the flag" />
<input type="button" id="prompt" value="Click to check the flag" />
<script type="text/javascript">
  document.getElementById("prompt").onclick = function () {
  var flag = document.getElementById("flag").value;
  var rotFlag = flag.replace(/[a-zA-Z]/g, function(c){return String.fromCharCode((c <= "Z" ? 90 : 122) >= (c = c.charCodeAt(0) + 13) ? c : c - 26);});
  if ("PyvragFvqrYbtvafNerRnfl@syner-ba.pbz" == rotFlag) {
    alert("Correct flag!");
  } else {
    alert("Incorrect flag, rot again");
      }
  }```

浏览器F12查看
这段JS代码实际就是对我们输入的代码进行ROT13加密,凯撒13位移位
就是将该字符替换为后13位的字符,例如A替换为N,N替换为A(超过Z循环回A),
因此我们将加密结果PyvragFvqrYbtvafNerRnfl@syner-ba.pbz再次输入,就能得到flag了

posted @ 2021-12-09 20:41  social_biao  阅读(20)  评论(0编辑  收藏  举报