힌트 힌트가 필요하면 안되는 문제
힌트 get방식으로 전송가능한 파라미터는 2가지 있다. 사서 고생을 하는건 나중에도 충분하다.
힌트 mysql은 hex값으로 암호화되도 문자열처럼 읽음 no = 1 은 guest임
힌트 결국은 비밀번호를 알아야 문제를 풀 수 있다. blind sql injection 사용
힌트 공백은 우회가능하다.
힌트 비교 연산자는 문자열로 사용할 수도 있지만 기호로도 사용할 수 있다.
힌트 id 값이 admin이 아니다. 진한 노가다의 냄새(내가 하든 파이썬이 하든)
힌트 기존 문제에 나왔던 preg_match랑 2번째 preg_match 비교해보기 DB에서는 대소문자를 구별하지 않는다.
힌트 "" 잘보면 가운데 공백이 없다 발상의 전환
힌트 뒤에 쿼리만 제외하면 기존 문제랑 차이가 없다. 주석은 쿼리에서 따로 실행하지않는다.
힌트 substr은 mid로 우회 가능 =은 like로 우회가능
ascii는 ord로 우회 가능모르겠으면 이전 문제 확인해보면 됨이 문제는 직전에 풀었던 Golem 문제에 추가적인 필터링을 더한 문제이다.이 문제는 저번 문제에서 필터링 당한 =, substr 를 제외하고도 공격을 수행하는데 필수적이였던 ', ascii가 추가적으로
힌트 like는 in로 우회 가능 ord는 hex로 우회 가능 모르겠으면 이전 문제 확인해보면 됨
힌트 쉬어가는 문제…. 어렵게 생각 ㄴ shit 파라미터의 위치
힌트 like는 =의 기능 말고도 다른 기능이 있다 like랑 같이 쓰는 %에 주목
힌트 SQL 인젝션을 시도하기 위해서는 '를 무력화 시켜야한다. 문자로 '를 사용하려면 무슨 짓을 해야할까?
힌트 strrev()는 문자열 뒤집는 함수 모르겠으면 일단 아무거나 입력해보기 누군지는 모르지만 서순 틀림소스
힌트 false = 0이다 모르겠으면 1번 그렘린보고 오는 걸 추천 새로운 방식의 주석을 사용함
비밀번호가 한국어임....한국어는 유니코드로이진 탐색 사용을 권장이전에 풀었던 문제처럼 접급하였다가 이유 모를 오류로 한참 고생했던 문제이다length(pw)로 패스워드의 길이를 표시하려고 하니까 아무런 진전이 없어서 찾아보니까 비밀번호가 한글이라는 것을 알게 되었다.
프로그래밍을 할떄 주석이 영향을 미치는 범위를 생각해보자개행 문자 이용쿼리문 중간에 주석 문자인 첫 번째 힌트에서 말 한 것처럼 프로그래밍을 할 때 주석이 영향을 미치는 범위를 생각해보면 주석 문자로부터 그 줄 끝까지였다.한마디로 다음 줄은 영향을 미치지 않는 것이다.
Error-based SQL Injection 찾아보기서브 쿼리는 한 개의 상의 레코드를 반환해서는 안 된다.union에 관해 찾아보기if절 사용법 찾아보기문제의 소스 코드를 보면 블라인드 인젝션 공격을 수행해야 한다는 것을 알 수 있다. 하지만 기존에 참/거짓을 판별