Wargame/Webhacking.kr

https://webhacking.kr/challenge/web-03/ Solve Nonogram SQL injection name에 AAAA를 입력하면 이런 식으로 로그가 남는다. 로그에 남는 answer는 앞에서 푼 노노그램의 정답을 나타내는데, name을 입력받는 페이지의 HTML 코드에 answer이라는 이름으로 정의되어 있다. answer의 value를 바꾸고 name을 입력해보면, 이전까지의 로그들은 사라지고 바꾼 value에 대한 로그만 남는 것을 확인할 수 있다. 그렇다면 서버에서는 select ~ from ~ where answer = 'abcd' 형태의 쿼리를 실행해서, 특정 answer에 대한 로그들만 가져와서 출력하고 있다고 추측할 수 있다. answer의 value를 abcd' o..
https://webhacking.kr/challenge/bonus-3/ 알파벳이 두 개 이상 연속되면 no hack이 뜬다. Payload를 UTF-16 포맷으로 넣으면 이 필터링을 우회할 수 있다. https://webhacking.kr/challenge/bonus-3/index.php?code=%3C%00s%00c%00r%00i%00p%00t%00%3E%00a%00l%00e%00r%00t%00(%001%00)%00;%00%3C%00/%00s%00c%00r%00i%00p%00t%00%3E
https://webhacking.kr/challenge/web-05/ Login을 누르면 mem/login.php로 리다이렉트되고, Join을 누르면 Access_Denied가 뜬다. mem/join.php로 접속해보면 bye가 뜨고 화면에는 아무것도 뜨지 않는다. mem/join.php로 접속할 때 돌아오는 응답을 잡아보면 아래와 같다. 중간에 throw "stop"을 실행하는 조건문이 두 개 있는데, 이 두 개의 조건문을 지우고 forward시키면 mem/join.php에 정상적으로 접속할 수 있다. AAAA / BBBB로 가입하고 로그인하면 admin으로 로그인하라고 한다. admin으로 가입하려고 시도하면 당연히 이미 존재하는 아이디라서 되지 않는다. 공백을 넣어서 가입하면 admin으로 로그인..
http://webhacking.kr:10001/ ?file=hello로 접속하면 hello.php를 실행한 결과를 보여주는 것 같다. ?file=flag로 접속해보면, 플래그는 코드 안에 있다고 한다. PHP wrapper를 이용하여 flag.php 파일의 내용을 읽어올 수 있다. http://webhacking.kr:10001/?file=php://filter/convert.base64-encode/resource=flag base64로 디코딩하면 flag.php 파일의 내용을 볼 수 있고, 그 안에서 플래그를 획득할 수 있다.
https://webhacking.kr/challenge/web-12/ no에 2) or id='admin'--를 넣으면 전체 쿼리는 아래와 같다. select id from chall27 where id='guest' and no=(2) or id='admin'-- ) 그러면 admin으로 로그인할 수 있다. 공백은 %09로, =는 like로 우회할 수 있다. 따라서 아래 URL로 접속하면 문제가 풀린다. https://webhacking.kr/challenge/web-12/index.php?no=2)%09or%09id%09like%09%27admin%27--%09
homeb0dy
'Wargame/Webhacking.kr' 카테고리의 글 목록 (4 Page)