[DreamHack] Carve Party Write-up

2024. 12. 26. 15:07보안/웹

728x90

10000번 클릭하면 FLAG가 나오는 문제이다.

10000만 클릭해도 되지만 다른 방법을 시도해보자.

관리자 도구에서 10000 → 0으로 바꾸는 방법을 시도해봤지만 역시 안됐다.

코드를 봐보자.

$(function() {
  $('#jack-target').click(function () {
    counter += 1;
    if (counter <= 10000 && counter % 100 == 0) {
      for (var i = 0; i < pumpkin.length; i++) {
        pumpkin[i] ^= pie;
        pie = ((pie ^ 0xff) + (i * 10)) & 0xff;
      }
    }
    make();
  });
});

counter를 1이 아니라 1000씩 늘리는 코드로 고쳐보았다.

뭐가 나오긴 나왔는데 이상하게 나왔다.

저거 어떻게 복호화하는 건가 싶었는데 아닌 것 같았다.

 

이번엔 5000으로 바꿔보았는데

이번엔 다르게 나왔다. 누르는 수에 따라 값이 달라지는 것 같다.

그래서 그냥 코드에 반복문을 씌워주니 한번만 눌러도 반복문이 실행되어 정상적인 FLAG가 나오게 된다.

$(function() {
  $('#jack-target').click(function () {
    while(counter<=10000){ //while반복문 씌워주기
    counter += 1;
    if (counter <= 10000 && counter % 100 == 0) {
      for (var i = 0; i < pumpkin.length; i++) {
        pumpkin[i] ^= pie;
        pie = ((pie ^ 0xff) + (i * 10)) & 0xff;
      }
    }
    make();}
  });
});

'보안 > ' 카테고리의 다른 글

[DreamHack] web-misconf-1 Write-up  (0) 2024.12.26
[DreamHack] 🌱 simple-web-request Write-up  (0) 2024.12.26
[DreamHack] ex-reg-ex Write-up  (0) 2024.12.26
[DreamHack] Flying chars Write-up  (0) 2024.12.26
[DreamHack] phpreq Write-up  (0) 2024.12.26