문제에 들어가보면 다음과 같은 코드가 나온다.
코드를보면 GET 메소드 형태로 flag라는 파라미터가 존재해야 flag가 뿌려진다. 그러나 stripos로 내가 요청한 URI 값에 flag라는 파라미터가 존재할 경우 필터링이 되어진다.
그러나 여기서 생각해볼 수 있는건 URI값을 가져올 때 $_SERVER['REQUEST_URI']를 통해 가져온다는 점이다. $_SERVER['REQUEST_URI']는 내가 요청한 URI를 URL 디코딩없이 그대로 가져온다. 이부분을 염두하면 아래와 같은 방식으로 필터링 우회가 가능해진다.
exploit : ?fl%61g
'CTF > Writeup' 카테고리의 다른 글
BugsBunny CTF 2017 Rev150 (0) | 2018.09.17 |
---|---|
LAYER7 CTF 2018 Margaret (0) | 2018.09.17 |
Meepwn CTF Quals 2018 OmegaSector (0) | 2018.07.17 |
Meepwn CTF Quals 2018 Ezchallz (0) | 2018.07.16 |
ASIS 2018 CTF Good WAF (0) | 2018.05.01 |