重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
本篇文章给大家分享的是有关如何进行signature分析。,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
十多年专注成都网站制作,企业网站制作,个人网站制作服务,为大家分享网站制作知识、方案,网站设计流程、步骤,成功服务上千家企业。为您提供网站建设,网站制作,网页设计及定制高端网站建设服务,专注于企业网站制作,高端网页制作,对小搅拌车等多个行业,拥有丰富的网站设计经验。
打开今日头条。
以热点为例;
这里就不下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
然后下上断点。
这里上面已经说过了,
不多解释了。
快上车。
全部复制。
这里有两种写法, 甚至更多。
第一种。。套__M函数,费事
第二种,具体看你怎么扣。
然后运行。。
e is not defined
_bytedAcrawler is not defined
修改为
e = _bytedAcrawler = {};
Cannot read property 'userAgent' of undefined
navigtor.userAgent
然后发现,结果出来了。。
然后验证来验证去,都是错的。
结果一直不是固定的。
因为try掉。
根据报错信息,添加document。
还有canvas绘画。。
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和浏览器生成的字符有四五个不一样的。这个可以过滤。。
也可正常的访问数据,
只要按照他的加密规则生成就行。
以上就是如何进行signature分析。,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注创新互联行业资讯频道。