워게임 스터디

[250128][webhacking] old11

jisu0924 2025. 1. 28. 23:44

 

검은 바탕에 Wrong이라고 적힌 글자만 있었고 소스뷰 확인해 보니까

 

<?php
  $pat="/[1-3][a-f]{5}_.*$_SERVER[REMOTE_ADDR].*\tp\ta\ts\ts/";
  if(preg_match($pat,$_GET['val'])){
    solve(11);
  }
  else echo("<h2>Wrong</h2>");
  echo("<br><br>");

 

저 $pat의 값이 들어 맞았을 때 solve가 되고 아닐 시 Wrong을 띄워 주는 것이다.

그러면 저 pat을 분석해야 하는데

/[1-3][a-f]{5}_.*$_SERVER[REMOTE_ADDR].*\tp\ta\ts\ts/

1과 3중 하나의 숫자여야 하고, a부터 f까지의 숫자가 5개 연속으로 와야 한다는 건 알겠는데 그 다음을 모르겠어서 인터넷에 검색해 보았다.

 

우선 $_SERVER[REMOTE_ADDR]를 검색해 보았을 때 사용자 IP라는 것을 알 수 있었고, .*는 0개 이상의 임의의 문자를 의미하며 이후 \tp\ta\ts\ts는 탭을 각각 입력한 pass를 입력하라는 것인데... 

 

어디다 입력해야 하는지 몰라서 인터넷에 검색했더니 URL에 입력하는 것이라고 나온다!! tab도 %09로 인코딩해서 1aaaaa_내아이피%09p%09a%09s%09s를 입력하면 문제가 풀린다... 쉬운 건데 나한텐 아직도 어렵다

 

 

 

'워게임 스터디' 카테고리의 다른 글

[250204][webhacking] old-14  (0) 2025.02.04
[250128][webhacking] old11  (0) 2025.01.29
[241126][dreamhack] 64se64  (0) 2024.11.26
[241126][dreamhack] Reversing Basic Challenge #0  (0) 2024.11.26
[241119][dreamhack] command-injection-1  (2) 2024.11.20