-
LOS - 16 Succubus Write Up [ '(싱글쿼터) 필터링 우회, \(역슬래쉬) 활용 방법]CTF/Web 2020. 3. 24. 16:58
sql injection의 생명과도 같은 '(싱글쿼터)가 필터링 되어 있다.
이런 경우에는 id 파라미터에서 먼저 작업을 해주어야 한다.
그건은 바로 escape문자인 '\' 역슬러시를 사용하는 것이다.
'\'를 사용하면 역슬러시 다음에 오는 문자가 문자형으로 쓰이는 특수문자라는 것을 알려준다.
이러한 특징을 이용하여 기존에 적혀있는 싱글 쿼터를 살려서 풀어햐 하는 문제이다.
자세한 설명으로 보자면
빨간색 네모를 '(싱글쿼터)로 감싸고 있는 구조가 된다.
id='빨간 네모' '(싱글 쿼터 하나가 남는다.)
이렇게 된 이유는 id 입력값을 닫아주는 싱글쿼터를 이스케이프 문자를 이용하여 텍스트 문자로 변환되어 제기능을 상실한 것이다.
그래서 pw의 입력값을 여는 싱글쿼터가 본의아니게 id의 값을 닫는 싱글쿼터로써 쓰이게 되는 것이다.
이제 좀더 난이도가 쉬어진 문장이 된다.
정리하면 이렇게 된다.
id='' '
이제 pw에 값을 넣어 쿼리 조작을 해주면 된다.
사실 뒤에 남겨진 싱글 쿼터는 쓸 필요조자 없다.
id='존재하지 않는 id값' or 1
라는 쿼리가 동작하여 참이 되고 문제가 클리어 된다.
'CTF > Web' 카테고리의 다른 글
LOS 18 -nightmare Write up (sql injection ;%00주석 활용) (0) 2020.03.26 LOS 17 - zombie_assassin Write Up (0) 2020.03.25 LOS 15 - assassin Write up (sql injection like 활용) (0) 2020.03.23 LOS 14 - giant Write Up (공백 필터링 우회) (0) 2020.03.22 LOS 13 - bugbear Write Up (blind sql injection) (0) 2020.03.21