NaNNaNNaNNaN-Batman
进入题目发现是一个附件,用记事本打开发现实jsp写的,但是有点乱,改名为.html访问:
整理源代码:
function $(){
var e=document.getElementById("c").value; //正则表达式
if(e.length==16) //输入为16位
if(e.match(/^be0f23/)!=null)
if(e.match(/233ac/)!=null)
if(e.match(/e98aa$/)!=null)
if(e.match(/c7be9/)!=null){ //flag
var t=["fl","s_a","i","e}"];
var n=["a","_h0l","n"];
var r=["g{","e","_0"];
var i=["it'","_","n"];
var s=[t,n,r,i];
for(var o=0;o<13;++o){
document.write(s[o%4][0]);s[o%4].splice(0,1)
}
}
}
document.write('<input id="c"><button οnclick=$()>Ok</button>');
delete
查看原来是对输入的字符串进行匹配,如果正确返回flag
if(e.length==16)
if(e.match(/^be0f23/)!=null)
if(e.match(/233ac/)!=null)
if(e.match(/e98aa$/)!=null)
if(e.match(/c7be9/)!=null)
首先要满足length==16,正则的话^为开始符号,$为结尾符号,拼接一下:be0f233ac7be98aa
flag:
flag{it’s_a_h0le_in_0ne}