• 解 酷_工工_狗_短信轰炸,[兴趣来源于之前看到某一个帖子的短信轰炸]


    说明:

      本人因为学习,刚好想到了此酷..,所以有任何违法的事情 或者其它,请联系本人,,删除本贴,特此公开:,,本人能力有限,不愿承担任何风险

    源由:

      前些天,看到首页有推 一个帖子名为[某短信轰炸]的例子,所以我也跟着酷狗了来看一发,此注册的例子

    工具:

      js调试工具

      抓包工具

      谷哥浏览器

    1 :先抓一发注册包(直接发送的GET请求)

      看包内有什么参数(由于抓包时忘记了截图所以直接上抓包后的内容,各位可以亲自用f12看一看,都是大神,我就不补了)

      包内具体内容:如截图

      

      可以得知发包内主要参数就是mid参数,看长度可以得出是md5加密

    2 找mid从哪得出,

      1 search  mid内容之后,发现mid由cookie中拿到

        索性直接找前端写入cook的方法document.write 和 write

      2 竟然找到了下面这条.可以看出来,这是写入cook的核心算法,

        KgUser.Cookie.write(KgUser.KgMid.name, KgUser.Md5(n), KgUser.KgMid.days * 86400, "/", KgUser.GetDomain());

      明眼人都能看出来其中的意思

    3 找出算法了,,接下来,看其中的MD5传入的n 是什么值,通过下断点的方式,找到了

      下面是n 值的算法 ,生成的就是一串UUID的值带入上面的算法中

    function a () {
            function S4() {
                return (((1 + Math.random()) * 0x10000) | 0).toString(16).substring(1);
                // 随机生机数*65536取整,然后转换成16位.并取从第一位的后面的数字,结果为16进制
            }
            return (S4() + S4() + "-" + S4() + "-" + S4() + "-" + S4() + "-" + S4() + S4() + S4());
            // 进行字符拼接
        }
        
        返回内容:4a6ceb81-0aac-7b50-a1d4-f7890381de6e

    4  把这些东西看完了,然后测试了两次,突然发觉

      这个短信接口的逻辑还是相当简单,全都是固定值,

      1 唯独cook需要生成

      2 时间戳更新一下

      然后:  我特么,shit,这特么cookies随便怎么生成然后传入到短信接口都行啊!

        绕我这么一大圈,

    5 好的,后来看了一下,其实觉得酷狗这短信接口的逻辑还是蛮容易误导的,不过多调试了几次就发现问题的所在了

    6 总结:

      步骤其实也很简单

      1 生成随机数,(uuID)
      2 md5(加密) 生成mid和时间戳
      3 带上cookie访问
      4 带上cookie发送

  • 相关阅读:
    ROS tf 两个常用的函数
    C/C++ assert()函数用法总结
    drand48 等 随机数生成函数
    PF部分代码解读
    Error "Client wants topic A to have B, but our version has C. Dropping connection."
    launch 文件的写法
    Spring七大框架
    web.xml filter配置
    web.xml listener配置
    web.xml加载过程
  • 原文地址:https://www.cnblogs.com/Skyda/p/10428273.html
Copyright © 2020-2023  润新知