JS反向爬虫教学,MD5算法介绍。Python爬虫:重写某平台的js算法。

MD5简介

MD5简介

MD5算法一般指MD5。MD5消息摘要算法是一种广泛使用的加密散列函数,可以生成128位(16字节)的散列值,以确保完整和一致的信息传输。

这里我们以代码为例:某平台js算法被重写!

分析js源码

我们打开网站,输入信息,拿起包裹。

如您所见,用户名显示正确,而pwd是一串字母数字字符。

很容易知道这是md5。

那么我们如何得到这个清晰的文本呢?

JS逆向爬虫教学,MD5算法介绍。Python爬虫:对某平台js算法改写

1.源码里搜索参数pwd

JS逆向爬虫教学,MD5算法介绍。Python爬虫:对某平台js算法改写

在这里,我不想直接ctrl f,直接在图中的标记处搜索!

搜索后有很多内容!首先,你可以确定。css文件肯定不是,因为加密算法肯定在js文件里。让我们点击第二个,看一看:

JS逆向爬虫教学,MD5算法介绍。Python爬虫:对某平台js算法改写

2.js文件里定位搜索pwd

内容搜索直接控制

搜索后,我们看到有20个。

JS逆向爬虫教学,MD5算法介绍。Python爬虫:对某平台js算法改写

3.使用断点

20个pwd,首先第一个肯定不是。

第二个,在1183行,是一个函数,看起来是?

如果您有疑问,请单击向下箭头设置断点。

以此类推,只要有20个疑点,先破分。

JS逆向爬虫教学,MD5算法介绍。Python爬虫:对某平台js算法改写

一旦我们都准备好了,让我们再次点击登录。发现代码位于1883行。

基本上就是这样。

你可以把鼠标放在这个函数的源代码里,系统会提示‘123456’。

JS逆向爬虫教学,MD5算法介绍。Python爬虫:对某平台js算法改写

4.复制JS代码,使用调试工具

确定以上功能后,我们点击进入!

那么我们就在该点右上角的第三个位置(转到下一个函数调用)。

JS逆向爬虫教学,MD5算法介绍。Python爬虫:对某平台js算法改写

那样地

后我们选中return这段代码,就会看到‘123456’加密后的md5。

发现是和网站post提交的pwd是一样的。

那就肯定确定是这段js函数了

JS逆向爬虫教学,MD5算法介绍。Python爬虫:对某平台js算法改写

我们看到,这里的 n、e、t 等等参数都是未知的,那么我们需要复制大括号以上的所有代码。

粘贴到JS调试工具里,先点击格式化,再点击加载。

我们看到有个错误信息:n未定义

JS逆向爬虫教学,MD5算法介绍。Python爬虫:对某平台js算法改写

5.改写js代码

没有n,那么我们就在代码最上面定义一个n:

var n = {}

然后我们再点击加载就成功了~

成功后,我们可以把最下面的的这段函数n.exports改为getPwd.

并计算下这个表达式。可以看到计算后的结果是正确的!

JS逆向爬虫教学,MD5算法介绍。Python爬虫:对某平台js算法改写


Python执行js代码

js代码我们有了,我们如何在Python代码里执行呢?

1.环境安装

  • nodejs开发环境(自行安装)
  • pip install PyExecJs

2.复制刚才的js代码

创建wechat.js文件放在同目录,把刚才复制的js代码写进去

3.Python代码

#!/usr/bin/env python3# -*- coding: utf-8 -*-import execjs# 1.实例化一个node对象node = execjs.get()# 2.js源文件编译ctx = node.compile(open('./wechat.js', encoding='utf-8').read())# 3.执行js函数funcName = 'getPwd("{0}")'.format('123456')pwd = ctx.eval(funcName)print(pwd)

代码执行后,我们就看到了结果~

JS逆向爬虫教学,MD5算法介绍。Python爬虫:对某平台js算法改写

关注Python涛哥!学习更多Python知识!

JS逆向爬虫教学,MD5算法介绍。Python爬虫:对某平台js算法改写

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/50771.html

(0)

相关推荐

  • 冬季起居养生,秋冬季养生知识总结大全

    大家提到很多人会下意识地选择通过食物来进行补品,但是需要的时间和成本都比较大,而且保持健康的食物也太多了,但是每个人的饮食习惯和体质都有很大的不同,所以一味的做补品不一定能达到好的效果。其实,养生并不难。通过养成良好的习惯,我们可以减少很多身体疾病。虽然看起来是很简单的事情,但坚持下去可能并不容易。这就是为什么有些习惯看起来像是你在做,但实际上并不奏效。必须坚持养生,否则三天打鱼两天晒网不行。

    生活 2021年12月2日
  • 看漫画有利于阅读能力吗,激发幼儿阅读兴趣,培养幼儿阅读能力

    童年时期爱看漫画的人,长大以后往往会变成阅读能力较强的读者。国际教育成果评估协会曾组织来自32个国家的21万名儿童参加评阅读评估测试,结果,芬兰儿童的阅读分数最高,而芬兰的9岁儿童最普遍的休闲读物是什么呢?59%的芬兰儿童几乎每天都看一本漫画书,家长不一定要把漫画书推荐为孩子们的固定朗读读物,而是要借此让他们认识漫画书的格式,父母必须教育幼儿了解漫画书是如何工作的,漫画格的顺序,书中人物在思考还是在说话,以及星星问号和感叹号的意义。诺贝尔和平奖得主,南非图图大主教回忆童年时说:“我父亲卫理公会教派的一所小学的校长,他和当年所有的父亲一样极有威严,十分关注我们在学校里的表现,但有一点我非常感谢他,和传统教育原则相反,他允许我看漫画书,我想这便是我逐渐培养出对英语和阅读的喜好的原因。”如果父母希望用漫画书来挑战孩子的心智与词汇,建议父母让孩子读《丁丁历险记》。《丁丁历险记》已出版80多年,被译成80多种语言,售出3亿多册。阅读时,孩子一定会有独特的体验。《丁丁历险记》,每一册都用两年时间研究和绘制700张精细的插图,但是父母必须按顺序教会孩子阅读,孩子才能理解《丁丁历险记》,这是父母必须了解幼儿阅读丁丁历险记的关键因素。《丁丁历险记》每一册都包含8000个单词,最棒的一点就是这本漫画书能让孩子们在阅读的过程中完全意识不到自己正在读8000个单词。

    生活 2021年10月31日
  • 安卓改ios桌面美化风格(安卓桌面美化app)

    提起诺基亚,相信是很多人的青春回忆。在塞班和安卓的抉择上,诺基亚选择了前者。后来的事情大家也都知道了,即使是被微软收购、搭载 WP(Windows Phone)系统,诺基亚也无法挽回下滑的颓势,一代传奇就此落幕。

    科技 2021年12月17日
  • 标致4008 PHEV:解析1.6T 三擎豪华版,双电机加持爆发力强!

    插电混合版车型,在市场中越来越多。今天要跟大家来聊的是标致4008 PHEV,作为一款法系插电混合版车型,在市场中一直比较冷门,但并不由此就认定实力不足。今天主要跟大家解释的是1.6T PHEV 三擎豪华版,指导售价在25.97万,在国内卖不动的原因,是因为价格偏高,毕竟同价位可以选择一些豪华车型了,下面让我们来具体看看。

    科技 2021年11月11日
  • 82万住更好的房子,品牌好,品质好,物业好,密度低。

    文章长度:0太短了,请勿浪费资源

    科技 2021年10月22日