前言1 U% Z& g! y) N, c9 [6 n& f
- A: o2 j' x5 e; {( n! R6 ^: s) Z
[color=#333333 !important]这篇文章主要说的是我在这次内部测试的任务中,如何一步步获取应用系统最高权限,总的来说,是各种小漏洞的组合拳。因是内部系统,所以打码稍微严重些。
0 |, k# U0 q- `* i- |# x! M& k正文
; @) m4 Y3 {" o6 F; f' {. D8 Z- O2 X
[color=#333333 !important]在兴(suo)致(ran)盎(wu)然(wei)的某一工作日,突然接到领导的指示,要对内部的运维平台进行渗透测试。
7 K4 d, C, b8 j$ O- ^1 P[color=#333333 !important] 
/ G+ M( f+ n2 N9 _' y[color=#333333 !important]在收到消息的第二天,我精(wan)神(ban)抖(wu)擞(nai)的开始了我的工作。要到测试地址后,我一看,卧槽,果然不出所料,只有一个登陆框。/ Q$ j+ K+ m" @0 T! }7 e
[color=#333333 !important]
+ [; g9 b/ j" _2 c( m" r* E% _; k[color=#333333 !important]对于这种系统,我在心里告诉自己,不要慌,办法总比困难多,随便找两个低危漏洞交差了事,并且又想到,这是生产系统,全国几十个分公司都实时在用,可不能搞瘫痪了,最终我说服自己不扫描、不测影响业务的漏洞,这样一想,我心里立马更坚定了只找两个低位漏洞交差的想法。我果然是聪敏人!!
/ d* O! A3 h Q3 g" u! g- J开始$ a1 C: t) r, ?
" ~, z9 S. h; m2 B* N[color=#333333 !important]好的,接下来我就简单的收集了些信息: C: ~4 m6 [( G# }! w
[color=#333333 !important]首先用google插件wapplyzer,查看了当前系统的信息
2 E1 f# M) r/ v* x. ~' m/ @1 P7 T$ _[color=#333333 !important] 
% B9 ^9 Z" ~9 L' W[color=#333333 !important]为了不被防火墙拉黑,nmap简单的跑了一下,就是探测一些常见的端口,看看管理员有没有部署一些用于测试的垃圾站。。。。结果可想而知。/ D& ^! n6 L! j W
[color=#333333 !important]  / b6 e0 B0 ^6 f# q) `5 j0 I
[color=#333333 !important]还跑过系统目录,钟馗也看了下等等,没什么有用信息,就不贴图了。
2 h' J. S4 ?( i6 |2 [0 @: I/ C[color=#333333 !important]看来确实要对主站完全手工了,只能打开神器burp分析数据包,尽量挖一些逻辑上的漏洞。+ o2 G) w9 P% `- t1 [1 y
[color=#333333 !important]我看了登录框,没验证码,首先想到的肯定是对admin账号先爆破一波。然而:当我输入几次登录信息后,发现用户名密码错误提示是一样的,且有5次错误锁定策略,那肯定就不能直接进行爆破了。
* t& O7 r8 E( B! E j! Q1 o[color=#333333 !important] , J' Q& L3 [4 Q, p; g5 |$ U' g, _
[color=#333333 !important]接着看网页源码也没什么有用信息,但看包竟然是明文传输的,这种情况下,采用单次撞库是最合适的手段。
3 m7 D! i5 ~) @- `[color=#333333 !important]  - i1 z) u- `" x# `, i
[color=#333333 !important]接下来就是祭出burp,抓包,撞库,用topname10000进行撞库,幸好没用tonname500,要不然可能就凉了
" r# \4 K/ O, G8 m* A$ W6 P4 O[color=#333333 !important]  4 S( q" p1 {7 `7 X
[color=#333333 !important]运气不错啊,一万里面总算还有两个成功的,看来后台的弱口令总是会有漏网之鱼。& Y8 @! U( f$ i! R5 y
[color=#333333 !important]到这,我觉得我的工作已经算是超额了,可以交差了。但想着将要面对领导那慈祥的眼神,我只能瑟瑟发抖的再接着往下测。1 L2 w: E: |6 G
[color=#333333 !important]登录wu**这个账号到系统里面,发现这个账号权限很低,不行,满足不了自己的需求,再尝试登录另一个账号,苍天有眼,竟然有新建账号的权限,看来是个当官的了。。。! v7 j6 I* f! o' E0 o
[color=#333333 !important] 
$ o8 s. @" ]2 M6 K4 l U: S[color=#333333 !important]接下来就是对账号新建功能一系列的尝试,过程就略了。。。。只说结果。 J B9 K6 O9 e3 h
[color=#333333 !important]在新建账号发现在选择角色处,某一个角色权限竟然比自己使用的账号的权限还要高,果断就建了一个账号systemtest。$ R$ t7 T9 @* h
[color=#333333 !important] 2 I1 C9 P, f* J Z. N: d! N+ E
[color=#333333 !important]然后再登录systemtest发现,有更多的模块,而其中一项竟然是角色管理,而这个角色管理可以新建一个角色,并且新建角色尽然可以选择拥有所有模块的权限,以我的作风,那必须立马盘它。
, q& s4 c. A, u* w[color=#333333 !important] + p0 X- h/ n4 Q, g
[color=#333333 !important]到此,感觉到浑身充满了力量,这么容易就拿下了最高权限?迫不及待的我立马新建了一个角色,一个账号systemtest2,登录。。。8 `6 \8 v! E4 P; C4 Z1 x$ I1 k& l
[color=#333333 !important]
1 `# `4 y9 }/ l$ w/ u0 k[color=#333333 !important]噗。。看到这画面,我就蒙了,现实果然给了我一个狠狠的耳刮子,这个权限竟然只有某一个分公司的最高权限,而不是系统总部的最高权限,这可不行,都到这了,一定要拿下总部的最高权限。
8 G; e* e2 S+ i" t: [% c2 ][color=#333333 !important]接着,我又开始目的性很强的功能分析与寻找,其实就是胡乱点击,过程就略了…..最终我在查看用户信息的时候发现,发现一个很有特色的参数,而这个参数很像用户的ID值
0 ]) c$ F% C5 r$ X$ {! }: {. o: n$ Q[color=#333333 !important] * m) c9 S# G/ R8 @4 L
[color=#333333 !important]以我的聪(cai)明(shu)才(xue)智(qian)立马感觉这参数有戏,果不其然,我一访问,就感觉发现了新大陆一样0 a. y ` O+ A6 U: H& r
[color=#333333 !important]
5 B1 J( {7 l1 N$ m% P& _- W' K[color=#333333 !important]遍历340这个值,就可以直接修改个人信息啊。然后我经过测试,顺利的发现了admin账号的信息* G7 F; |6 ^! e [" L, [
[color=#333333 !important] : m' o$ a9 u5 V0 n. [# ]
[color=#333333 !important]到了这一步,我就要举一反三了,既然可以修改用户信息,那是不是也可以越权修改用户密码呢?带着这个疑问,我直接到修改个人密码功能的地方,果然可以越权访问修改密码的URL。。& \& \' n& ^! q- d1 ]) Z+ x* i7 u
[color=#333333 !important] 2 F7 u- _' B3 S
[color=#333333 !important]接下来就是要必须解决旧密码的问题,只能去尝试是否可以绕过,没办法,只有抓包分析了。
0 |( v& Z3 f) n& j( F6 U4 d9 f[color=#333333 !important]咦。。。当我在输入旧密码后,准备输入新密码时,系统竟然会先对旧密码进行判定,我就在想这很可能可以绕过旧密码验证7 ^; G% i: x; l& c6 G
[color=#333333 !important] 2 w: t& W! u: `0 o- }* A
[color=#333333 !important]我马上进行了抓包,果不其然,判定条件就以true/false来判定的,到了这,我感觉我要成功了,有点开始飘了,看来可以交差了。我把response结果改为true,长度改为4,果然成功绕过了验证。哈哈….6 O5 D. ?, }' S3 s( C
[color=#333333 !important] ' ^: t& ? w. \% Z) o% K( J( e
[color=#333333 !important]那接下来就一切顺利了,修改了admin密码,并成功登陆,看到了所有分公司的数据。。。。。。。0 K/ K! ^9 Y0 M; Y4 j1 O5 C3 \
[color=#333333 !important] : T& t. C6 Y3 p; x4 o4 ?' `! F' `
[color=#333333 !important]至此,就一切结束了,可以交差了。! ?5 L7 m7 @/ z1 J& T
[color=#333333 !important]测试的工作嘛,到这就结束了,至于拿shell,后渗透这些什么的,就再慢慢弄算了。。先把报告除了再说。
% H% r9 q4 u' C/ S3 O2 H: u, i结语. K7 J9 w6 b4 E2 s; T' N
# [, u$ u2 Q7 _[color=#333333 !important]拿下系统的最高权限并不是仅仅单靠某一漏洞,而是靠的各种小漏洞的组合拳,首先是明文传输,这就有了撞库的机会,然后是有弱口令,撞库才会成功,然后功能设计上也有缺陷,低权限的账号怎么能新建高权限的账号呢?设计者这就应该挨板子了,再然后才有越权访问admin信息,再有原密码的绕过,这一系列小漏洞单独来说不严重,但一旦结合起来,就出现了很严重的安全事件,在进行安全防护工作时,应尽量考虑周全,任何一个弱点都可能成为黑客的突破口。" W: t5 E, k- d9 Y. D, O2 X! A
[color=#333333 !important]*本文原创作者:jin16879,本文属FreeBuf原创奖励计划,未经许可禁止转载
3 d& Q3 q! ]1 ?2 v( I 3 _& ?' D$ S6 F* M
精彩推荐
/ `& `4 O( u7 y
8 X6 x8 ~, F! q) Q' U, b+ C) }+ ?% m! D3 a: k' W/ s0 e
. Q4 A. n3 s+ N8 D9 W4 a0 D6 q
7 \# W- v$ R; `7 T3 G k7 Y
! ~9 A6 T8 J0 s8 a$ D5 g8 g5 I) o5 `0 L5 w1 {. I+ ]
来源:http://mp.weixin.qq.com/s?src=11×tamp=1568725204&ver=1858&signature=DxJVEBSwOthYKl*uBSD3zgNSK1sAzJafqmvmUeqFNMujmJXWZUpUnY2b*l2RcPqdf52-nadXzBAqh*TwTm1cLX-AomPN2watgbpYzoHVMxp4P1Ax7M*5F3kLSuq5mFjP&new=1
0 H2 e9 y! n2 z% D* i) g% J免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |