▶문제
▶풀이
언제나 그렇듯 문제 파일부터 다운 받아준다. 크롬 파일이 하나 보인다.
호박 사진과 함께 10000번 클릭하라는 문구가 나온다. 클릭하면 어떤 변화가 생기는지 궁금해서 몇번 클릭해보았다.
클릭할수록 호박에 디자인이 추가됨을 알 수 있었다. 실제로 10000번을 다 클릭할 수는 없으니...개발자 도구를 활용하여 코드부터 확인해보았다.
수많은 코드들이 보인다. 쭉 확인해보다가 클릭과 디자인 추가에 대한 코드를 발견하였다. 이 부분을 통해 flag값을 구할 수 있을 것 같다.
코드를 살펴보니 counter 변수를 0으로 초기화 하고, if문을 사용하여 counter의 횟수가 특정 범위의 횟수만큼 증가하면 디자인을 하나씩 추가하는 것 같다. 즉, 여기서 counter 변수를 클릭한 횟수로 이해하면 되겠다. 그리고 counter가 10000이 넘어가야 flag를 구할 수 있으므로 if (10000< counter) 부분을 좀 더 살펴보았다.
정확히 코드를 해석하기는 어렵지만 counter 값이 10000보다 크면 "jack-target"라는 ID를 가진 HTML 요소에 "tada"라는 클래스를 추가하는 것 같다. 그 후 애니메이션 효과가 적용된다.
코드를 작성하기 위해선 jack-target에 대해 더 정보가 필요했다. 코드를 쭉 내려본 결과 마지막 부분에 위의 사진과 같은 코드를 볼 수 있었다. 이 부분도 정확히 해석하기는 어렵지만 $('#jack-target').click(function() 부분은 jack-target라는 ID를 가진 요소가 클릭되었을 때 실행할 함수를 정의한다.
이제 콘솔창을 열어 counter 값이 10000이상이 되도록 코드를 작성해본다.
위의 사진과 같이 for 반복문으로 작성하고 엔터를 눌러 적용시켜주었다. 변수 i를 0부터 10,000까지 증가시키면서 반복하며 click() 하는코드를 작성해주었다.
※for문 형식
for (초기화식; 조건식; 증감식) {
실행 내용
}
콘솔창을 닫고 호박을 확인해보니 10000번 클릭이 다 되면서 flag 값이 나왔다.
문제 풀이에 성공하였다!
'2024 SWLUG > Dreamhack' 카테고리의 다른 글
3주차_CTF 문제풀이(2) - Flying Chars (0) | 2024.05.22 |
---|---|
3주차_CTF 문제풀이(1) - php7cmp4re (0) | 2024.05.22 |
2주차_ CTF 문제풀이(1) - devtools-sources (0) | 2024.05.22 |
1주차_CTF 문제풀이(2) - session (0) | 2024.05.22 |
1주차_CTF 문제풀이(1) - cookie (0) | 2024.05.22 |