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设计】。

相关文章

基于Python的图像数据增强Data Augmentation解析

基于Python的图像数据增强Data Augmentation解析

1.1 简介 深层神经网络一般都需要大量的训练数据才能获得比较理想的结果。在数据量有限的情况下,可以通过数据增强(Data Augmentation)来增加训练样本的多样性, 提高模型鲁...

python3.5 tkinter实现页面跳转

python3.5 tkinter实现页面跳转

本文实例为大家分享了tkinter实现页面跳转的具体代码,供大家参考,具体内容如下 主函数main.py from tkinter import * from LoginPag...

python3.x+pyqt5实现主窗口状态栏里(嵌入)显示进度条功能

python3.x+pyqt5实现主窗口状态栏里(嵌入)显示进度条功能

1、代码1: (1)进度条等显示在主窗口状态栏的右端,代码如下: from PyQt5.QtWidgets import QMainWindow, QProgressBar, QAp...

Python 依赖库太多了该如何管理

Python 依赖库太多了该如何管理

在 Python 的项目中,如何管理所用的全部依赖库呢?最主流的做法是维护一份“requirements.txt”,记录下依赖库的名字及其版本号。 那么,如何来生成这份文件呢?在上篇文章...

使用Python画股票的K线图的方法步骤

使用Python画股票的K线图的方法步骤

导言 本文简单介绍了如何从网易财经获取某支股票的价格数据,并根据价格数据画出相应的日K线图。有助于新手了解并使用Python的相关功能。包括列表、自定义函数、for循环、if函数以及如何...