摘要:友情提示:在博客园更新比较慢,有兴趣的关注知识图谱与大数据公众号吧。本次研究虎牙登录密码加密JS代码,难度不大,依然建议各位读者参考文章独自完成,实在抠不出来再参考这里的完整代码:从今天开始种树

准备

打开网站虎牙,点击登录标签,跳到登录界面:

按下F12,输入错误的账号密码,查看发送的网络请求,从名字就能确定是哪个请求,看下图:



看一下都提交了哪些参数,查看Formdata,可以看粗来password已经被加密了:

好了,那就通过调用栈进去直接查找password关键字,查看调用栈:



依然通过名字来判断点到哪个js文件。进去以后查找password,我找的适合password一共有13处,慢慢翻,翻到酷似加密的地方,打上断点:

调试阶段

接下来激活断点(即输入账号密码,点击登录按钮)就跳到下面的环节:

点击下一步就跳到下面这里:



一步一步运行,上下拉一下看看,SHA1代码并不多,直接抠出来(能找到结尾的地方的吧):

      SHA1: prototype = {
hexEncode: function(e) {
return this.toHex(this.core(this.toArray(e)))
},
toArray: function(e) {
for (var t = (e.length + 8 >> 6) + 1, o = new Array(16 * t), n = 0; 16 * t > n; n++)
o[n] = 0;
for (n = 0; n < e.length; n++)
o[n >> 2] |= e.charCodeAt(n) << 24 - 8 * (3 & n);
return o[n >> 2] |= 128 << 24 - 8 * (3 & n),
o[16 * t - 1] = 8 * e.length,
o
},
toHex: function(e) {
for (var t = "0123456789abcdef", o = "", n = 0; n < 4 * e.length; n++)
o += t.charAt(e[n >> 2] >> 8 * (3 - n % 4) + 4 & 15) + t.charAt(e[n >> 2] >> 8 * (3 - n % 4) & 15);
return o
},
core: function(e) {
for (var t = e, o = new Array(80), n = 1732584193, a = -271733879, s = -1732584194, i = 271733878, r = -1009589776, c = 0; c < t.length; c += 16) {
for (var d = n, l = a, u = s, p = i, m = r, h = 0; 80 > h; h++) {
o[h] = 16 > h ? t[c + h] : this.rol(o[h - 3] ^ o[h - 8] ^ o[h - 14] ^ o[h - 16], 1);
var g = this.add(this.add(this.rol(n, 5), this.ft(h, a, s, i)), this.add(this.add(r, o[h]), this.kt(h)));
r = i,
i = s,
s = this.rol(a, 30),
a = n,
n = g
}
n = this.add(n, d),
a = this.add(a, l),
s = this.add(s, u),
i = this.add(i, p),
r = this.add(r, m)
}
return new Array(n,a,s,i,r)
},
...
篇幅有限,省略了
...
}

python运行

老掉牙的代码来了

import execjs
with open('..//js//huya.js', encoding='utf-8') as f:
huya= f.read()
js = execjs.compile(huya)
logid = js.call('hexEncode', "123456")
print(logid)

运行结果:



抠成功。

结束

由于代码放在一篇文章的话太多,所以完整代码放在了这里从今天开始种树,更多内容关注下面的公众号,当然不关注也无所谓。

兄弟们,我打算抠100个网站JS加密代码召唤,一个也跑不掉,这次轮到小虎牙的更多相关文章

  1. 怎样把网站js文件合并成一个?几种方法可以实现

    我们在建网站时经常会用js特效代码以使页面更美观,比如js幻灯片代码.js下拉菜单等,但是网页特效一多,如果js文件没有合并的话会降低网站的性能,这时我们就要考虑合并js文件了,ytkah总结了以下几 ...

  2. www.sojson.com网站高级JS加密破解

    在网上冲浪,看到了一个网站的JS加密,下面有一句话: 乍一看这句话吓一跳,我去这么猛,然后就很有兴趣想看看究竟是怎样一种加密算法. 对于破解JS加密算法的时候,都是先输入一个简单的语句然后分析加密后语 ...

  3. jQuery防京东浮动网站楼层导航代码

    jQuery防京东浮动网站楼层导航代码   <!DOCTYPE html > <html xmlns="http://www.w3.org/1999/xhtml" ...

  4. 【前端模板之路】一、重构的兄弟说:我才不想看你的代码!把HTML给我交出来!

    写在前面 随着前端领域的发展和社会化分工的需要,继前端攻城湿之后,又一重要岗位横空出世——重构攻城湿!所谓的重构攻城湿,他们的一大特点之一,就是精通CSS配置文件的编写...前端攻城湿跟重构攻城湿是一 ...

  5. (转)【前端模板之路】一、重构的兄弟说:我才不想看你的代码!把HTML给我交出来!

    原文地址:http://www.cnblogs.com/chyingp/archive/2013/06/30/front-end-tmplate-start.html 写在前面 随着前端领域的发展和社 ...

  6. Rhino+envjs-1.2.js 在java运行网站js 工具类

    java爬虫遇到个页面加密的东西,找了些资料学习学习 做了个java运行js的工具类,希望对大家有用,其中用到client(获取js)可以自行换成自己的client.主要是用了 Rhino就是Java ...

  7. 全球多个 TOP 网站藏挖矿代码,5 亿 PC 沦为矿工

    据ZDNet报道,现在很多网站都开始在网页脚本中藏匿挖矿代码,在用户访问时偷算力用于挖矿.来自Adguard的报告称也证实,也有5亿台电脑中招. 最新最热的IT技术付费社区 IT帮 itbang.me ...

  8. 网站JS控制的QQ悬浮

    这是一个网站JS控制的QQ悬浮客服:代码1document.writeln("<div id=\"feedback\"><div id=\"f ...

  9. 电商网站jQuery放大镜代码

    分享一款电商网站jQuery放大镜代码.这是一款基于jquery.elevatezoom插件实现的类似淘宝放大镜代码,提供40多种参数,可自由配置多种效果,适合电商或图片类网站使用.效果图如下: 在线 ...

随机推荐

  1. Python List remove()方法

    描述 remove() 函数用于移除列表中某个值的第一个匹配项.高佣联盟 www.cgewang.com 语法 remove()方法语法: list.remove(obj) 参数 obj -- 列表中 ...

  2. PHP imageantialias - 是否使用抗锯齿(antialias)功能

    imageantialias — 是否使用抗锯齿(antialias)功能.高佣联盟 www.cgewang.com 语法 bool imageantialias ( resource $image ...

  3. ElasticSearch实战系列六: Logstash快速入门和实战

    前言 本文主要介绍的是ELK日志系统中的Logstash快速入门和实战 ELK介绍 ELK是三个开源软件的缩写,分别表示:Elasticsearch , Logstash, Kibana , 它们都是 ...

  4. linux之DHCP服务端搭建 ( ip分配 四个阶段原理)

    DHCP服务 ip分配 四个阶段原理 1.DHCP服务目的 协议 作用 租约 原理四个阶段 动态主机配置协议(Dynamic Host Configuration Protocol,动态主机配置协议) ...

  5. 还在纠结学什么编程语言吗?Python可能会“教”你做人

    这几年为什么Python在中国就火起来了? Python这个东西国,大概是从2017年末开始,突然就火了起来的.此前,对于Python,乃至编程,绝大多数程度上都是专业人士的话题,在普通大众层面上起不 ...

  6. opencv图片缩放与镜像

    一个练习的代码,先对图片进行缩放,然后再做镜像: import cv2 import numpy as np img = cv2.imread("src.jpg", 1) cv2. ...

  7. 我还在生产玩 JDK7,JDK 15 却要来了!|新特性尝鲜

    自从 JDK9 之后,每年 3 月与 9 月 JDK 都会发布一个新的版本,而2020 年 9 月即将引来 JDK15. 恰巧 IDEA 每四五个月会升级一个较大的版本,每次升级之后都会支持最新版本 ...

  8. “随手记”开发记录day07

    今天完成了关于我们页面中的相关信息,由于之前没有做过这个东西,只想着用一个view解决 可是发现我们整的太简单了,还是太年轻,最后想出来要跟java代码一起解决这个问题, 效果

  9. SkyWalking APM8.1.0 搭建与项目集成使用

    SkyWalking介绍 SkyWalking是什么? SkyWalking是一个可观测性分析平台和应用性能管理系统,提供分布式跟踪.服务网格遥测分析.度量聚合和可视化一体化解决方案,并支持多种开发语 ...

  10. 攻防世界-web(进阶)-NaNNaNNaNNaN-Batman

    用winhex打开,发现是一个javascript代码.将文件重命名为html文件,用浏览器打开. 打开是一个输入框,输入任何东西都梅反应,尝试弹框输入也无果,继续查看代码. 查看代码,可以看到最开始 ...