sojson记录

问题

在这里插入图片描述
点开之后网址是
xxx/104361/126481/20071232/802696445/2546656459042

前面值都一样, 找最后一个值怎么生成的

此版本为sojson.v6

思路

  • 猜想 可能是根据 “600d339e” 通过house方法加密生成的, 打断点看一下
  • 打开F12, 先去debugger, 一般的置空法什么的不管用
    在这里插入图片描述
    查看堆栈, 看debugger在哪个地方生成的, 把所在相关方法大胆删除, 如果你看过sojson官网就知道好多垃圾代码, 然后跑一下js试试
    在这里插入图片描述
    果然debugger没了
    这个错是layer未定义, 它是个web 弹层组件没大问题, 我们直接改成console.log
    运行没问题了 ,但是就是打印不出来内容
    在这里插入图片描述
    下断点也经过这里

可能有其他机制把console重写了
在这里插入图片描述
果然, 淦它(两种方法)

  1. 删除其他多余代码
  2. 用Object.freeze() ,将对象进行冻结

我这里用第一种方法是把多余代码全删了, 只剩下面这么多

在这里插入图片描述
浏览器上跑一下

在这里插入图片描述
就这, 出来了

调试

下面是放在本地环境的一些问题

错误一 :
ReferenceError: atob is not defined

btoa() : base64 编码
atob() : base64 解码

global.Buffer = global.Buffer || require('buffer').Buffer;

if (typeof atob === 'undefined') {
    global.atob = function (b64Encoded) {
        return Buffer.from(b64Encoded, 'base64').toString();
    };
}

// if (typeof btoa === 'undefined') {
//   global.btoa = function (str) {
//     return Buffer.from(str).toString('base64');
//   };
// }

错误二 :

URIError: URI malformed

因为url中包含% ,改成%25

//修改前
_0x2be9d5 = decodeURIComponent(_0xfd0ebb);

//修改后
mid = _0xfd0ebb.replace(/%/g,'%25')
_0x2be9d5 = decodeURIComponent(mid);

之后一直还有些未定义和乱码的错误, 我就索性把house方法全部还原了
所谓的加密就是些加法乘法 ==
而且跟最后一个参数 “600d339e” 一点关系没有
再见

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值