python写一个md5解密器示例

yipeiwu_com6年前Python基础

前言:

md5解密,百度了一下发现教程不是很多也不详细。

这个图都没一张。。。

0x01

windows环境,kali也可以啊

burpsuite

requests模块

bs4模块

0x02:

设置好代理

开启burpsuite

(我这是新版的burp)

这代表设置好了。

然后开启抓包

然后,顺便输入个MD5点解密

然后我们可以在burp上看到抓取的包

丛图中我们可以看到数据是被url加密了的。我们找个网站进行url解密

解密之后

然后我们将其数据转换为字典的模式

然后创建一个测试脚本看看能不能成功访问

(200会返回代码,500返回报错)

我们可以看到请求成功了,

我们接下来去找解密出来的md5

发现其在em标签,上bs4模块

然后我们就可以看到过滤好的解密内容与md5

然后我们写一个命令参数的脚本

import requests
from bs4 import BeautifulSoup
import optparse
def main():
  usage="[-m md5 decryption]"
  parser=optparse.OptionParser(usage)
  parser.add_option('-m',dest='md5',help='md5 decryption')
  (options,args)=parser.parse_args()
  if options.md5:
    md5=options.md5
    Md5(md5)
  else:
    parser.print_help()
    exit()

def Md5(md5):
  header = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36'}
  data = {
    '__VIEWSTATE': '/wEPDwUKMTM4NTE3OTkzOWRkP4hmXYtPPhcBjbupZdLOLfmeTK4=',
    '__VIEWSTATEGENERATOR': 'CA0B0334',
    '__EVENTVALIDATION': '/wEWAwK75ZuyDwLigPTXCQKU9f3vAheUenitfEuJ6eGUVe2GyFzb7HKC',
    'key': '{}'.format(md5),
    'jiemi': 'MD5解密'
  }
  url = "http://pmd5.com/"
  r = requests.post(url, headers=header, data=data)
  sd = r.content.decode('utf-8')
  esdf = BeautifulSoup(sd, 'html.parser')
  for l in esdf.find_all('em'):
    g = l.get_text()
    print('--------[*]PMD5接口--------')
    print(g)

if __name__ == '__main__':
  main()

然后运行

完美解出!

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python2.x版本中基本的中文编码问题解决

Python 输出 "Hello, World!",英文没有问题,但是如果你输出中文字符"你好,世界"就有可能会碰到中文编码问题。 Python 文件中如果未指定编码,在执行过程会出现报...

Django+uni-app实现数据通信中的请求跨域的示例代码

Django+uni-app实现数据通信中的请求跨域的示例代码

前后端分离的模式下,后端使用Django RestFramework,前端使用uni-app来进行APP的开发。 前端代码: Django后端跨域配置 settings.py配...

下载官网python并安装的步骤详解

下载官网python并安装的步骤详解

怎么下载官网python并安装? Python火了起来,很多人开始学习起来了,那么Python安装包,去哪里下载呢。那当然是去官网咯。 Python官网或直接 访问 https://ww...

tornado+celery的简单使用详解

celery是实现一个简单,灵活可靠的分布式任务队列系统的好选择 tornado则不用过多介绍 在开发机上安装rabbitmq这里就不介绍了 首先是task文件的编写 task.py...

python matplotlib库直方图绘制详解

python matplotlib库直方图绘制详解

例题:假设你获取了250部电影的时长(列表a中),希望统计出这些电影时长的分布状态(比如时长为100分钟到120分钟电影的数量,出现的频率)等信息,你应该如何呈现这些数据? 一些概念及...