写点什么

手把手带你入门加密算法的 Python 实现

发布于: 2020 年 12 月 30 日

摘要:一个简单的 md5 加密算法,带你解开所谓“加密”过程的神秘面纱。

一个简单的 md5 加密算法,非常适合新手练习

链接:> aHR0cDovL3d3dy5jaHVjaHVqaWUuY29tL2luZGV4Lmh0bWw=

0x01. 分析请求

通过输入账号密码抓包查看加密字段



0x02. 定位加密位置

直接通过检索<font color="red">`password:`</font>



0x03. 分析加密

一个一个排查,最终我们找到了加密的地方,md5 加密,打上断点进行调试,重新点击登录,停在了我们断点的地方



然后我们继续追进去,代码如下



其中传入了三个参数,我们打断点调试一下,其中 string 是我们的密码,key 和 raw 都是 undefined,我们把它们两个都等于空字符串就可以了



0x04. 测试结果

接下来我们把这个文件的代码全部抠出来,然后进行重写,就可以了



**一个 rsa 加密练习**

链接:

> JXU4RkQ5JXU5MUNDJXU2NjJGJXU4OTgxJXU1MkEwJXU1QkM2JXU3Njg0JXU1MTg1JXU1QkI5JXVGRjAxaHR0cHMlM0EvL29hdXRoLmQuY24vYXV0aC9nb0xvZ2luLmh0bWw=

0x01 分析请求

通过输入账号密码抓包查看加密字段,很明显,只有密码被加密了,接下来我们全局搜索 pwd



0x02. 定位加密位置

我们直接全局搜索 pwd,会发现搜到的东西很多,



我们换个思路,直接搜索 pwd = ,会发现只有一个,然后我们点进去,打上断点



0x03. 分析加密

点击登录,会停在我们打断上的地方,可以看到, rsa 函数对我们的密码进行了处理



我们跟进 rsa 看一下



很明显的看到,就是一个 rsa 加密,其中 arg 是我们输入的密码,接下来我们使用 先把这一段代码扣下来(进行一些修改,使用 node 进行调试输出,如下



运行发现缺少 setMaxDigits,然后我们全局搜索 setMaxDigits,然后跟进去,把其中的代码全部复制出来



我们再运行,发现缺少 RSAKeyPair,然后我们全局搜索它,把其中的代码全部复制出来



然后我们一次一次调试,缺什么补什么,直到不再缺少函数或者参数

0x04 测试结果

可以看到,我们已经拿到加密后的密码



以上就是今天的内容了,本文仅供学习交流使用,如有任何利益问题请联系笔者删除,祝大家学习愉快

代码地址:https://github.com/Alex-blip/JsSpider

本文分享自华为云社区《Python 爬虫进阶 | 某某街 | 某乐网 加密算法分析》,原文作者:Samuel 。

 

点击关注,第一时间了解华为云新鲜技术~


发布于: 2020 年 12 月 30 日阅读数: 30
用户头像

提供全面深入的云计算技术干货 2020.07.14 加入

华为云开发者社区,提供全面深入的云计算前景分析、丰富的技术干货、程序样例,分享华为云前沿资讯动态,方便开发者快速成长与发展,欢迎提问、互动,多方位了解云计算! 传送门:https://bbs.huaweicloud.com/

评论

发布
暂无评论
手把手带你入门加密算法的Python实现