zoukankan      html  css  js  c++  java
  • 偶然的错误发现一个bug,引人深思的null

    今天测接口的时候 很偶然的发现一个bug,先交代下游戏接口
    游戏战斗时会发送uid和登录token回去,这时候会返回一个参数叫storykey
    发送uid,token,返回storykey,战斗结果加上storykey再发回去,这是一次战斗流程,storykey只能被使用一次。
    然后我写代码的时候不小心多加了个引号,导致uid多了个引号,这样token和uid就对不起来了,服务器提示token错误,然后再发战斗结果和storykey(这个时候为null)回去,竟然返回了正确的战斗结果,更可怕的是,这个接口可以重复的使用,也就是达到重复战斗的目的

    bug原理:

     没获取storykey 然后storykey就等于Null。  用null   然后md5加密一个32位字符串     同样 因为获取storykey时候 key is wrong.所以服务器这边的storykey没有。 那也是null. 然后我拿一个null拼上战斗结果 加密。。  正好等于发过来的。   然后把storykey删除以后,下次发过来还是null  所以还能提交战斗。 
  • 相关阅读:
    KVM环境搭建RHCS
    修改virt-manager默认磁盘格式
    前端基础之html
    并发编程
    网络编程
    常用模块
    模块与包
    迭代器、生成器、面向过程编程
    闭包函数和装饰器
    函数
  • 原文地址:https://www.cnblogs.com/tester-huang/p/4632365.html
Copyright © 2011-2022 走看看