3 O* }8 b; X1 [$ Y6 B 注:各位同仁,今天晚上主要防止被限号来凑个数字,这篇文章本来是给一个机构做科普的,所以写的有点怎么说,反正土司的人看了会骂哈哈,大家凑合的看,文中哪怕有那么一点半点东西,能给大家带来启发,那么我这个文章就没白发,所以大佬们轻点喷哈哈,嘴下留情哈哈。 1、POST注入猜解网站管理员账号密码 通过awvs扫描发现存在注入,直接在avws下的Scans---target下点击你扫描的过目标如图:" ]% w+ ]. ~3 @
/ S+ u6 t7 S! f8 H
}' p* p' s$ K& y$ E1 |4 v% g 然后点vulnerabilities,如图:1 R1 Y. Q) o$ I2 M1 a; C) z
; R5 m" r) _, }5 a# U, Z" V ! O6 w2 u6 T* E/ e5 n; O y2 t& `
; U9 Y+ O* y! M+ Z f: o 点SQL injection会看到HTTPS REQUESTS,如图:( q% ?+ e3 Z! A% S, R
" s# C. f/ A, R7 I- }; B+ @9 j! U& O$ E8 {- \4 r$ X
3 ^) t/ b1 v" U6 a 获取到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/ r# [7 x' s% z7 Y1 b7 j2 K
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表格的格式保存着下载下来的表的内容。 注入用户名密码加密值如图:% B7 o9 f8 [' F, s6 Y% Y9 O
. n! ~: G% Q* @0 c9 R- K6 s( s0 @: C% Z2 o+ o5 e3 Q ; b1 U) `; n, k' J$ h2 f, ~/ V& x. R1 G
, R* V$ s7 k7 e. r, h. L' K+ v( U: I4 ~ 2、通过对bin目录dll进行反编译解密管理员加密值登录后台 通过前面的sql注入可获取网站后台账号和密码加密值,为了更深入的测试网站后台是否存在其他漏洞,需要黑盒测试模拟黑客攻击进一步测试,故对网站目录bin目录下的dll进行反编译来获取加密密匙,最终成功解密密码。 把bin目录下的dll全部加载到Reflector中,然后通过跟踪常用用户密码相关的类函数,得出如下结果:
$ J. c4 [; y! i; M/ t& y' _5 [1 |4 Y+ h. u9 q) A$ D 2 }( N6 L- L: k
8 Y3 l3 B+ y5 K2 `0 t, \' l. A/ ^- S. }. r" D9 v
得知密钥是fkue且为des加密,接着定位encrypt类函数找出其解密方式如图:7 E3 P+ v+ W. i6 }% E6 z' ~8 o
) C: v& K$ E3 D$ p1 M
解密方式是把fkue使用md5进行加密,然后取32位md5加密值的前8位作为加密密钥,如图:
" C4 K0 \, l7 H % b6 \9 [8 g/ u7 u& U
0 B; \- H/ A4 n1 @3 g 通过在线解密网站解密得知加密密钥就是:1110AF03。 前面sql注入步骤已经成功获取admin的加密值,如图:
% I& I% ]1 F0 H; Z8 y/ x6 h$ I' v7 y& x3 o) Y
解密admin管理员密码如图:9 ~# m+ V. J: @& {' p- Q8 v; ]
然后用自己写了个解密工具,解密结果和在线网站一致$ l1 P: K d# t, S8 Z
# V" _5 K7 _1 M8 S. P% C5 x. i* U 4 A, r4 y, r; f$ t
$ h# s2 f6 x c5 d9 ]0 Q) s1 R( ?# y7 f8 d3 p9 ~* B 解密后的密码为:123mhg,./,登陆如图:1 Y$ |7 x) s8 e# C6 u" n2 P; S
$ v+ T" v& Y$ E# Z* s! Y. t/ K6 Y7 f( a; H& f
3、后台上传绕过漏洞getwebshell如图: 登陆后台后,在添加信息处,会有上传图片的功能,随后使用burpsuite抓包如下图:5 {* m3 ]5 s; p# r" ` k
9 r4 J9 o+ g/ L
绕过上传限制,只需要把包里的filename的1.jpg改为1.aspx,即可成功上传webshell,如下图:) \, K8 G4 S. e9 @( H) f: |
3 X$ E7 I! M. {
访问webshell如下图: \8 x& u" B) q" p# b$ `+ O
5 E* } Y# ~+ U+ z( o
+ i. J$ o" ~3 R5 ` R4、前台任意上传漏洞getwebshell 在目标站前台有注册账号功能,注册成功后,同样在上传图片处可直接上传webshell,链接为http://www.test.cn/userRegister.aspx,登录如图:
y) }: a1 ?" B# b% q ( k9 v; {4 z0 M& w9 k. r
: X2 j: l# M* C( k0 y- z 在上传证件或者头像的处可直接上传aspx 后缀的webshell,上传成功后,点右键-属性,可查看上传后的webshell路径为:http://www.test.cn/Admin/upload/demo.aspx 然后登录如图: B/ ~ m8 Z6 _% x4 E- o2 y
: p' P1 v! \3 y5 ^- a2 s , u# N+ f; N/ ?! P3 m
# ~! T. d% r, W# \ d. n5 T. _" N5 N7 E' C; P( i/ o7 I 通过查看网站路径下的web.config文件得到mssql数据库配置账号为sa的密码并且以windows身份认证配置的系统登录账号密码如图:: Q2 J9 ]0 Z9 x8 A% \/ s# A
3 I2 u' W) n+ z: u}( A3 ?/ X, |$ y+ \
6 Y( F& v6 v+ _9 @ 可直接利用mssql sa权限执行系统命令添加管理员账号密码或者直接利用Windows登录密码webshell下利用lcx内网端口转发登陆3389。; Z0 x1 }5 a3 P, P. N
总结:一套程序不应该只考虑其美观与功能强大,是要在满足安全的前提下再同时满足美观与功能。建议各个单位在系统上线之前,条件允许的情况下,首先进行白盒测试,其次进行黑盒测试,再次进行灰盒测试。如果通过白、黑、灰发现安全问题,那么就要再进行一轮这样的测试,直到系统难以被发现安全问题,然后再进行上线。特别是一些政府、企事业单位,数据面涉及基础人口等敏感数据,一旦遭到黑客攻击被泄露,给国家带来的损失是无法挽回的。好了以上就是今天分享的渗透内容,谢谢大家的收看!1 E) U3 a0 k) O& c' z/ t# z
& w' v% L8 X8 w
欢迎光临 中国网络渗透测试联盟 (https://www.cobjon.com/) | Powered by Discuz! X3.2 |