) p4 D/ R( s; d* a+ I( l, y 注:各位同仁,今天晚上主要防止被限号来凑个数字,这篇文章本来是给一个机构做科普的,所以写的有点怎么说,反正土司的人看了会骂哈哈,大家凑合的看,文中哪怕有那么一点半点东西,能给大家带来启发,那么我这个文章就没白发,所以大佬们轻点喷哈哈,嘴下留情哈哈。 1、POST注入猜解网站管理员账号密码 通过awvs扫描发现存在注入,直接在avws下的Scans---target下点击你扫描的过目标如图:
4 l; Q8 g0 y5 a! ]+ [/ E; G$ t8 U; Q, _5 c
7 a8 s: x& B" F. k! r' {/ W1 _ 然后点vulnerabilities,如图:( b8 g. u' B, J. r, |' P
5 G! W# _6 I# a$ \9 [8 I9 o. j' k0 u0 o% W) w
点SQL injection会看到HTTPS REQUESTS,如图:
0 o3 C& w1 F0 @( }7 c9 ^, C6 R* [/ G$ z1 C: E4 }
获取到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-81 j( l8 @5 L2 }, [. a) l
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表格的格式保存着下载下来的表的内容。 注入用户名密码加密值如图:
) ?6 E/ z. L9 s( W. \- L& p, `# D- W4 N 9 ~9 `( ?1 e5 ^3 ^
2 ^9 {% F5 ?9 k" b. n9 T/ J 2、通过对bin目录dll进行反编译解密管理员加密值登录后台 通过前面的sql注入可获取网站后台账号和密码加密值,为了更深入的测试网站后台是否存在其他漏洞,需要黑盒测试模拟黑客攻击进一步测试,故对网站目录bin目录下的dll进行反编译来获取加密密匙,最终成功解密密码。 把bin目录下的dll全部加载到Reflector中,然后通过跟踪常用用户密码相关的类函数,得出如下结果: ~6 X. f) v7 n
' g; r! ?! T6 ]1 @; h- g6 S( R. S/ n0 [ / x5 b8 d7 q4 e8 x: e
1 R V5 s3 s' @7 W1 y @
8 j8 Z# P) M, l9 D; } 得知密钥是fkue且为des加密,接着定位encrypt类函数找出其解密方式如图:
! k' z, A* {) P
解密方式是把fkue使用md5进行加密,然后取32位md5加密值的前8位作为加密密钥,如图:
* M5 X8 }, H8 Z3 m0 \' @7 F6 e- _& {# U8 P: p ; b: b9 J3 g5 c! ~( i/ R
) Z/ R! d( F6 {5 m通过在线解密网站解密得知加密密钥就是:1110AF03。 前面sql注入步骤已经成功获取admin的加密值,如图:; ?5 g4 R* J1 n, A @* ]
. U9 _# Y& f6 @' e; Z ( P- `& Y1 S- J2 L7 m# _0 b. |
( p4 y! j, r2 y+ R# o7 Y _- s 解密admin管理员密码如图:
: O; C: c# h& d% M% A8 H0 ~ + E" n* o$ Z5 v P) k2 \8 E6 A
6 m1 \: X9 t, k3 ]9 Y然后用自己写了个解密工具,解密结果和在线网站一致* i+ e0 m- b4 r7 {1 m4 |6 j" @
+ {, Z: E o6 M& E( X# `* _' G/ l- R$ S$ H+ {( F8 G 9 {. G y- y7 X. U7 {0 k
! L9 Z* e' X. H* _6 r9 ^4 M4 ?% `解密后的密码为:123mhg,./,登陆如图:
: D- |6 q) a7 V1 o7 s: j
6 z. A; Q" S& k* }* g 3、后台上传绕过漏洞getwebshell如图: 登陆后台后,在添加信息处,会有上传图片的功能,随后使用burpsuite抓包如下图:
7 R ?3 H( l G9 X" ?% C3 S6 L/ B4 O& x' L6 Q8 \7 i
# Q' z8 F& ~$ Q I4 M) s $ V; f7 A8 |4 } c+ h& q3 Q8 n
' \6 M8 K9 L# d/ O" f8 o) Z2 [ 绕过上传限制,只需要把包里的filename的1.jpg改为1.aspx,即可成功上传webshell,如下图:$ G9 L/ a) ]0 b" I7 |
! \$ J3 x- i0 N, E' u% F' g- N4 p. b N1 ^( d) Q/ m7 C
访问webshell如下图:2 n9 O" [& c, f4 }! f
+ M0 q6 |3 f0 a% f, @5 b% L$ b6 u' C( f$ r: k h
& C$ ~! H- C* [- Q" [# G 4、前台任意上传漏洞getwebshell 在目标站前台有注册账号功能,注册成功后,同样在上传图片处可直接上传webshell,链接为http://www.test.cn/userRegister.aspx,登录如图:
# l6 e' l4 E( z% L, Q3 h6 x
; t S6 N! G* M. Q' f6 V5 t 在上传证件或者头像的处可直接上传aspx 后缀的webshell,上传成功后,点右键-属性,可查看上传后的webshell路径为:http://www.test.cn/Admin/upload/demo.aspx 然后登录如图:
8 `6 y1 ^; W4 {4 G* m& x: F: \1 v9 ?4 p$ ^) ~( h
& H* Y% F. |: n( h! F% \; f7 ]) w: ?% ^7 U6 H5 c. O; O 通过查看网站路径下的web.config文件得到mssql数据库配置账号为sa的密码并且以windows身份认证配置的系统登录账号密码如图:/ `# N# u; o, ~$ ?$ E$ w! d) R
8 q8 y1 D& e% v! v+ m) j9 R7 m+ }9 u% V, a$ R4 U
; {8 d6 k( [9 l) S可直接利用mssql sa权限执行系统命令添加管理员账号密码或者直接利用Windows登录密码webshell下利用lcx内网端口转发登陆3389。
总结:一套程序不应该只考虑其美观与功能强大,是要在满足安全的前提下再同时满足美观与功能。建议各个单位在系统上线之前,条件允许的情况下,首先进行白盒测试,其次进行黑盒测试,再次进行灰盒测试。如果通过白、黑、灰发现安全问题,那么就要再进行一轮这样的测试,直到系统难以被发现安全问题,然后再进行上线。特别是一些政府、企事业单位,数据面涉及基础人口等敏感数据,一旦遭到黑客攻击被泄露,给国家带来的损失是无法挽回的。好了以上就是今天分享的渗透内容,谢谢大家的收看!
3 p- A8 V' ^. H& w( s" M+ M/ o- M4 x: A# _( l9 M. x1 B4 X" M
欢迎光临 中国网络渗透测试联盟 (https://cobjon.com/) | Powered by Discuz! X3.2 |