python-网络安全编程第八天(实战高精度密码字典生成器)
前言
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-网络安全编程第八天(实战高精度密码字典生成器)的更多相关文章
- Python核心编程的四大神兽:迭代器、生成器、闭包以及装饰器
生成器 生成器是生成一个值的特殊函数,它具有这样的特点:第一次执行该函数时,先从头按顺序执行,在碰到yield关键字时该函数会暂停执行该函数后续的代码,并且返回一个值:在下一次调用该函数执行时,程 ...
- 基于python的密码字典生成器
最近在网上看到一些作品,然后对其进行了一些完善.只是用于学习,不要去干坏事哦.程序来源于网络,我只是做了一些优化. #!/usr/bin/python# -*- coding:utf-8 -*-# @ ...
- 国内第一本micropython的书出版《机器人Python极客编程入门与实战》
第一本micropython的书<机器人Python极客编程入门与实战>. 购买地址:https://item.taobao.com/item.htm?spm=2013.1.w4018-1 ...
- Python 高效编程技巧实战(2-1)如何在列表,字典, 集合中根据条件筛选数据
Python 高效编程技巧实战(2-1)如何在列表,字典, 集合中根据条件筛选数据 学习目标 1.学会使用 filter 借助 Lambda 表达式过滤列表.集合.元组中的元素: 2.学会使用列表解析 ...
- Python黑客编程2 入门demo--zip暴力破解
Python黑客编程2 入门demo--zip暴力破解 上一篇文章,我们在Kali Linux中搭建了基本的Python开发环境,本篇文章为了拉近Python和大家的距离,我们写一个暴力破解zip包密 ...
- Python爬虫开发与项目实战
Python爬虫开发与项目实战(高清版)PDF 百度网盘 链接:https://pan.baidu.com/s/1MFexF6S4No_FtC5U2GCKqQ 提取码:gtz1 复制这段内容后打开百度 ...
- python安全编程
##入门 这将是第一个一系列关于python编程的博客文章.python是一门非常强大的语言,因为它有信息安全社区的支撑.这意味着很多工具都是由python编写并且可以在脚本中调用很多模块.使用模块的 ...
- 系列文章--Python Web编程
我从网上找到了其他园友的文章,很不错,留着自己学习学习. Python Web编程(一)Python Web编程(二)Python Web编程(三)Python Web编程(四)Python Web编 ...
- python核心编程第二版笔记
python核心编程第二版笔记由网友提供:open168 python核心编程--笔记(很详细,建议收藏) 解释器options:1.1 –d 提供调试输出1.2 –O 生成优化的字节码(生成 ...
随机推荐
- nginx 快速安装
必要条件 1能访问外网 2防火墙放开80 3有软件安装权限 依次执行以下命令 一.设置CentOS7的yum源及EPEL yum源 wget -O /etc/yum.repos.d/epel.repo ...
- 第四章 NFS服务相关介绍
一.NFS服务介绍 1.什么是NFS?是一个共享存储,文件服务器 2.NFS基本概述NFS是Network File System的缩写及网络文件系统.NFS主要功能是通过局域网络让不同的主机系统之间 ...
- spring-boot-route(二十三)开发微信公众号
在讲微信公众号开发之前,先来大概了解一下微信公众号.微信公众号大体上可以分为服务号和订阅号,订阅号和服务号的区别如下: 服务号可以申请微信支付功能. 服务号只能由企业申请,订阅号可以有企业或个人申请. ...
- thinkphp数组给js赋值 tp模板把数组赋值给js变量
var arr=transArr({$array|json_encode=true}); function transArr(obj) { var tem=[]; $.each(obj, functi ...
- origin把点图和线图放在一起
首先分别做好点图和线图在两个graph中,然后选中其中一副图(点图或者线图),然后按下图选择: 如果有多个图,可以在弹出窗口中选择多个sheet.
- 安装Redis(Windows版本&Linux版本)
1.版本: Redis官网上有Linux版本,Redis官网:https://redis.io/download GitHub上有Windows版本,地址是:https://github.com/Mi ...
- npm的使用说明
博主是刚开始写项目的前端小白菜,边学边整理,以供后面的小猿参考,共同进步. 首先: npm的官网地址:https://www.npmjs.com Windows 安装包(.msi) 32 位安装包下载 ...
- Android Studio的第一次经历
第一个简单APP的制作是从xml开始的,通过在java新建一个empty activity,并在layout里找到对应的xml文件进行编写.每编写一个xml就要事先新建 一个对应的empty ac ...
- python中的evalexec 将字符串当做代码执行
eval/exec 将字符串当做代码执行 eval/exec 这两个函数可以将字符串解析为代码并执行. 区别 1.eval 解析变量和表达式, 而 exec 解析语句 a = '1' print(ev ...
- 水题挑战4: luogu P1280 尼克的任务
题目描述 尼克每天上班之前都连接上英特网,接收他的上司发来的邮件,这些邮件包含了尼克主管的部门当天要完成的全部任务,每个任务由一个开始时刻与一个持续时间构成. 尼克的一个工作日为 \(n\) 分钟,从 ...