oid-10_풀이

2021. 6. 5. 18:22문제연습/webhacking.kr

반응형

 

본 티스토리 블로그는 PC 환경에 최적화되어 있습니다.

모바일 유저분들은 아래 네이버 블로그를 이용해 주세요.

 

 

oid-10_풀이

본 네이버 블로그는 모바일 환경에 최적화되어 있습니다. PC 유저분들은 아래 티스토리 블로그를 이용해 ...

blog.naver.com

 

 

 

Webhacking.kr

old-10번 문제풀이

 

 

이번 문제는 기본적인 웹 소스코드를 분석할 수 있는지를 물어보는 문제였으며, 모르는 문법이 나오더라도 당황하지 않고 검색하신다면 충분히 풀어내 실수 있을 거라 확신합니다.

그럼 한번 문제 풀이를 진행해 보도록 하겠습니다.

 

1.접속 화면

의도를 알 수 없는 화면이 보이는데, 한번 소스코드를 확인해 보도록 하겠습니다.

 

 

2. 소스코드 분석

소스 코드를 보니 다음과 같은 부분이 눈에 띕니다.

 

<a id="hackme" style="position: relative; left: 51px; top: 0px;" 
onclick="this.style.left=parseInt(this.style.left,10)+1+'px'; 
if(this.style.left=='1600px')this.href='?go='+this.style.left" 
onmouseover="this.innerHTML='yOu'" onmouseout="this.innerHTML='O'">O</a>

코드 기능을 다음과 같이 요약이 가능합니다.

 

1) ‘O’글자 위에 마우스를 올리면 ‘yOu’로 바뀝니다.

 

2) ‘O’글자를 클릭할 경우 왼쪽으로 1px만큼 이동합니다.

 

3) 왼쪽으로 이동한 거리가 1600px와 일치하게 될 경우 this.href='?go='+this.style.left에 의해

go 변수에 1600px 값을 인자로 https://webhacking.kr/challenge/code-1/에 접속합니다.

 

이 문제를 풀기 위한 여러 방법을 생각해낼 수 있지만 대부분의 조작 기능은 모두 no hack 문구가 뜨면서 막혔기에 성공한 한 가지 방법만 진행하도록 하겠습니다.

 

 

3. Solution

한번 클릭하여 이동하는 px 값을 직접 수정하면 굳이 수백 번 클릭할 필요가 없이 바로 문제를 풀 수 있습니다.

좌 - 수정전, 우 - 수정후

위와 같이 수정하게 될 경우 클릭 시 현제 지점(1px)에서 1599px만큼 더해져서

1600px로 바로 이동할 수 있습니다.

 

clear!!!

 

반응형

'문제연습 > webhacking.kr' 카테고리의 다른 글

old-38_풀이  (0) 2021.06.06
oid-32_풀이  (0) 2021.06.05
oid-3_풀이  (0) 2021.01.10
oid-38_풀이  (0) 2020.11.30
oid-16_풀이  (0) 2020.11.15