wargame.kr login filtering 문제 풀이
2019. 11. 9. 12:47ㆍWargame/wargame.kr
이 문제에 들어가면 위와같은 화면이 출력되는데 우선 소스코드를 확인해보자.
이런 코드가 있는데
취약점은 바로 if 구문이다.
여기서 $row['id] 값을 조건으로 확인하면서 그 안의 if 문에서는 내가 입력한 id 가 guest 인지 확인한다.
만약 쿼리를 실행 한 결과가 있다면, 해당 id가 guest 혹은 blueh4g 이라면 your account is blocked을 출력 해 준다.
그런데 이 때, ==를 사용하며 비교 대상은 쿼리 결과로 나온 $row['id']가 아니라 내가 입력 한 $id이다.
여기서 mysql 은 대소문자를 구분하지 않기 때문에 내가 id 값으로 Guest 라는 값을 넘겨주어도
guest 라는 값을 찾게된다.
id에 Guest
pw에 guest 를 입력하면 문제가 풀린다.
'Wargame > wargame.kr' 카테고리의 다른 글
wargame.kr wtf_code 문제풀이 (0) | 2019.11.09 |
---|---|
wargame.kr QR CODE PUZZLE 문제 풀이 (0) | 2019.11.09 |
wargame.kr flee button 문제풀이 (0) | 2019.10.04 |
wargame.kr already got 문제 풀이 (0) | 2019.10.04 |