注:各位同仁,今天晚上主要防止被限号来凑个数字,这篇文章本来是给一个机构做科普的,所以写的有点怎么说,反正土司的人看了会骂哈哈,大家凑合的看,文中哪怕有那么一点半点东西,能给大家带来启发,那么我这个文章就没白发,所以大佬们轻点喷哈哈,嘴下留情哈哈。 1、POST注入猜解网站管理员账号密码 通过awvs扫描发现存在注入,直接在avws下的Scans---target下点击你扫描的过目标如图:
! |1 Z$ h r/ [2 ?5 {4 T
- E X" O- Y) ]! p 然后点vulnerabilities,如图:
& w. @# |4 q0 F/ }- m( P9 Z4 }
# ~) K4 n' X7 r0 S @ 点SQL injection会看到HTTPS REQUESTS,如图:
$ Q* }9 N* K3 Y( C
& ?9 Y3 {. F9 f( Q2 |7 `
获取到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# e; U% n3 r! U5 {8 K2 r) [' o
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表格的格式保存着下载下来的表的内容。 注入用户名密码加密值如图:$ z6 _8 @; \) b* m
2、通过对bin目录dll进行反编译解密管理员加密值登录后台 通过前面的sql注入可获取网站后台账号和密码加密值,为了更深入的测试网站后台是否存在其他漏洞,需要黑盒测试模拟黑客攻击进一步测试,故对网站目录bin目录下的dll进行反编译来获取加密密匙,最终成功解密密码。 把bin目录下的dll全部加载到Reflector中,然后通过跟踪常用用户密码相关的类函数,得出如下结果:
- D) K9 g- x( C0 J7 F8 ~
; `3 ` `0 G) m- o' d# f6 z
0 Y5 M& X: ]5 h4 r
' F5 _7 |% N \+ B8 j+ n2 k
1 c- N+ Y2 w7 Z% f 得知密钥是fkue且为des加密,接着定位encrypt类函数找出其解密方式如图:- L0 r7 {1 r+ R+ s
6 f0 c; ~: ^3 O
解密方式是把fkue使用md5进行加密,然后取32位md5加密值的前8位作为加密密钥,如图:
% @# \- w8 z, q& i) \
$ z0 R2 P- E; F/ U
通过在线解密网站解密得知加密密钥就是:1110AF03。 前面sql注入步骤已经成功获取admin的加密值,如图:
" {' d. P- }: H) V5 } 解密admin管理员密码如图:1 C, I0 y+ r& ?6 l1 x
% I! J2 D( W( H( C$ v3 w" }1 d: U/ D1 S
" b4 N1 A/ Y6 ^1 E3 z2 a; l. r
然后用自己写了个解密工具,解密结果和在线网站一致, j6 z9 h# N4 X' [4 R. p3 Z! r3 i" n
9 b9 x- z6 ]" ^2 |# ^( _ 解密后的密码为:123mhg,./,登陆如图:% V2 @' b5 s9 p# k; N2 ]
0 J( x( M7 G8 Q. d1 M% U 3、后台上传绕过漏洞getwebshell如图: 登陆后台后,在添加信息处,会有上传图片的功能,随后使用burpsuite抓包如下图:9 C& {2 H! h' w/ N9 C# h
& k1 }3 x3 ?3 Q* |+ y( T: ?9 t8 o3 ~1 I8 K+ U$ x7 c
1 X0 `6 Q1 k5 V% [ g
: f! w+ o8 g( X
# }; L" x) p# f! _+ X$ m. U0 u 绕过上传限制,只需要把包里的filename的1.jpg改为1.aspx,即可成功上传webshell,如下图:
. c- S9 x: ^1 x7 I+ G
; A0 {4 U& k1 g' f! p/ \9 C" e
3 {+ c8 \* ~7 E% O0 h2 _1 z" ^0 ^4 ? 访问webshell如下图:
, P( d- `6 g V% E! o/ v. O3 Q: p- w* W% V5 i& ]! |
6 i7 ~# {; O9 ?; F* X$ v# Z
( Z5 L$ @. z# d- H 4、前台任意上传漏洞getwebshell 在目标站前台有注册账号功能,注册成功后,同样在上传图片处可直接上传webshell,链接为http://www.test.cn/userRegister.aspx,登录如图:- R% l$ {$ m6 e+ K; w6 ~3 F
?- l2 x/ }+ U7 D2 ]' D5 u0 _: u
" X+ [9 G6 n$ `/ S: |6 e6 c 在上传证件或者头像的处可直接上传aspx 后缀的webshell,上传成功后,点右键-属性,可查看上传后的webshell路径为:http://www.test.cn/Admin/upload/demo.aspx 然后登录如图:+ `6 ^( l( e2 }/ ]8 \* ^
. `9 f* g# B H# o0 U# H _% s% N: U2 v
% P. E# e( f3 U" S/ U
通过查看网站路径下的web.config文件得到mssql数据库配置账号为sa的密码并且以windows身份认证配置的系统登录账号密码如图:
! t( W4 e0 c0 r; S0 R; Z U- H' ? T y
9 i7 k8 q$ Q0 q9 h4 Z
可直接利用mssql sa权限执行系统命令添加管理员账号密码或者直接利用Windows登录密码webshell下利用lcx内网端口转发登陆3389。: @. a% N& F# ^8 @1 s+ y0 w0 T
' c6 K% X" S" G' M1 l6 O5 g3 m7 w* Q5 V 总结:一套程序不应该只考虑其美观与功能强大,是要在满足安全的前提下再同时满足美观与功能。建议各个单位在系统上线之前,条件允许的情况下,首先进行白盒测试,其次进行黑盒测试,再次进行灰盒测试。如果通过白、黑、灰发现安全问题,那么就要再进行一轮这样的测试,直到系统难以被发现安全问题,然后再进行上线。特别是一些政府、企事业单位,数据面涉及基础人口等敏感数据,一旦遭到黑客攻击被泄露,给国家带来的损失是无法挽回的。好了以上就是今天分享的渗透内容,谢谢大家的收看!
$ q2 x" C- U; r M* P% u # s, Z9 v* T% d5 F; t# ?& t
l3 y- b% K0 g欢迎光临 中国网络渗透测试联盟 (https://cobjon.com/) | Powered by Discuz! X3.2 |