
자주 보던 검은 화면에 하나의 입력폼 입니다.
대신 아래에 뭔가 적혀있네요.

<script>alert(1);</script>를 넣어서 통과시키면 된다고합니다.
그래서 바로 넣어봤는데...

당연히 바로는 통과 안시켜주네요.
일단 이거저거 입력을 해보겠습니다.

마구잡이로 쳐서 제출해봤는데 이것도 no hack이라는 문구가 나오네요?
더 입력해보겠습니다.

이번엔 숫자만 입력해보았는데... 오? 바로 출력이되네요.
힌트를 얻었네요. 더 더 다양한 값을 넣어보겠습니다.

숫자와 영어를 섞었는데 이번엔 no hack이 출력되네요.. 숫자만 되는걸까요?

번갈아가면서 입력후 제출해보니 이번엔 또 되네요?
그럼 특수문자는 괜찮을까요.

입력폼에 적힌대로 제출해보았는데.. "</"은 사라지고 뒤에 / 들도 없어지네요. 필터링되나봅니다

<나 /을 단독으로 입력했을 땐 문제가없네요.

마지막으로 알파벳 두 글자를 연달아서 입력해보았는데, 이 역시 no hack이 출력되네요.
이로써 알게된건, 알파벳이 2단어 이상 연달아 나오면 안되고, <와 /역시 연달아 붙어나오면 안된다는거네요.
그렇다면 중간중간을 띄워줘야하는데... 바로 생각나는 친구가있습니다.
바로 NULL 문자입니다.
코딩할 때는 ' \0 '로 작성하지만 url인코딩을 거치면 %00이 됩니다.
서버 사이드나 웹 언어에서는 인코딩 그대로 전달 할 수도, 아니면 문자 그대로 처리되기도 하지만..
최신 브라우저에서는 제거하거나 무시하기도, 인코딩 된 그대로 서버로 보내기도합니다.
이때 우리는 제거되거나 무시된다는 거에 초첨을 둘 수있습니다.
저 <script>alert(1);</script> 사이에 NULL문자(%00)을 넣어주면... 입력할 땐 알파벳과 <, /이 연달아 입력되는게 아니니 통과되고 서버로 넘어갈때 NULL문자들이 무시되면서 스크립트를 넣을 수 있을 것같 네요!
바로 시도해보겠습니다.
브라우저에서 NULL문자를 무시하는걸 노리는 것이기 때문에 url 입력창에다가 수행했습니다.
<%00s%00c%00r%00i%00p%00t%00>%00a%00l%00e%00r%00t%00(%001%00)%00;%00<%00/%00s%00c%00r%00i%00p%00t%00>
엄청 길어졌지만 이걸 넣어보면...

짠! 성공입니다!
'보안 > 워게임 (웹 해킹)' 카테고리의 다른 글
| 웹 해킹 - ffuf 사용법 (0) | 2026.02.22 |
|---|---|
| Challenge - old-25 write up (0) | 2025.04.12 |
| Challenge - old-27 write up (0) | 2025.04.09 |
| Challenge - old-54 write up (0) | 2025.04.05 |
| Challenge - old-38 write up (0) | 2025.04.05 |