BUG描述:
  1.mtop接口请求协议是http,未加密,能够轻易地被中间人获取,泄漏用户隐私
  2.mtop登录接口流程设计有误:用户在手机端登陆后利用者可用同样的请求再登陆一次(即利用者获取了用户登陆后的所有权限)
  3.mtop登录接口中用于RSA加密的公钥N长度为1024位,易被破解(虽然token的有效期是10秒,但是利用者只需要拿到公钥和加密后的结果,在一定时间内可破解出用户明文密码。不过鉴于能破这公钥的人很少,这个问题影响级别很低,下文不做描述)..(更新:公钥强度极低,可快速(毫秒级)破解出用户明文密码)
  BUG影响:
  使用淘宝主客时用户数据泄露、登陆劫持、用户登陆密码泄露。
  BUG发现过程:
  用电脑搭建一个AP,手机连接到该AP
  问题1:抓包即可发现
  问题2:重复POST用户的登陆请求url可以发现不会返回失败(已修复,无法重现)
  问题3:(RSA算法相关,暂时不写)
  BUG原因:
  第一点:HTTP为明文协议,容易被中间人抓包分析
  第二点:token虽然有效期为10秒,但是在10秒内用户可用同样的token登陆多次,没有对登陆次数做验证
  第三点:中间人可以破解出用户的密码明文
  BUG终处理:
  1、对协议进行加密,比如使用HTTPS
  2、对于一个token,用户使用它登陆一次后应该失效
  GBA传承:
  1、在协议设计之初应该有安全相关的人员介入评估方案
  2、加密解密相关的东西尽量使用成熟的库,能力不足自己去实现可能会埋下巨大的bug
  3、测试的时候关注基本的安全点:隐私泄露、密码破解