GaGe

Web hacking 16 본문

SISS (2017-2018)/웹해킹(순서대로X)

Web hacking 16

Sorrel 2018. 4. 7. 16:28

Web hacking 16





소스코드


<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.posLeft-50,star.style.posTop-50);

if(cd==100) star.style.posLeft=star.style.posLeft+50;

if(cd==97) star.style.posLeft=star.style.posLeft-50;

if(cd==119) star.style.posTop=star.style.posTop-50;

if(cd==115) star.style.posTop=star.style.posTop+50;

if(cd==124) location.href=String.fromCharCode(cd);

}



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><font color="yellow" id="aa" style="position:relative;left:0;top:0">*</font>





<font color="#6267085" id="aa" style="position:relative;left:1;top:1" onmouseover="this.innerHTML=''"></font></body>







하나하나 읽어보자


<body bgcolor="black" onload="kk(1,1)" onkeypress="mv(event.keyCode)">


bgcolor (back ground color) = "black" --> 배경 색은 black으로 덮는다

onload="kk(1,1)" --> body 스크립트가 모두 구현, 실행된 후 onload 실행.

onkeypress"mv(event.keyCode)" --> onkeypress는 사용자가 키보드로 무언가를 눌렀을 때 event를 발생시키는 명령어이다. 무언가를 눌렀을 때 mv 함수가 실행되는 것이다. event.keyCode로 사용자가 누른 키의 값을 반환한다.


그아래 코드들은 그냥 * 을 출력하는 내용들인 것 같습니다.



function mv(cd)

{

kk(star.style.posLeft-50,star.style.posTop-50);

if(cd==100) star.style.posLeft=star.style.posLeft+50;

if(cd==97) star.style.posLeft=star.style.posLeft-50;

if(cd==119) star.style.posTop=star.style.posTop-50;

if(cd==115) star.style.posTop=star.style.posTop+50;

if(cd==124) location.href=String.fromCharCode(cd);

}


mv라는 이름의 함수를 지정한 것 같다. 그런데 내용을 보니까

cd==124일 때만 실행 명령어가 다른다.

나머지 내용을 보면 star style 어쩌구인 것을 보니 별을 이동시키는 명령어인 것 같은데

왜 내가 입력하면 이동은 안 되고 추가가 되는지 모르겠다.

 

 

cd==124는 location.href=String.fromCharCode(cd); 이다.

location.href는 해당 주소로 페이지를 이동시키는 함수이다.

String.fromCharCode는 입력받은 값을 해당 유니코드로 변환시켜주는 함수이다. 124는 ascii코드로 해석해보면 |가 나온다

그러니까

cd가 124면 location 함수로 인해 |라는 주소를 가진 페이지로 이동이 된다는 소리이다.



그럼 |를 입력해보자.

#비밀번호 주의#




















이렇게 페이지가 이동되면서 패스워드가 적힌 페이지가 나왔다.

Auth에 넣고 제출했더니 16번이 풀렸다!!






http://hackingboy.tistory.com/64

'SISS (2017-2018) > 웹해킹(순서대로X)' 카테고리의 다른 글

Web hacking 18  (0) 2018.04.29
Web hacking 17  (0) 2018.04.10
Web hacking 04  (0) 2018.04.03
Web hacking 15  (0) 2018.03.29
Web hacking 06  (0) 2018.03.27
Comments