WarGame/los(los.rubiya.kr)
los - troll
DoR@Hee
2019. 3. 20. 17:52
"select id from prob_troll where id = " 쿼리에 결과값이 admin 일 경우 slove() 하는 문제이다.
1. '를 필터링 하고 있다. > '를 우회한다.
2. admin 문자열 자체를 필터링 하고있다. > admin문자열을 우회한다.
처음에 우회를 진행하기위해
아스키코드로 admin을 작성 후 char를 이용 값을 넣어봤더니 거짓값인거 같다.
아스키코드 , hex값 둘 다 이용했을 때 문제를 풀 수 없어서
좀 더 생각을 해본 결과
admin 문자열을 점검하는 함수가 ereg 함수였다
여기서 ereg 함수란?
ereg('찾고자 하는 문자', '필터링 할 문자열')
대,소문자를 구문하는 함수로 찾고자 하는 문자가 있으면 True, 없으면 False를 출력한다.
eregi('찾고자 하는 문자', '필터링 할 문자열')
대,소문자를 구문하지 않는 함수로 찾고자 하는 문자가 있으면 True, 없으면 False를 출력한다.
만약 문자열을 검열하는 함수가 eregi 일 경우에는 다른 방법을 써야하지만
ereg 대소문자를 구문하는 함수로 필터링 하고 있기 때문에 adMin을 입력하면
성공