반응형
소스보기를 해보면
<html>
<head>
<title>Challenge 16</title>
<body bgcolor=black onload=kk(1,1) onkeypress=mv(event.keyCode)>
<font color=silver id=c></font>
<font color=yellow size=100 style=position:relative id=star>*</font>
<script>
document.body.innerHTML+="<font color=yellow id=aa style=position:relative;left:0;top:0>*</font>";
function mv(cd){
kk(star.style.left-50,star.style.top-50);
if(cd==100) star.style.left=parseInt(star.style.left+0,10)+50+"px";
if(cd==97) star.style.left=parseInt(star.style.left+0,10)-50+"px";
if(cd==119) star.style.top=parseInt(star.style.top+0,10)-50+"px";
if(cd==115) star.style.top=parseInt(star.style.top+0,10)+50+"px";
if(cd==124) location.href=String.fromCharCode(cd)+".php"; // do it!
}
function kk(x,y){
rndc=Math.floor(Math.random()*9000000);
document.body.innerHTML+="<font color=#"+rndc+" id=aa style=position:relative;left:"+x+";top:"+y+" onmouseover=this.innerHTML=''>*</font>";
}
</script>
</body>
</html>
이런게 나온다.
자바스크립트에 기반한 문제들은 클라이언트격에서 풀 수 있는 문제들이고 코드가 공개되어있어서 상당히 간단하다.
나머지 코드들에 집중할 필요는 없고 'do it' 이라고 주석처리되어 있는 부분만 보면 된다.
입력한 값이 아스키 코드값으로 124라면 String.fromCharCode(124).php 로 이동하는 코드다.
StringFromCharCode 는 인자로 받은 10진수 아스키코드값을 아스키코드 문자로 변환해준다.
핵심은 |.php로 이동하는 것이므로, 주소창을 통해 직접 이동해도되고, onKeyPress함수를 통해 문제를 해결하려면 |를 그냥 입력해도된다.
반응형
'[웹해킹] > [Webhacking.kr]' 카테고리의 다른 글
[Webhacking.kr] 18번 (0) | 2020.09.28 |
---|---|
[Webhacking.kr] 17번 (0) | 2020.09.28 |
[Webhacking.kr] 15번 (0) | 2020.09.27 |
[Webhacking.kr] 14번 (0) | 2020.09.26 |
[Webhacking.kr] 13번 문제풀이 ★★★★☆ -자바- (0) | 2020.09.25 |