HackCTF/Web

[HackCTF] Web - 보물

ruming 2021. 7. 16. 04:31

페이지를 다 눌러보자.

 

그러면 아래에 엄청 긴 암호가 나온다. 아무래도 디코딩을 해봐야 할 것 같다.

 

[page1]

1dce4fb8a0e7be0692f72f87512c054a3dd1cfff4716a8e1a5dffbbbf757274bb479330d70bdfc3d622359ab85dd05d20a14b56798a67b8d3059233aaf7977ab

 

[page2]

4a6141240920563136d239d4027f6e44f4d7ee8b3091217c8cabae6d3650ce62e3662a8ebfcc6a29930c78e33623bbc8b4dbdb77ab800d8d01f8d7171d2c29b5

 

[page3]

a7dee220acb8f122abc4716ac1d9e10d637585d28ee77994716058b491056c09d9b50798a97c17746632a46e24984a12cbfc4fe4a6a804acc1d861f025a0e2b8

 

흠... 인코딩도 디코딩도 아닌 것 같다. 

 

근데 url을 조작하다가 신기한 걸 발견했다.

http://ctf.j0n9hyun.xyz:2025/?page=4
a7074d5371eebadecfd776cd9ed6323dc0cfa7691112a18257da83db6c05eb0d5b0f50d96c3f49faa7b2f031482cba923e7c16236fcd232c361bf17a15d822aa

페이지가 4부터 연속해서 계속 나오길래, 1298374같이 큰 수도 입력해봤는데 문자열이 나왔다.

 

특정한 규칙대로 나오는 문자열인 걸까?

 

그리고 url조작을 계속해 본 결과, 숫자뿐만이 아니라 문자를 넣어도 문자열이 나온다는 것을 알았다.

secret이나 flag등을 입력해도 이 문자열은 계속 나온다.

 

해시값이었다! 근데 검색해보니까 1부터 flag가 나올때까지 계속 파라미터를 보내야 하는 것 같다.

파이썬으로 스크립트를 짜보았다.

import requests
URL = "http://ctf.j0n9hyun.xyz:2025/?page="

for i in range(0, 1000):
    response = requests.get(URL+str(i))
    if "HackCTF" in response.text:
        print(i," flag")
        break
    print(i)

범위를 어디까지 해야할 지 모르겠어서 일단 1000으로 해봤는데, 찾지 못했다.

 

범위를 늘려서 다시 도전해보았다.

import requests
URL = "http://ctf.j0n9hyun.xyz:2025/?page="

for i in range(1000, 2000):
    response = requests.get(URL+str(i))
    if "HackCTF" in response.text:
        print(i," flag")
        break
    print(i)

1225에서 찾을 수 있었다.

 

해당 숫자를 입력해주면 다음과 같이 flag를 얻을 수 있다.

http://ctf.j0n9hyun.xyz:2025/?page=1225

good try라니... 왠지 놀리는 것 같다.

'HackCTF > Web' 카테고리의 다른 글

[HackCTF] Web - Time  (0) 2021.08.12
[HackCTF] Web - Login  (0) 2021.08.12
[HackCTF] Web - Button  (0) 2021.07.16
[HackCTF] Web - Hidden  (0) 2021.07.16
[HackCTF] Web - /  (0) 2021.07.16