1 s+ F* v. p) Y. h 注:各位同仁,今天晚上主要防止被限号来凑个数字,这篇文章本来是给一个机构做科普的,所以写的有点怎么说,反正土司的人看了会骂哈哈,大家凑合的看,文中哪怕有那么一点半点东西,能给大家带来启发,那么我这个文章就没白发,所以大佬们轻点喷哈哈,嘴下留情哈哈。 1、POST注入猜解网站管理员账号密码 通过awvs扫描发现存在注入,直接在avws下的Scans---target下点击你扫描的过目标如图:: h) l3 t; K# ^( O( w( J( a
6 r+ @ M) u. Z, E7 B1 {
( E5 O# j( u( r
[5 A5 _* K, u" e# D6 ? 然后点vulnerabilities,如图:
. t4 | ]( S2 G
+ F, `* P1 V; I
点SQL injection会看到HTTPS REQUESTS,如图:/ _# l$ B1 d# J# p
, i% }0 d& x- H! J) ^8 K+ b
1 S7 W% L3 r; G( H 获取到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
- O! y F7 s% t9 I* E 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表格的格式保存着下载下来的表的内容。 注入用户名密码加密值如图:* |9 U- {6 b b0 v: z$ Z( @
" P4 D' j1 g* h! | R
T. e( d# ]: u2 i# D* w& u% M 2、通过对bin目录dll进行反编译解密管理员加密值登录后台 通过前面的sql注入可获取网站后台账号和密码加密值,为了更深入的测试网站后台是否存在其他漏洞,需要黑盒测试模拟黑客攻击进一步测试,故对网站目录bin目录下的dll进行反编译来获取加密密匙,最终成功解密密码。 把bin目录下的dll全部加载到Reflector中,然后通过跟踪常用用户密码相关的类函数,得出如下结果:8 c1 z" P0 C5 _2 R# Y1 A c6 |
' s) p% U' [1 j6 z7 Y* ~# i9 a" S6 j4 T8 D2 I- n3 }
+ @& n1 V" f+ x/ F$ A. S
! g) J5 I5 ~) I1 y1 O9 P
得知密钥是fkue且为des加密,接着定位encrypt类函数找出其解密方式如图:4 @ n, O5 k7 A1 V
0 ]) A5 A! T3 T6 e* x! O) f D9 K# D
解密方式是把fkue使用md5进行加密,然后取32位md5加密值的前8位作为加密密钥,如图:
通过在线解密网站解密得知加密密钥就是:1110AF03。 前面sql注入步骤已经成功获取admin的加密值,如图:' j0 i3 x: |% R7 m; ?. d
1 ^' w9 G2 F J# N @& M/ ]; ^# u2 Z7 q( O
6 {- N/ z+ I% B
7 o4 W# c( c) K7 z! c* \* q" V. m- G9 ~3 l7 o 解密admin管理员密码如图:
/ H: L! \' o# @
4 ^9 D6 Z7 i: g) B1 c, _
然后用自己写了个解密工具,解密结果和在线网站一致
. y' B" E& ^* P E# n2 I
* N7 ^5 X0 _: `, L
解密后的密码为:123mhg,./,登陆如图:
, J- t8 H$ Q( C8 k" P3 I
* _2 t$ `+ K& F 3、后台上传绕过漏洞getwebshell如图: 登陆后台后,在添加信息处,会有上传图片的功能,随后使用burpsuite抓包如下图:9 L; y3 T9 p0 P
1 _1 i7 [2 f0 G6 X; d Y; w8 V% ~/ h
' F( A/ [) N" M$ |: s0 u
绕过上传限制,只需要把包里的filename的1.jpg改为1.aspx,即可成功上传webshell,如下图:* q$ p3 i6 u' A9 U! l6 @5 `# g
8 f7 I6 {: g( v+ |6 N' D6 L4 {
. `) P0 V5 }" Q 访问webshell如下图:
7 |% t6 e. p; A7 Z; B8 H
4、前台任意上传漏洞getwebshell 在目标站前台有注册账号功能,注册成功后,同样在上传图片处可直接上传webshell,链接为http://www.test.cn/userRegister.aspx,登录如图:
4 x r/ Z, d+ f5 k: T% i
在上传证件或者头像的处可直接上传aspx 后缀的webshell,上传成功后,点右键-属性,可查看上传后的webshell路径为:http://www.test.cn/Admin/upload/demo.aspx 然后登录如图:
: T' W4 f4 k7 K2 w$ n1 v" u
通过查看网站路径下的web.config文件得到mssql数据库配置账号为sa的密码并且以windows身份认证配置的系统登录账号密码如图:
, c" y: F! @; g
' O3 x! f6 s: g6 V+ g e
可直接利用mssql sa权限执行系统命令添加管理员账号密码或者直接利用Windows登录密码webshell下利用lcx内网端口转发登陆3389。/ E6 |9 L) }* W3 B. C- d3 `, K$ Q
2 x" A# h( I2 b, t9 r h- Y! N! I0 P$ _: c; U" n 总结:一套程序不应该只考虑其美观与功能强大,是要在满足安全的前提下再同时满足美观与功能。建议各个单位在系统上线之前,条件允许的情况下,首先进行白盒测试,其次进行黑盒测试,再次进行灰盒测试。如果通过白、黑、灰发现安全问题,那么就要再进行一轮这样的测试,直到系统难以被发现安全问题,然后再进行上线。特别是一些政府、企事业单位,数据面涉及基础人口等敏感数据,一旦遭到黑客攻击被泄露,给国家带来的损失是无法挽回的。好了以上就是今天分享的渗透内容,谢谢大家的收看!& J* I9 J# \# K2 q0 [# R
' X2 t& e0 \6 g! {, _' D
9 p/ c# f# _$ M0 p6 I| 欢迎光临 中国网络渗透测试联盟 (https://cobjon.com/) | Powered by Discuz! X3.2 |