大厂常见 Cookie 加密方式详解

目录

《大厂常见 Cookie 加密方式详解》

一、Hook 定位代码及作用

二、Cookie 的概念

三、二次加载及雪球网站示例

四、以 boss 直聘和京东为例

五、通过 hook 方式分析页面请求

六、更高级的 Cookie 嵌套


在本文中,我们将一起探讨大厂常见的 Cookie 加密方式。以下是详细内容:

一、Hook 定位代码及作用

  1. 首先,我们新建一个片段,并将以下这串关于 hook 的代码复制进去。这段代码是一个工具代码,每个网站都可以尝试使用,但需要注意的是,有些网站没有涉及到 cookie 加密,此时使用该代码可能无效。

以下是一段示例的 hook 定位代码,仅供参考,实际应用中可能需要根据具体情况进行调整:

(function() {
    // 保存原始的 setItem 方法
    const originalSetItem = document.cookie.__lookupSetter__('setItem');

    // 重写 setItem 方法
    document.cookie.__defineSetter__('setItem', function(key, value) {
        if (key.includes('V') || key.includes('ACWTC') || key.includes('VI')) {
            debugger;
        }
        return originalSetItem.call(this, key, value);
    });
})();

这段代码通过重写document.cookiesetItem方法,当设置的 cookie 键包含特定的关键字(如 'V'、'ACWTC'、'VI')时,触发调试器暂停。你可以根据实际情况调整关键字和具体的处理逻辑。

  1. 这个代码的作用是能够直接捕获到当页面在进行 cookie 操作,尤其是进行设置(sit)操作的时候,会给我们进行 debug(暂停)。例如,当我们运行这个代码后,在页面当中点击搜索(如搜索 5G),页面就会暂停。此时可以看到在浏览器中开始给某个值(如 V 值)进行赋值,也就是在进行设置 cookie 的操作。

二、Cookie 的概念

Cookie 是页面当中浏览器里面所看到的用户信息,一般是浏览器里面用户的信息。

三、二次加载及雪球网站示例

  1. 二次加载是指同一个页面做两次请求。以雪球网站为例,上面的网页地址会对其静态接口页面地址发送两次请求。
  2. 第一次请求所得到的是一串 JS 代码,并且会从服务器返回一个 cookie。第二次请求会携带第一次请求的 JS 代码生成的 cookie 和第一次所获取到的 cookie。

四、以 boss 直聘和京东为例

  1. Boss 直聘里面有指纹,处理起来相对简单。
  2. 京东不是 cookie 问题,而是 H5ST 问题。

五、通过 hook 方式分析页面请求

  1. 我们可以把 cookie 全部删掉,勾选保留日志,然后进行刷新,刷新后会有一个 debug。
  2. 以某个页面为例,这里可以看到做了两次接口的请求,同一个页面做两次请求。第一次请求可以携带 cookie 也可以不携带 cookie,主要的核心是会响应一个 cookie,这个 cookie 是从服务器返回的,并且在某个地方会有个勾。同时,第一次请求还会返回一段 JS 代码,但可能会被覆盖掉导致看不到。第二次请求能够正常的请求得到这个页面,但需要携带两个 cookie,一个是 ACWTC,它是刚刚第一次接口请求所响应的服务器返回到其次的;另一个是 VI,这个 VI 是由第一次所返回的 JS 代码来生成的。

六、更高级的 Cookie 嵌套

目前市场比较主流的还有更高级的 cookie 存的嵌套方式,即有很多的 cookie 来做成嵌套。

通过以上步骤,我们对大厂常见的 cookie 加密方式有了更深入的了解。在实际应用中,可以根据具体情况选择合适的方法来分析和处理 cookie 相关问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值