返回列表 发新帖

WordPress插件Google Analytics by Yoast存储型XSS漏洞| →『网络安全区』

750.8k 12
kjeittccdf 发表于 2015-3-28 20:39:06|湖北 | 查看全部 阅读模式
来源:推酷   
5 Z# ^2 }' Y- _& k/ Y
. i( N/ j4 F0 |0 a! n% jWordPress著名插件Google Analytics by Yoast插件中曝出存储型XSS漏洞,该漏洞能够让未被授权的攻击者在WordPress管理面板中存储任何HTML代码,包括JavaScript。管理员查看插件的设置面板是JavaScript就会被触发,不需要别的交互行为。
  n+ {5 g! X% x5 x' X1 N4 g
$ g% X5 @7 @0 a) j5 p8 L6 ^漏洞描述
+ }7 |9 c" l  i4 }! L7 d8 L# o& X ( R" d* w: I6 J4 h1 x9 J3 H
Google Analytics by Yoast是一款用于监视网站流量的WordPress插件。这款插件有大约7百万的下载量,是最受欢迎的WP插件之一。尽管插件代码从2014年开始被例行安全审计,但还是出现了这个漏洞,这次的这个漏洞非常危险,并且显然是Yoast WP插件中爆出的最严重的漏洞。! ]7 M1 ]0 }$ K2 G7 H5 P) o

1 s$ k2 e. [: e8 L2 Y1 k9 J对于攻击者来说,利用这个漏洞在服务器端执行代码相对简单。在默认WP配置下,恶意的用户可以利用这个漏洞通过插件/主题编辑器在服务器上写PHP文件(见视频演示)。或者攻击者也可以更改管理员密码,创建管理员帐号,或者做其他任何服务器网站上已登录用户所能做的事情。1 M, c6 K# p7 o- k  S
/ I" D1 p. c, y. e+ p% }$ q
这个漏洞今年1月下旬由Klikki Oy发现的,但是当时还不知道具体的影响,直到三月一份完整的调查结果出炉。现在插件已有更新修复这一问题。
. R2 G; ~( {% a$ O: e + f0 V" {! r5 ]3 k
漏洞细节
3 n* C" ?; V1 F
7 I% }# g" s- \% t' c0 x. M  i漏洞的影响是两个问题的结合。首先,缺少访问控制导致未被授权的用户可以修改有关插件的部分设置。攻击者可以覆盖已有的OAuth2验证信息,验证信息在插件中被用作获得Google分析的数据,因此,攻击者可以在插件中使用自己的Google分析账号。
% |" w# N' Y0 I4 T, P
/ P% c9 j4 D8 I6 T: i其次,  K4 v8 k' P/ k
插件中有一个HTML下拉菜单,菜单基于从Google分析下载的数据。数据没有进行处理或者HTML转义。如果攻击者在Google分析账号设置中输入<script>标签之类的HTML代码,这些代码就会出现在WordPress管理面板中,任何浏览这些设置时就会触发。
/ p  C1 Q' r6 i9 d" e8 ?   
9 x3 a; t+ v( `7 r% E( O ( |. o# U/ J8 F3 K6 ^0 s) O
) V# }' v: c6 w7 v

! L& T" _( f% L. Z
3 W$ c* n- s3 r0 PvcmlnaW5hbD0="http://www.hx95.com/uploadfile/Collfiles/20150324/2015032410093787.jpg!small" src="http://www.hx95.com/uploadfile/Collfiles/20150324/2015032410093787.jpg" title="shutterstock_196083881-680x400.jpg" />2 r! ^. X8 \- J: s( n+ y. N  I" B
8 k  `9 \( D$ }5 S' w) v
POC
3 }. t5 w- U+ ]' h- p
( p' R& C! G# L$ k' k; V) }9 h以下这段HTML片段可以用来劫持使用了漏洞插件的网站中Google分析账号:* }- Q+ r2 ^  r
  : B$ G% ~6 k7 L/ K# @  Z
<a href="http://www.hx95.com/wp-admin/admin-post.php?reauth=1">reauth</a><br><br><form method=POST action="http://www.hx95.com/wp-admin/admin-post.php"><input type=text size=100 name="google_auth_code"><input type=submit></form>
( x0 z# M* f- R
7 Z1 S2 B+ v: E- F& h! Y! G* u. s! x& C6 r : S9 p! E( T- g: O1 k
首先,攻击者会点击"重新授权"链接。这个动作不需要任何验证。它会重置某些插件设置,并将攻击者重定向导一个google.com OAuth验证对话框,攻击者可以在这里获得一个验证代码。接着攻击者会复制这段代码并且粘帖到上面的表格并点击提交。这样攻击者就更新了插件设置中的代码——也是不需要进行授权的。然后插件就会从攻击者的Google分析账号获取数据了。
; H, J5 t, b. h3 @. M9 Q( m3 }
: ~( d; H$ I# N攻击者会在Google分析账号设置(https://www.google.com/analytics/web/?hl=en#management/Settings/)中填入真正的payload脚本。例如:
1 z4 @' L% I8 R# ?* }( S  0 x. R- h* [: Z" z
     test"><script>alert(&#39;stored XSS&#39;)</script>
/ z8 k1 G: E! F+ E& y# [/ r这样的脚本会在管理员浏览面板中的设置页面时弹窗。" p6 P! |1 g3 V$ y: Z: ?' W
真实的攻击可能会使用src属性从外部网站加载更加复杂的脚本。可以使用ajax调用加载提交管理表单,可以使用插件编辑器写入服务器端PHP代码,并执行。
4 v$ s3 f# Y5 X/ r6 u! Z) e ) t1 N( n* b5 ^# u. c/ y
解决方案
1 C+ i0 }# ]& ~; v3 U0 o  |
. ~. D) z  m; A; }" b2 Q; \Yoast于2015年3月18日收到提醒。第二天Yoast发布了更新(5.3.3)。

回复|共 12 个

佚名 发表于 2015-4-10 17:54:41
那个家 让它沉下去吧! 不要啦
佚名 发表于 2015-4-10 17:55:51
呵呵 你想就来嘛~~
佚名 发表于 2015-4-10 17:57:25
呵呵  我傻了‘~~哈哈
佚名 发表于 2015-4-10 18:04:23
呵呵 放心 如我算错 你以后来砸我的帖子 呵呵
佚名 发表于 2015-4-10 18:16:02
哪个正常的人能崇拜一只蟑螂呢?
佚名 发表于 2015-4-26 21:11:17
这个得知互动技术交流论坛很不错
佚名 发表于 2015-4-26 21:20:07
我不是来抢沙发的,也不是来打酱油的。
佚名 发表于 2015-4-26 21:21:44
哎 怎么说那~~
佚名 发表于 2015-4-26 21:22:49
既然你诚心诚意地发贴了,那我就大发慈悲地回复你。为了防止此贴被秒沉,为了维护此楼的繁荣!贯彻爱与真实的邪恶,可爱又迷人的顶贴角色! 穿梭在贴吧之间的顶贴队!喵~就是这样
佚名 发表于 2015-4-26 21:22:53
希望这样的好贴多些,再多些!!!
alapScady 发表于 2015-6-18 22:37:42|Reserved | 查看全部
呵呵 放心 如我算错 你以后来砸我的帖子 呵呵
buingeEvineus 发表于 2015-6-18 23:06:55|英国 | 查看全部
假如我们把自己力所能及的事都完成了,我们会真的令自己大吃一惊。

回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

得知互动是一个融创意、设计、开发、营销、生活、互联网于一体的专业交流分享平台。
Copyright © 2026 站长技术交流论坛|互联网技术交流平台|Ai技术交流平台 版权所有 All Rights Reserved. Powered by Discuz! X5.0 鄂ICP备15006301号-5|鄂公网安备 42018502006730号
关灯 在本版发帖 扫一扫添加QQ客服 返回顶部
快速回复 返回顶部 返回列表