문제의 화면입니다.
문제의 소스 코드입니다.
select or and ( ) limit ,(콤마) / order cash 공백 \t ' " 을 필터링합니다.
id가 admin이 되면 문제가 풀립니다.
lv를 입력하면 각 lv에 해당하는 id값이 나옵니다.
lv 1~4까지는 id가 지정되어있고 이 이후 lv에 대해선 id가 없습니다.
그래서 admin에 해당하는 lv 값은 없구나 라는 추측이 가능합니다.
mysql에서 조건문인 case 문를 써줍니다.
쿼리는 아래와 같습니다.
lv=0 || id=case when lv=0 then 0 else admin end
이를 필터링을 우회하도록 값을 변경해주고 url로 던져주면
문제가 풀립니다.
공백은 %0a로 바꿔주고
admin은 16진수로 바꿔서 넣어줬습니다.
'write-up(web) > webhacking.kr' 카테고리의 다른 글
[Webhacking.kr] Challenge g00gle2 write-up (0) | 2022.08.11 |
---|---|
[Webhacking.kr] Challenge old-46 write-up (0) | 2022.08.09 |
[Webhacking.kr] Challenge old-21 write-up (0) | 2022.08.09 |
[Webhacking.kr] Challenge old-19 write-up (0) | 2022.07.28 |
[Webhacking.kr] Challenge old-32 write-up (0) | 2022.07.28 |