Webhacking.kr 23번 -old
- 해킹/웹해킹
- 2020. 6. 19.
webhacking.kr 23번 [문제풀이]
안녕하세요.
오늘은 webhacking.kr이라는 사이트의 23번(old) 문제를 풀어보려고 합니다.
문제를 풀기 위해 해당 사이트로 이동해주세요.
웹 해킹 23번 문제풀이 [200점]
23번을 풀기 위해 들어가 보면 아래 사진처럼 초기 화면이 보일 겁니다
텍스트를 입력할 수 있는 상자와 제출버튼이 보입니다.
그 아래 "your mission is to inject <script>alert(1);</script>" 라고 적혀있네요.
개발자 도구로 찾아봐도 다른것은 보이지 않습니다.
보이는 힌트는 다 찾은 것 같네요.
그럼 이제 값을 넣어보겠습니다.
admin이라는 값을 넣어봤더니 no hack이라는 텍스트가 출력되네요.
여러가지 입력해보았습니다.
문자가 2개 이상이면 no hack이라는 메시지를 출력합니다.
숫자나 <, /, >등은 그냥 출력하는 것 같네요.
get방식이면서 박스에 태그같은 것을 적으면 바로 적용이 되네요.
그럼 이 문제는 문자 길이 필터링만 우회하면 되는 것 같습니다.
NULL이 생각나서 문자와 문자 사이에 url인코딩 NULL(%00)을 추가해봤습니다.
input박스에 U%00U라고 입력해보니 제가 원하던 결과가 아니었습니다.
주소창에도 U%2500U로 나오네요.
그래서 이번에는 주소창에 U%00U를 입력해봤습니다.
UU가 붙어서 출력되네요.
잘 되는 것을 보았으니 이번에는 <script>alert(1);</script>에 %00을 추가해서 실행해보았습니다.
<s%00c%00r%00i%00p%00t>a%00l%00e%00r%00t(1);</s%00c%00r%00i%00p%00t>
alert(1)이 실행되었습니다.
확인을 눌러보니 old-23 pwned가 출력됩니다.
오랜만에 풀어보니 재미있네요.
+추가
HTML URL코딩