los - bugbear
·
Lord_of_SQL-Injections_I
필터링이 꽤 여러개 걸려 있다. ' ', 'or', 'and', 'like', '0x', 'substr', 'ascii', '=' 등등이 걸려있다. 이전 darkknight 문제와 비교해서 걸리는건 필터링에 'like'가 추가되었다는 점이기 때문에, 'like'만 우회하면 페이로드는 이전 문제와동일하다. 참고로 'like' 는 'IN" 연산자로 우회할 수 있다.
los - darkknight
·
Lord_of_SQL-Injections_I
"substr*", "ascii", "=" 그리고 싱글 쿼테이션(')이 필터링 되고 있다. 이전 문제에서 싱글 쿼테이션을 사용하던 이유는 입력받는 파라미터 값이 쿼리 내에서 싱글 쿼테이션 내에 포함되어 있기 때문이다. 예를 들어 위 소스 내에서 우리가 입력할 수 있는 pw 파라미터는 싱글 쿼테이션 내에 포함되어 있어서, pw 파라미터를 공격하려면 반드시 싱글 쿼테이션을 입력해서 문자열 처럼 인식되지 않게 해야 한다. 그러나 no 파라미터는 아무것도 없기 때문에, no 파라미터를 공격할 때에는 싱글 쿼테이션을 안 써도 된다. 문제는 "substr", "substring" 함수가 전부 필터링이 된다는 점이다. 그런데 사실 두 함수 모두 문자열을 자르기 위해서 사용하는 함수이기 때문에 한 글자씩 자르기만 한다..
los - golem
·
Lord_of_SQL-Injections_I
'or', 'and', 'substr', '=', 등 자주 사용하던 것들이 필터링 되어 있다. 필터링만 우회하면 기존의 blind sql injection 문제들과 크게 다른점은 없다. 우회 X 우회 O or || and && substr substring = LIKE