首页 > 编程语言 > 详细

python实战:[高精度密码字典生成器]

时间:2020-02-05 18:38:42      阅读:108      评论:0      收藏:0      [点我收藏+]

前言

emmmm

高精度密码字典源码

 

1.py

import exrex
import sys


#url过滤处理
def host_para(host):
    if :// in host:
        host=host.split(://)[1].replace(/, )
    if / in host: 
        host=host.replace(/,‘‘)
        
    return host
    
    
def dic_creat(hosts):
    web_white=[com,com,cn,gov,edu] #后缀白名单
#
    web_dics=hosts.split(.)#将传进来的域名以.分割
    
    
    f_rule=open(rule.ini,r)#引入配置文件

    for i in f_rule: #将配置文件的值传给rule
        if # !=i[0]:
            rule=i
    #print(rule)        
    f_pass_out=open(pass_1.txt,w)#打开pass1.txt文件如果没有则创建用于保存生成的字典
    f_pass_out.close
    
    for web_dic in web_dics:
        #if web_dic not in web_white:  #过滤后缀.com之类
            f_pass=open(pass_0.txt,r)
            for dic_pass in f_pass:
                print(dic_pass)
                
                dics = list(exrex.generate(rule.format(web_dic=web_dic,dic_pass=dic_pass.strip(\n))))
                
                for dic in dics:
                    if len(dic)>4:
                        f_pass_out=open(pass_1.txt,a+)
                        f_pass_out.write(dic)
                        f_pass_out.close()
                        print dic
#           
       
#    
#dic_creat(host_para(‘http://baidu.com/‘))
if __name__==__main__:
    if len(sys.argv)==2:
        dic_creat(host_para(host_para(sys.argv[1])))
        sys.exit(0)
    else:
        print("11")
    

 

rule.ini

rule.ini是字典生成程序配置文件
配置的规则如"{web_dic}{!@#}{dic_pass}其中{web_dic}代表host中可能的字典元素,{dic_pass}代表密码母本中的密码

(|{web_dic})(|!|@|#)(|{dic_pass})(|!|@|#)(|201[4567])

 

 

pass_0.txt

使用方法

使用方法:
pass_0.txt是配合社工的文件 比如你社工到了这个网站的站长姓名叫王小明 那你可以添加wangxiaoming进入配合组建高精度密码字典

python 1.py http://baidu.com/ 即可组建高精度密码字典  查看当前目录下pass_1.txt即可获得。

技术分享图片

技术分享图片

 

 参考学习:网易云python安全编程

 

python实战:[高精度密码字典生成器]

原文:https://www.cnblogs.com/xhds/p/12264311.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!