LOS - 10번 skeleton

sookyeong·2022년 3월 30일
0

[10] skeleton


문제


풀이

solve의 조건은 id==admin 이다.


준비된 쿼리문은 다음과 같다.

$query = "select id from prob_skeleton where id='guest' and pw='{$_GET[pw]}' and 1=0";

지금까지 해온 것처럼,

$_GET[pw] 부분에 적절한 쿼리문을 넣어 id='admin'이 정상 처리되게끔 해주면 된다.


$_GET[pw]를 기준으로

앞부분의 쿼리는 싱글쿼터를 하나 삽입함으로써 FALSE로 만들어주고,

뒷부분은 주석 처리하여 무시되게끔 해주면 될 것 같다.


즉, 목표는 준비된 쿼리문을 다음과 같이 변조해주는 것이다.

$query = "select id from prob_skeleton where (id='guest' and pw='') or id='admin' #' and 1=0";

① 논리연산자의 실행 순서에 따라 앞부분 조건절은 하나로 묶여 FALSE로 처리됨

② || id='admin' 을 삽입하여 id가 admin인 레코드를 뽑아옴

③ 뒷부분은 주석으로 날려줌

복잡해보이지만 지금까지와 다를 바 없다.


최종적으로 입력할 쿼리문은 다음과 같다.

' or id='admin' %23

결과

profile
actions speak louder than words

0개의 댓글