( y9 G6 I3 T2 v% r
注:各位同仁,今天晚上主要防止被限号来凑个数字,这篇文章本来是给一个机构做科普的,所以写的有点怎么说,反正土司的人看了会骂哈哈,大家凑合的看,文中哪怕有那么一点半点东西,能给大家带来启发,那么我这个文章就没白发,所以大佬们轻点喷哈哈,嘴下留情哈哈。 1、POST注入猜解网站管理员账号密码 通过awvs扫描发现存在注入,直接在avws下的Scans---target下点击你扫描的过目标如图:
. b" s8 C7 B5 f : ~$ [% t$ p, f% E3 c
7 j3 k* {, E. `
( x+ ^! `7 |- L" H& E
! p: }* p4 K1 N* e5 v& Q7 f, `- Z
然后点vulnerabilities,如图:
4 r6 W! V: j! I3 G' x( i
8 S% L# Y/ o6 W
5 v+ w* ~ g6 p& b8 P$ C2 Q 4 u3 [9 w9 V- N
7 o! v+ ^6 N; _8 v4 Q
+ b7 {# O: S0 |& n$ } 点SQL injection会看到HTTPS REQUESTS,如图:
9 m7 f. ^ }6 ?- P+ i
7 b( t& K- h: F b5 S8 X& o, P: W* o# d# i( ^
1 b, e$ E3 D* O) O" z( `" G
" ?" z! p2 z6 J9 S( B4 A( B
! S8 v- O! g; E+ r. O, B
获取到http的数据包,如下: POST /Product/ProductHandler.ashx HTTP/1.1 Host: www.test.cn Cache-Control: no-cache Accept: text/plain, /; q=0.01 Origin: http://www.test.cn User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.16 Safari/537.36 X-Requested-With: XMLHttpRequest Referer: http://www.test.cn/ Accept-Language: en-us,en;q=0.5 X-Scanner: Netsparker Accept-Encoding: gzip, deflate Content-Length: 157 Content-Type: application/x-www-form-urlencoded; charset=UTF-8
4 ]8 c$ y2 L3 B. C# N
2 V/ y8 k6 A% Q7 [& [- X6 t& G$ H: I; i# v
Type=GetProductList&pageIndex=3&pageSize=5&productType=*&supplierType=1 把以上post包保存到sqlmap根目录下,保存为1.txt,注入参数提前用awvs已经识别,注入参数是productType,注入命令为: sqlmap.py -r 1.txt --level 5 --risk 3 -p productType --dbms=mssql -D cci -T Zy_user -C u_loginname,u_loginpassword –dump 此sqlmap命令的意思是读取数据库cci下Zy_user表的用户名密码列名,dump就是保存下来的意思,会保存在./sqlmap/output下,以excel表格的格式保存着下载下来的表的内容。 注入用户名密码加密值如图:
& n7 V j9 y0 f" ]$ J) X 0 T' Z* t& U1 N% T% ^- a
2 {3 v. d% ]. I4 ^& A( z# Y
! t7 I9 J9 U4 I$ j6 U 9 e6 T1 X' U; r0 [
# y" m6 n( s& T 2、通过对bin目录dll进行反编译解密管理员加密值登录后台 通过前面的sql注入可获取网站后台账号和密码加密值,为了更深入的测试网站后台是否存在其他漏洞,需要黑盒测试模拟黑客攻击进一步测试,故对网站目录bin目录下的dll进行反编译来获取加密密匙,最终成功解密密码。 把bin目录下的dll全部加载到Reflector中,然后通过跟踪常用用户密码相关的类函数,得出如下结果:
) B% y4 w9 Y0 | 8 G: E$ e3 r: J& T- _! A! \2 c
! Z S& B9 [2 k# u3 X- V: v! T
( D; j- E7 _! q 1 Z2 Y( {: W, W" G9 \
8 q: E8 _! m* h2 a ; w) F, D" ]. W$ W; f) p
3 \! ]7 n+ r# i7 N2 ]+ K5 R; j- s3 i* p3 y5 _( V2 s5 |
得知密钥是fkue且为des加密,接着定位encrypt类函数找出其解密方式如图:
: ^# F$ V4 i4 g& N! l. { 2 r G8 j, I; q/ J9 C
) f; [: u0 M& S* _7 e
5 V/ c& [$ N1 L5 y" I- y. V 4 n9 Z# v+ E; [' c3 g: b' \8 l
. G3 |. ^" g# N, j# L3 z
解密方式是把fkue使用md5进行加密,然后取32位md5加密值的前8位作为加密密钥,如图:5 d- Y$ c& x4 }6 ?4 e% R
+ w: M p$ }9 P
3 U8 i3 n/ I: ?" D5 m! y 2 J4 n0 u" `; l6 T
; F! Q. [1 U5 k4 \8 _$ u
( q8 |, _( T: e+ G: c
通过在线解密网站解密得知加密密钥就是:1110AF03。 前面sql注入步骤已经成功获取admin的加密值,如图:5 U. Q, `! h* Q t; c
" j& O! r9 z) B( z
4 y: D* s) |, Y$ P: K, n
- @) L2 B" q4 R) p* \
+ G3 I7 g1 _8 s5 w3 q# n3 I. n1 T# k+ u5 P7 b
解密admin管理员密码如图:
: v- \2 Y7 F! V F0 I 3 ?8 _0 J# w7 ~' n
! B( |' P+ m5 l
9 C5 ]- d# ]3 e7 i3 O " u0 Z u1 o6 [) x, c
$ b% Z" ^/ G. Y* P
然后用自己写了个解密工具,解密结果和在线网站一致( f* Q$ Y, p" s# p9 Q( y
1 n7 s2 f, Q# Y0 t% N! [; f b+ }5 l! T* ]2 m5 J0 v7 W7 W
/ {* Q% F9 {, t( z
2 @. D' Z+ r9 b. ~4 d1 T0 g/ e9 g o/ R: I: R
解密后的密码为:123mhg,./,登陆如图:
: B& G( V# b$ B$ A7 u4 T- } % X: Y/ L+ C5 |6 H+ Q
9 v0 V/ f/ ~/ G8 f. z 0 K! g) @6 g2 E1 D) j4 H
8 m) s6 U8 o! d. a; C5 f- m5 R0 S9 e ~0 |) X# u, c0 V1 Z
3、后台上传绕过漏洞getwebshell如图: 登陆后台后,在添加信息处,会有上传图片的功能,随后使用burpsuite抓包如下图:
8 W( [* M1 S5 O/ x- F
6 T" o6 N+ g/ ?/ F7 G" h: i3 z
, ^- n( @: ?" h# Q $ X: h$ X. _: r& M2 P) S9 B
6 P/ `' Z8 I8 Y0 H
b" m3 e4 e( M/ I9 b
8 E. U2 C& C$ h 7 Z. ~/ A3 R- f7 A2 a. B9 J
H. h! Z9 {- P, g- ]9 E 绕过上传限制,只需要把包里的filename的1.jpg改为1.aspx,即可成功上传webshell,如下图:( j" H7 a+ v) [8 B
! F! a+ J T: b! q
* W0 T# _" ~9 t+ E8 d* U 2 b9 D4 S6 V; I
+ N) n3 C5 R2 ^% i2 b! g2 C; J
; T+ J9 I, `: ?8 ] ~
访问webshell如下图:! D, b0 [1 z+ J3 {5 {, V
( ]' E R' o+ X6 w% @4 ]
5 `4 `. O. c* P
6 T# G2 l6 I6 p6 j, Y5 Z) ^+ b ) k% L) c7 J% o& B& \5 `' D5 b* Z
) r& l3 e- Z0 l: \* C! ]
4、前台任意上传漏洞getwebshell 在目标站前台有注册账号功能,注册成功后,同样在上传图片处可直接上传webshell,链接为http://www.test.cn/userRegister.aspx,登录如图:
9 f8 k0 s1 y6 m6 d, L" W
' Y& ~3 m; G% T* V( d5 L' A% y4 `& ?+ A: B# d# M
4 L% r, m) R6 n0 P8 f3 m. Y8 _
7 e* E' n3 ^" {. I! m, ?) d
: c) N+ x( ^( Y) B# y8 _ 在上传证件或者头像的处可直接上传aspx 后缀的webshell,上传成功后,点右键-属性,可查看上传后的webshell路径为:http://www.test.cn/Admin/upload/demo.aspx 然后登录如图:# x3 s. z, e" M0 u1 F6 N, Q
/ f0 F) f& K3 |6 I, e
( G5 a v! U: D$ y
% T$ i3 \7 h, N2 a2 W, w$ L 7 j4 A9 |% Z# _& i
% {+ h" f/ U5 r7 S: p+ Y 通过查看网站路径下的web.config文件得到mssql数据库配置账号为sa的密码并且以windows身份认证配置的系统登录账号密码如图:. K' s5 o' H# M
# v& u* e/ U" o
: [2 I2 T, J- e1 w" p & p0 Y' v3 J9 a! Y
9 b1 t" e# S* ?7 h& _1 G9 _! \6 R) U8 f! `- z! x9 B# t0 M, G9 A ?
可直接利用mssql sa权限执行系统命令添加管理员账号密码或者直接利用Windows登录密码webshell下利用lcx内网端口转发登陆3389。
: `) f3 d; \$ x
! |1 F7 l9 S1 B o+ n/ [( z
% E/ x6 t& h, y3 S5 r 总结:一套程序不应该只考虑其美观与功能强大,是要在满足安全的前提下再同时满足美观与功能。建议各个单位在系统上线之前,条件允许的情况下,首先进行白盒测试,其次进行黑盒测试,再次进行灰盒测试。如果通过白、黑、灰发现安全问题,那么就要再进行一轮这样的测试,直到系统难以被发现安全问题,然后再进行上线。特别是一些政府、企事业单位,数据面涉及基础人口等敏感数据,一旦遭到黑客攻击被泄露,给国家带来的损失是无法挽回的。好了以上就是今天分享的渗透内容,谢谢大家的收看!
- h5 M) }( ^3 x
$ m" Q8 O, r7 k; x1 ? Q3 m) o5 E [( }7 [+ S$ F
. ~1 D* T3 v C- D: R+ l% B) h; z
6 G' C U9 I5 w3 G9 ` |