freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据库安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课
FreeBuf+小程序

FreeBuf+小程序

官方公众号企业安全新浪微博

国内领先的互联网安全新媒体,同时也是爱好者们交流与分享安全技术的社区

字典生成工具
2012-06-16 11:20:07
今天给大家带来linux下生成字典的小程序,可以为暴力破解等生成猜解的字典。代码如下:
#!/bin/bash
#by leo108
#使用方式:./genpwd.sh 密码类型 密码长度 生成文件
#密码类型如果是1,则是数字+字母,如果是其他则是数字
#例如./genpwd.sh 1 4 pwd.txt,生成长度为4的数字+字母密码
type=$1
length=$2
f=$3
if [ $type -eq "1" ]; then
g_Dict=( 0 1 2 3 4 5 6 7 8 9 a b c d e f g h i j k l m n o p q r s t u v w x y z )
else
g_Dict=( 0 1 2 3 4 5 6 7 8 9 )
fi
count=0
total=1
if [ -e tmp.txt ]; then
    rm tmp.txt
fi
for ((i=0;i<$length;i++));
do
    let "total*=${#g_Dict[@]}"
done
echo "Total:"$total
declare -a Dict
declare -a Array
bStop=1
for ((i=0;i<$length;i++));
do
    Array[$i]=0
done
while [ $bStop != 0 ]; do
    for ((i=0;i<$length;i++));
    do
        Dict[$i]=${g_Dict[${Array[$i]}]}
    done
    echo ${Dict[@]} >> tmp.txt
    let "count+=1"
    let "tmp=count%10000"
    if [ $tmp -eq 0 ]; then
        echo $count" Generated"
    fi
    for ((j=$length-1;j>=0;j--));
    do
        let "Array[$j]+=1"
        if [ ${#g_Dict[@]} -ne ${Array[$j]} ]; then
            break
        else
            Array[$j]=0
            if [ $j -eq 0 ]; then
                bStop=0
            fi
        fi
    done
done
sed -r 's/ +//g' tmp.txt >> $f
echo "Finish"
rm tmp.txt

本文作者:, 转载请注明来自FreeBuf.COM

# 暴力破解 # 字典生成
被以下专栏收录,发现更多精彩内容
+ 收入我的专栏
评论 按时间排序

登录/注册后在FreeBuf发布内容哦

相关推荐
  • 0 文章数
  • 0 评论数
  • 0 关注者
登录 / 注册后在FreeBuf发布内容哦