뉴비에욤

Webhacking.kr 45번 본문

Webhacking.kr

Webhacking.kr 45번

초보에욤 2015. 8. 16. 21:39

 

 

  "mb_convert_encoding" 함수를 통해 GET[id] 값을 입력 받음

  사용자가 입력한 id, pw 값을 이용하여 쿼리를 실행하고 결과가 'admin'인 경우에만 클리어 됨

 

 

  * mb_convert_encoding

- 문자열의 인코딩 방식을 변경하는 PHP 함수

- 인코딩 과정에서 "magic_quotes_gpc" 옵션을 우회할 수 있는 취약점 존재

 

  * magic_quotes_gpc

- 싱글 쿼터('), 더블쿼터("), 백슬래시(\)와 같은 문자가 입력되면 앞쪽에 슬래시(/)을 이스케이프(연결)하여 문자열로 인식 시킴

- ' => \'  ( %27 => %5c%27 )

 

  * mb_convert_encoding 함수로 문자 인코딩 방식 변경

- %al%5c 와 같은 문자는 한 개의 문자로 인식

- %al ~ %fe 범위 해당

- %al'  =>  %al%5c%27

 

 

 

  id : %bf%27 or id=0x61646d696e#

* 0x61646d696e == admin

* # = %23

 

 pw : 1

 

  위와 같이 변수를 입력했을 때 실행되는 쿼리는 다음과 같다.

select id from members where id='' or id=0x61646d696e# ' and pw=md5('1')

'Webhacking.kr' 카테고리의 다른 글

Webhacking.kr 47번  (0) 2015.08.16
Webhacking.kr 46번  (0) 2015.08.16
Webhacking.kr 44번  (0) 2015.08.16
Webhacking.kr 43번  (0) 2015.08.16
Webhacking.kr 42번  (0) 2015.08.16
Comments