본문 바로가기
[웹해킹]/[Webhacking.kr]

[Webhacking.kr] 16번

by Hevton 2020. 9. 28.
반응형

소스보기를 해보면

<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함수를 통해 문제를 해결하려면 |를 그냥 입력해도된다.

100점이라기엔 너무 간단한 문제

 

 

반응형

'[웹해킹] > [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