快来登录

获取优质的科技资讯内容

收藏热门的IT网络技术干货

拷贝下载Swift Demo源代码

订阅梳理好了的知识点专辑

15abf0e3a16071d78edcb4dae5164744.jpg (29.94 KB, 下载次数: 1)

2019-11-22 13:57 上传

aHR0cHM6Ly9mZW5iaS5jb20vcGFnZS9ob21l

参数加密的逻辑分析

先抓包看看这次分析的参数【图1-1】

16fa306d13e4542e751d7bcbe69b8325.jpg (52.49 KB, 下载次数: 0)

2019-11-22 13:57 上传

这个参数的值看着像Base64 ,我们不急着下结论,先搜索参数名看看。

有读者朋友纠结于搜索password = or password:这样需要搜索两遍是不是浪费时间了,不如直接搜索password来的方便快捷。

咸鱼之所以这样搜索是出于自己的习惯,定位加密位置的方法有很多大家有兴趣可以多尝试不要局限于搜索参数,例如:Js Hook,XHR 断点等等,怎么舒服怎么来就好。

经过搜索参数名password:在一个文件中定位到 3 处疑似加密的位置。【图1-2】

c55cc3e01fb837ead1cea832fea22a43.jpg (58.27 KB, 下载次数: 0)

2019-11-22 13:57 上传

图1-2这里有两种方法判断加密位置:

给所有搜索到的结果打上断点,再次刷新看看进入到哪个断点当中

阅读上下文,分析大概的代码逻辑

我们用第一种试试,打上断点重新发起请求,可以看到成功断上了。【图1-3】

这里的this.password是测试的密码,我们需要分析的就是这个this.encrypt的逻辑是什么样的。

55dcec9be825e41505cfdbd50c23067e.jpg (38.68 KB, 下载次数: 0)

2019-11-22 13:57 上传

图1-3我们进入到this.encrypt这个函数中,发现有熟悉的 RSA 加密标志this.publicKey【图1-4】

43bba153282174a6fdc2cb8f0b7f07d5.jpg (39.92 KB, 下载次数: 0)

2019-11-22 13:57 上传

图1-4在文件中再搜索一次publicKey,能够看到文件中已经声明了这个变量【图1-5】

bdee914ed680b2f8c0589733d82e7bc8.jpg (35.37 KB, 下载次数: 0)

2019-11-22 13:57 上传

图1-5继续进入到函数内部查看逻辑,发现进入的就是加密逻辑的文件了。【图1-6】

2c5a85c2f06abb5c2b7e585a3551a457.jpg (27.84 KB, 下载次数: 0)

2019-11-22 13:57 上传

图1-6这一整个流程分析下来,可以发现前面的传参部分,在Python调用中我们完全可以跳过,只要给【图1-6】中的Js加密逻辑传入publicKey与明文密码就可以实现这个网站的密码加密逻辑了,既然这么简单,我们就动手试试。

参数加密的代码实现

接上面的分析,我们直接复制了【图1-6】截图所示的全部代码。

接着在编辑器中加上一些我们自己的逻辑类似这样【图2-1】。

1f7a59e69fb1f09571e9deb37c30d815.jpg (14.18 KB, 下载次数: 0)

2019-11-22 13:57 上传

图2-1注:前939行都是复制的 Js 文件代码

试着运行一下,看看报错。

运行的报错提示,window is undefine【图2-2】,遇到这种情况我们可以试试在代码上加上window的声明。

4ba546eed42d3d9fafe5ea6faba66af4.jpg (55.84 KB, 下载次数: 0)

2019-11-22 13:57 上传

图2-2var window = {}

再次运行看看,这里再次提示{} is not a function,【图2-3】到这里新手朋友有点慌了,不知道怎么处理。

2f2f3a550f9087be76a141bc69fcdabf.jpg (49.79 KB, 下载次数: 0)

2019-11-22 13:57 上传

图2-3比较方便的处理方式是直接在(function(av) {前加上!,就是这么简单。

具体用法,这里套用一下百度:

使用括号包裹定义函数体,解析器将会以函数表达式的方式去调用定义函数。也就是说,任何能将函数变成一个函数表达式的作法,都可以使解析器正确的调用定义函数。而 ! 就是其中一个,而 + - || 都有这样的功能。继续调试,这次提示变成了navigator is not defined【图2-4】

f7601bd113307458e85c07c82426d1c4.jpg (53.12 KB, 下载次数: 0)

2019-11-22 13:57 上传

图2-4有了上次的经验,我们在代码里加入声明navigator。

var navigator = {}

再次运行就得到加密后的结果咯~【图2-5】

3822864b616402e1ea755b4c29dcfa21.jpg (51.16 KB, 下载次数: 0)

2019-11-22 13:57 上传

图2-5总结

这次的加密是比较简单的 RSA 加密,使用文件中包含的公钥对密码的值进行加密,且Js代码没有进过混淆,适合新手练手增加手感。

fcfa419fbcd6c74be2311589348e07e9.jpg (64.71 KB, 下载次数: 0)

2019-11-22 13:57 上传

游客,本帖隐藏的内容需要积分高于 10240000 才可浏览,您当前积分为 0

登录才可查看全文

LOGIN

好好学习Swift,天天想上Swifthumb

登录

SIGN UP

敏捷大拇指,一个敢保留真话的IT精英社区

注册

LOGIN

登录

SIGN UP

注册

都看到这里了,就把这篇资料推荐给您的好朋友吧,让他们也感受一下。

回帖是一种美德,也是对楼主发帖的尊重和支持。您的赞赏是我前进的方向。

*声明:敏捷大拇指是全球最大的Swift开发者社区、苹果粉丝家园、智能移动门户,所载内容仅限于传递更多最新信息,并不意味赞同其观点或证实其描述;内容仅供参考,并非绝对正确的建议。本站不对上述信息的真实性、合法性、完整性做出保证;转载请注明来源并加上本站链接,敏捷大拇指将保留所有法律权益。如有疑问或建议,邮件至marketing@swifthumb.com。

*联系:微信公众平台:“swifthumb” / 腾讯微博:@swifthumb / 新浪微博:@swifthumb / 官方QQ一群:343549891(满) / 官方QQ二群:245285613 ,需要报上用户名才会被同意进群,请先注册敏捷大拇指。

python爬虫加密空间_523 Origin Unreachable相关推荐

  1. python爬虫加密空间_Python爬虫进阶必备 | XX同城加密分析

    目标网站: aHR0cHM6Ly9wYXNzcG9ydC41OC5jb20vbG9naW4vP3BhdGg9aHR0cHMlM0EvL2Z6LjU4LmNvbS8mUEdUSUQ9MGQxMDAwMD ...

  2. Python爬虫加密

    加密 在开发爬虫的过程中,我们经常遇到的一种反爬措施是数据加密.常见的加密算法可以分为三类:对称加密算法,非对称加密算法和Hash算法(事实上不是加密算法而是摘要算法) 一.对称加密 1.定义 采用单 ...

  3. Python爬虫教程-16-破解js加密实例(有道在线翻译)

    python爬虫教程-16-破解js加密实例(有道在线翻译) 在爬虫爬取网站的时候,经常遇到一些反爬虫技术,比如: 加cookie,身份验证UserAgent 图形验证,还有很难破解的滑动验证 js签 ...

  4. python爬虫反爬对抗_python爬虫反反爬,你几乎可以横扫大部分 css 字体加密的网站...

    你已经知道了对方是 如何自定义字体加密的了 你要想去反反爬 你就要先站在对方的角度去思考问题 有句话这么说来着 "知己知彼,才能那啥" 那么对于像猫眼电影.大众点评等等 那样的 c ...

  5. Python爬虫:爬取instagram,破解js加密参数

    Python爬虫:爬取instagram,破解js加密参数 instagram 是国外非常流行的一款社交网站,类似的还有像facebook.twitter,这些社交网站对于掌握时事热点.电商数据来源和 ...

  6. python爬虫应用实例_Python爬虫进阶必备 | 一个典型的 AES 加密在爬虫中的应用案例...

    一个典型的AES案例 AES 的案例之前有推荐大家关于 AES 加密的案例文章,不少朋友问我加密解决了有什么用? 最大的用途当然就是不用模拟请求,大大提高了爬取效率. 可能之前举例都是使用的 AES ...

  7. python爬虫反爬 css 知乎 专栏_python爬虫反反爬 | 像猫眼电影、大众点评等自定义 css 加密字体怎么破?...

    我们上次说了如何建立反反爬 当时还新建一个简单的帅b网页 具体可以戳以下链接 现在你已经知道了对方是 如何自定义字体加密的了 你要想去反反爬 你就要先站在对方的角度去思考问题 有句话这么说来着 &qu ...

  8. python爬虫--破解js加密:kankan登录破解

    这一系列文章旨在解决python 爬虫过程中遇到的各种反爬,从简单到复制,是个进阶的过程.如果对你有帮助,欢迎关注. 今天要破解的网站是天天看看(http://www.kankan.com/)的登录, ...

  9. python爬虫文字加密_Python爬虫进阶必备 | X薯中文网加密分析

    此次来分析某个小说网站. aHR0cHM6Ly9nLmhvbmdzaHUuY29tL2NvbnRlbnQvOTM0MTYvMTM4Nzc5MTIuaHRtbA==node 分析请求 先来看看页面的请求 ...

最新文章

  1. ASP.NET-FineUI开发实践-14
  2. 利用python卷积神经网络手写数字识别_Keras深度学习:卷积神经网络手写数字识别...
  3. Android UI:XML文件配置按钮等背景方案
  4. 计算机学院去微软的大牛的面试经验
  5. mysql 启动出错问题排查
  6. 使用Python连接数据库的脚本
  7. Python网络编程(1)-socket
  8. oracle rdbms 占内存_027、Oracle数据库
  9. Mac OS X安装 ffmpeg
  10. 统计1到2021中6的个数
  11. 向数据库中存取图片(BITMAP)
  12. 北京地区广播电台频率
  13. NMOS和PMOS详解以及电路设计
  14. 机器学习与量化交易项目班 [从零搭建自动交易系统]
  15. 学习笔记(六): Regularization for Simplicity
  16. hdu 4826 Labyrinth
  17. opengl随机地形生成
  18. 阿里P8架构师深度概述分布式架构
  19. 一位零基础转行Python的非常要好的朋友
  20. 常见的攻击方式以及防护策略

热门文章

  1. 签注有效日期少了半年
  2. c语言终止 fget stdin 输入流
  3. 浅谈滚柱导轨的几个特点
  4. (迎夏)作者傲娇小主
  5. Python制作木马
  6. 一、Echarts图表之X轴(xAxios)与Y轴(yAxios)配置项大全
  7. 如何开启python编程?
  8. python 数据结构与算法——排序
  9. SpringCloud——Redis的使用
  10. K8S 服务依赖启动顺序