前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >(新文章)今日头条_signature以及抖音_signature分析。

(新文章)今日头条_signature以及抖音_signature分析。

作者头像
懒py夏洛
发布2022-06-02 08:26:31
2.8K0
发布2022-06-02 08:26:31
举报
文章被收录于专栏:python爬虫与js逆向
该文章主要提供交流学习使用,请勿利用其进行不当行为!

如本篇文章侵犯了贵公司的隐私,请联系我立刻删除!

如因滥用解密技术而产生的风险与本人无关!

为什么要写这篇文章呢。

有两个事情。

一。我不在免费分享任何相关网站的js破解代码。

二。以后的文章,根据网站破解的难度来决定文章是否付费,以及付费多少。

这个放心,就算是瑞数,也不会超过三四十的。我懂大家都想白嫖的意思。

为什么文章要收费呢。。

额,怎么说呢。。

本来是一直想免费开源的。

后来,收费了,不过基本上都是大家给多少,我都会把代码给你。

嗯。。本来也想搞一个星球。

我看别人星球,加入都是几百元的,,而且里面也是文章。大差不差。

我这几元钱而已,我寻思不贵吧。。

还有人说我是骗子。。就因为太便宜了。

就几元钱。

哎,,因为免费分享这事,,我发的贴子,都被一些专门卖js破解代码的人,恶意举报,强制删帖了。。

不多说了,就是一些闲话。

还有,我在csdn发的今日头条,。

百度搜一下,,第一个就是我的。哈哈哈哈哈哈哈!

还有评论下的这个人说的话,

一个多月了。

我才看到。

挺感动的。

不bb了。

嗯,文章以后大部分都会收费,

因为简单的也没人看,也没有人看。

嗯,发现有意思的网站,我就会写文章。大家也可以给我推网站撒!!

谢谢大家的支持撒!!

以热点为例;

这里就不下xhr断点了。。

直接全局搜_signature既可。

f8直到url为"/toutiao/api/pc/feed/"

然后进入函数内部。

大致就是,获取url,然后加密url。

我们看

window.byted_acrawler.sign ? window.byted_acrawler.sign(o) : ""

三目运算法。

我们看下byted_acrawler这个函数,

一个加密,

一个入口。

一个为true。

看到函数都绑定在window上。然后sign加密。

我们先找一下byted_acrawler。这个是在哪里。

全局搜一下。

在html里面找到他。

这里,这样理解。

网页先加载的html。这个没问题吧,

然后,script里面的js开始执行。

那大家注意到图片上byted_acrawler上面的script标签里面的额js文件没。

Function

js文件执行后,

执行下面的入口函数。

这样大家懂他们是怎么建立连接了吧。

window是全局的。

接着我们看sign函数。

直接进入函数内部。

是这样子。

我们这里先把代码拷贝下来,全部的。

嗯,建议用nodejs。

修改成大概这样子。

以下是报错信息。

window is not defined;

修改为: window = global;

Cannot read property 'body' of undefined:

这个是 document里面的。

最经典的报错。

Cannot read property 'x' of undefined

缺少函数,具体缺少什么,可根据调试来添加。

Cannot read property 'href' of undefined

是 location.href

这个很多人也摸不到头脑。

Cannot read property 'length' of undefined

具体原因是取值的时候,取到的是null。。。

具体调试可得知。

Cannot read property 'userAgent' of undefined

这个估计大家很常见。

navigtor.userAgent

补全上面的东西后,会发现。

其实这个结果是可以用的。

别看短,

但是它能用就行了。

Cannot read property 'width' of undefined

这个是屏幕的宽高。

添加完后,就不会报错了。

拿去用得了,是吧。何必接着搞下去呢,哈哈哈哈

这里就偷个懒。

我们打印一下。

发现这里还有个cookie。

我们加上cookie;

运行。

这下心满意足了吧。

其实还验证了很多东西。

没必要深入了。

拿去用吧,骚年们。

---------------------分割线---------------------

接下来。,

抖音的

_signature

讲解。。。

依然全局搜索。signature

然后下上断点。

这里上面已经说过了,

不多解释了。

快上车。

全部复制。

这里有两种写法, 甚至更多。

第一种。。套__M函数,费事

第二种,具体看你怎么扣。

然后运行。。

e is not defined

代码语言:javascript
复制
_bytedAcrawler is not defined

修改为

代码语言:javascript
复制
e = _bytedAcrawler = {};

Cannot read property 'userAgent' of undefined

navigtor.userAgent

然后发现,结果出来了。。

然后验证来验证去,都是错的。

结果一直不是固定的。

因为try掉。

根据报错信息,添加document。

还有canvas绘画。。

代码语言:javascript
复制
document = {

    createElement:function () {
        return {
            getContext:function getContext() {
                return {
                    fillRect: function fillRect() {},
                    fill: function fill() {},
                    stroke: function () {},
                    fillText: function () {},
                    arc: function () {},
                };
            },
            toDataURL:function toDataURL() {
                return  "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASwAAACWCAYAAABkW7XSAAAEYklEQVR4Xu3UAQkAAAwCwdm/9HI83BLIOdw5AgQIRAQWySkmAQIEzmB5AgIEMgIGK1OVoAQIGCw/QIBARsBgZaoSlAABg+UHCBDICBisTFWCEiBgsPwAAQIZAYOVqUpQAgQMlh8gQCAjYLAyVQlKgIDB8gMECGQEDFamKkEJEDBYfoAAgYyAwcpUJSgBAgbLDxAgkBEwWJmqBCVAwGD5AQIEMgIGK1OVoAQIGCw/QIBARsBgZaoSlAABg+UHCBDICBisTFWCEiBgsPwAAQIZAYOVqUpQAgQMlh8gQCAjYLAyVQlKgIDB8gMECGQEDFamKkEJEDBYfoAAgYyAwcpUJSgBAgbLDxAgkBEwWJmqBCVAwGD5AQIEMgIGK1OVoAQIGCw/QIBARsBgZaoSlAABg+UHCBDICBisTFWCEiBgsPwAAQIZAYOVqUpQAgQMlh8gQCAjYLAyVQlKgIDB8gMECGQEDFamKkEJEDBYfoAAgYyAwcpUJSgBAgbLDxAgkBEwWJmqBCVAwGD5AQIEMgIGK1OVoAQIGCw/QIBARsBgZaoSlAABg+UHCBDICBisTFWCEiBgsPwAAQIZAYOVqUpQAgQMlh8gQCAjYLAyVQlKgIDB8gMECGQEDFamKkEJEDBYfoAAgYyAwcpUJSgBAgbLDxAgkBEwWJmqBCVAwGD5AQIEMgIGK1OVoAQIGCw/QIBARsBgZaoSlAABg+UHCBDICBisTFWCEiBgsPwAAQIZAYOVqUpQAgQMlh8gQCAjYLAyVQlKgIDB8gMECGQEDFamKkEJEDBYfoAAgYyAwcpUJSgBAgbLDxAgkBEwWJmqBCVAwGD5AQIEMgIGK1OVoAQIGCw/QIBARsBgZaoSlAABg+UHCBDICBisTFWCEiBgsPwAAQIZAYOVqUpQAgQMlh8gQCAjYLAyVQlKgIDB8gMECGQEDFamKkEJEDBYfoAAgYyAwcpUJSgBAgbLDxAgkBEwWJmqBCVAwGD5AQIEMgIGK1OVoAQIGCw/QIBARsBgZaoSlAABg+UHCBDICBisTFWCEiBgsPwAAQIZAYOVqUpQAgQMlh8gQCAjYLAyVQlKgIDB8gMECGQEDFamKkEJEDBYfoAAgYyAwcpUJSgBAgbLDxAgkBEwWJmqBCVAwGD5AQIEMgIGK1OVoAQIGCw/QIBARsBgZaoSlAABg+UHCBDICBisTFWCEiBgsPwAAQIZAYOVqUpQAgQMlh8gQCAjYLAyVQlKgIDB8gMECGQEDFamKkEJEDBYfoAAgYyAwcpUJSgBAgbLDxAgkBEwWJmqBCVAwGD5AQIEMgIGK1OVoAQIGCw/QIBARsBgZaoSlAABg+UHCBDICBisTFWCEiBgsPwAAQIZAYOVqUpQAgQMlh8gQCAjYLAyVQlKgIDB8gMECGQEDFamKkEJEDBYfoAAgYyAwcpUJSgBAgbLDxAgkBEwWJmqBCVAwGD5AQIEMgIGK1OVoAQIGCw/QIBARsBgZaoSlACBB1YxAJfjJb2jAAAAAElFTkSuQmCC"

            }
        };
    },
};

还可以自行完善。

把最重要的tac给加上,在HTML里面。

然后运行。

这里说一下,浏览器的原因,可能造成生成生成的signature和浏览器生成的字符有四五个不一样的。这个可以过滤。。

也可正常的访问数据,

只要按照他的加密规则生成就行。

那么今天的分享就到这里了、、

谢谢大家的阅读。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-05-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 python爬虫与js逆向 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • _signature
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档