需求:有非常多的弱密码字典txt文件,现需将所有文件导入到数据库,通过数据库统计重复度高的弱密码,通过众多字典打造一个强大的、重复度高的字典
一、新建表
create table easy_passwd (id int(255) auto_increment primary key, passwd varchar(255), create_date datetime not null default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP)
/*区分大小写*/
ALTER TABLE easy_passwd CONVERT TO CHARACTER SET utf8 COLLATE utf8_bin;
二、导入数据
load data local infile "C:\\Users\\lh\\Desktop\\dic\\0321.txt" into table easy_passwd FIELDS TERMINATED BY "," (passwd);
/*只要重复上条语句,将所有要导入的文档导入进来*/
要怎么将这么多文件的路径补全到上面的命令中呢?
2.1 获取所有字典文件名
写一个bat脚本,写入
dir /b > filename.txt
即可列出本目录下的所有文件名
2.2 补全sql语句
在Excel中将目标文件名位置分列,把刚获取的文件名粘贴即可
2.3 执行命令
执行命令后,自动将字典内容导入到表中
2.4 格式化内容
导入后,部分文本后面会有\r
字符,导致无法搜索
可通过以下命令将\r
字符删除
UPDATE easy_passwd SET passwd=REPLACE(passwd,"\r","");
UPDATE easy_passwd SET passwd=REPLACE(passwd,"\n","");
UPDATE easy_passwd SET passwd=REPLACE(passwd," ","");
三、重复项排序
将表中的密码字段的重复次数进行排序。如下面的语句为列出表中出现次数最多的1万条
SELECT passwd, count( * ) AS count
FROM easy_passwd
GROUP BY passwd
ORDER BY count DESC
LIMIT 10000
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(0)