博客
关于我
Python js逆向 爬取X天下数据,好好看,好好学
阅读量:634 次
发布时间:2019-03-14

本文共 956 字,大约阅读时间需要 3 分钟。

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。

之前讲过execjs这个库可以在python中运行js代码,这将极大的帮助我们解决逆向问题,找到加密位置不会重写怎么办、js代码太复杂怎么办,用execjs秒杀它。

本次的受害者

aHR0cHM6Ly9wYXNzcG9ydC5mYW5nLmNvbS8/YmFja3VybD1odHRwcyUzQSUyRiUyRmd6LmZhbmcuY29tJTJG

 

目录:

1、环境

2、分析网站

3、如何扣js代码

1、环境

Python3.7、execjs、requests

2、分析网站

通过输入错误密码进行抓包

 

pwd这个参数就是我们需要解决的

直接检索pwd:只有一个结果

 

 

一看就知道是这里负责登录的加密(做多了逆向你一看到encrypt这个单词就知道离目标不远了)在这打上断点,重新请求一次,查看参数都是什么。

打开Console面板输入参数就可以知道参数的内容

 

that.password.val()是密码,再检索key_to_encode

 

一看到RSA就知道没错了,刚好三个参数

 

3、如何扣js代码

既然加密的位置都找到了就直接扣代码吧,鼠标移到encryptedString上就可以跳到encryptedString方法所在的位置

 

直接复制到编辑器中运行

 

运行肯定会报错的,没关系报错缺什么找什么就好了

 

缺RSAKeyPair

 

复制到编辑器继续运行直到没有报错为止

 

这个网站的开发人员很贴心把加密所相关的所有方法都放到了一个文件下,从文件名大概就可以看出来,把这个文件的所有代码复制到编辑器运行,直接得出了结果。

 

以上文章来源于一只有想法的爬虫 ,作者 coder 谢公子

转载地址

https://mp.weixin.qq.com/s?src=11×tamp=1602485541&ver=2639&signature=0HgH*WhULD1cgJjty6TNPlV7sItNhtlpdEc9OW30io7Jk00ClMrOumxhDpdZ4tz*bJsoqGWYOzwn-ODp*PCBwaRrzzf6p4*NDfWif3wgtXvcHJFQHRvBliQKuQ-Ik8PD&new=1
你可能感兴趣的文章
Mysql5.7深入学习 1.MySQL 5.7 中的新增功能
查看>>
Webpack 之 basic chunk graph
查看>>
Mysql5.7版本单机版my.cnf配置文件
查看>>
mysql5.7的安装和Navicat的安装
查看>>
mysql5.7示例数据库_Linux MySQL5.7多实例数据库配置
查看>>
Mysql8 数据库安装及主从配置 | Spring Cloud 2
查看>>
mysql8 配置文件配置group 问题 sql语句group不能使用报错解决 mysql8.X版本的my.cnf配置文件 my.cnf文件 能够使用的my.cnf配置文件
查看>>
MySQL8.0.29启动报错Different lower_case_table_names settings for server (‘0‘) and data dictionary (‘1‘)
查看>>
MYSQL8.0以上忘记root密码
查看>>
Mysql8.0以上重置初始密码的方法
查看>>
mysql8.0新特性-自增变量的持久化
查看>>
Mysql8.0注意url变更写法
查看>>
Mysql8.0的特性
查看>>
MySQL8修改密码报错ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
查看>>
MySQL8修改密码的方法
查看>>
Mysql8在Centos上安装后忘记root密码如何重新设置
查看>>
Mysql8在Windows上离线安装时忘记root密码
查看>>
MySQL8找不到my.ini配置文件以及报sql_mode=only_full_group_by解决方案
查看>>
mysql8的安装与卸载
查看>>
MySQL8,体验不一样的安装方式!
查看>>