완료됨
blind sqli 주석 처리??
플래그는 획득 하였는데 주석처리에 궁금증이있습니다!
1주석처리?
[함께실습] SQL Injection 과같이 뒤에 이어지는 문장을 주석처리 하기위해 --
로 하였는데
-- -
or --;
처럼 주석처리를 해야되더군요
simple_sqli에서
select * from users where userid="{userid}" and userpassword="{userpassword}"
성공 입력 > admin"--
blind sql injection advanced에서
SELECT * FROM users WHERE uid='{uid}';
성공 입력 > admin' -- -
실패 입력 > admin' -- Internal Server Error
-- -
혹은 --;
와같이 해야하는 것을 알았는데 왜이렇게 되는건가요?
코드에 작성된 sql문 의 차이인가요?
#웹해킹
#심화
#sql_injection
작성자 정보
답변
2
p1n9
대표 업적 없음
주석을 처리하기 위해 --<공백>
과 같이 처리해야 정상적으로 주석으로 처리됩니다.
-
문자가 아니여도 -- a
-- b
와 같이 임의의 문자를 사용해도 정상적으로 주석처리가 됩니다.
--;
는 해당 구문이 끝나는 것을 알려주는 ;
가 있어서 정상적으로 주석 처리가 되는 것입니다.
해바라기!
대표 업적 없음
sql 구문이
SELECT * FROM users WHERE uid='';
이라고 할때 admin'--을 삽입하면
SELECT * FROM users WHERE uid='admin --';
이기때문에 --이 단독으로 있는게아니라, --'으로 해석하게 되며 주석처리가 안됩니다