본문 바로가기

Dreamhack/Web

[Dreamhack][Web] Level1 - carve party 풀이

호박을 10000번 클릭하면 flag를 구할 수 있는 문제이다.

 

주어진 html 파일

 

코드를 보면 (counter<=10000 && counter%100==0 일 때) 연산을 하기 때문에 총 연산 횟수가 100번이라는 것을 알  수 있다. (counter 1인 상태에서 시작)

 

위 코드의 for문 안의 연산을 100번 하도록 파이썬으로 코드를 작성한 결과 플래그가 출력되었다.

 

pumpkin = [ 124, 112, 59, 73, 167, 100, 105, 75, 59, 23, 16, 181, 165, 104, 43, 49, 118, 71, 112, 169, 43, 53 ]
pie=1
for i in range(100):
    for j in range(22):
        pumpkin[j]^=pie
        pie=((pie^0xff)+(j*10))&0xff

for i in range(22):
    print(chr(pumpkin[i]),end='')