0x00 简介
pwcrack-framework是@L-codes师傅用Ruby写的一个密码自动破解框架,目前提供了22个在线破解和30个离线破解接口,支持53种算法破解。
项目地址:
https://github.com/L-codes/pwcrack-framework
0x01 特点
Ruby3.1+(使用Ruby 3.1.1测试)
支持Linux/OSX/Windows平台运行
支持在线和离线的进行破解密码明文
支持自动分析密文算法调用插件破解
提供简单的DSL编写插件
配置java环境扩展,支持更多算法,可安装gem install rjb
0x02 安装
首先用了我多年没更新的kali试了下,结果出现了以下报错,根据给出的报错信息来看应该是ruby和bundle版本问题,而我的软件源也出了点问题,暂时不去解决这个源问题了。
$ git clone https://github.com/L-codes/pwcrack-framework
$ cd pwcrack-framework
$ bundle install
换了台CentOS7,阿里云的软件源,ruby默认为2.0.0,按作者提示需要升级为3.1.1,尝试yum和手动编译安装来升级ruby,虽然升级成功,但还是用不了,有时还会自动恢复为2.0.0。 最后是通过RVM方式升级的ruby,先来装一个RVM,添加aliyun镜像,但可能会因为墙的原因无法从指定的hkp服务器直接下载和导入签名,提示:
$ gem sources -a http://mirrors.aliyun.com/rubygems/
$ gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
$ gpg2 --keyserver hkp://pool.sks-keyservers.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
如遇以上报错提示时可以通过执行以下命令来手动下载和导入密钥,但得注意看一下返回信息,如果提示无法验证证书时可尝试加-k参数解决。
curl -sSL https://rvm.io/mpapis.asc | sudo gpg2 --import -
curl -sSL https://rvm.io/pkuczynski.asc | sudo gpg2 --import -
继续通过以下命令执行Github上的RVM自动安装sh脚本,但也因被墙而无法直接访问到,不过可以添加一条hosts解析记录来解决这个问题。
echo "199.232.68.133 raw.githubusercontent.com" >> /etc/hosts
curl -sSL https://get.rvm.io | bash -s stable
RVM安装完成,使用之前还得用source命令执行一下rvm.sh脚本,更新配置文件使其立即生效,查看rvm的版本信息,如果可以则说明已经安装成功了。
source /etc/profile.d/rvm.sh
rvm -v
接着我们再用RVM来安装一个pwcrack工具所需要的ruby 3.1.1,可以通过ruby -v命令查看是否已经升级成功?
rvm install 3.1.1
ruby -v
RVM升级ruby为3.1.1后就可以执行下pwcrack,这时可以看到还需要装一些所需的依赖包,都在Gemfile文件里了,执行bundle install命令安装即可,还有个rjb包,支持des、base64等,按需选择吧!
./pwcrack
bundle install
gem install rjb
到这里基本上已经OK了,现在就可以用pwcrack工具来破解各种密文了,如常见的Md5、Mysql、Lm以及各种第三方软件的密文等等,这里我们以Md5为例演示下,更多用法可见工具参数说明。
./pwcrack e10adc3949ba59abbe56e057f20f883e
注:部分解密接口需要上墙,所以建议放VPS上运行。最好还是用作者建议的ruby 2.7+/3.1+,否则可能会出现依赖包版本等问题。坑我都已经给踩完了,有想玩的自己去试下吧
0x03 问题
(1) 安装git时发现软件源有问题,换了个阿里云的软件源,源文件位置:/etc/yum.repos.d/CentOS-Base.repo
。
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo --no-check-certificate
yum install git
(2) curl下载文件时出现报错curl: (60) Peer's Certificate has expired.
,这是由系统时间偏差造成的,只需执行以下命令同步下系统时间即可。
yum install ntp -y
date -R
ntpdate -u 0.centos.pool.ntp.org
date -R
(3) curl下载文件时出现报错curl: (60) The certificate issuer's certificate has expired.
,这是因为证书失效造成的,只需执行以下命令更新下证书即可。
yum install ca-certificates -y
update-ca-trust extract
关注公众号回复“1208”可以领取个人常用高效爆破字典,“0221”2020年酒仙桥文章打包,“1212”杀软对比源码+数据源,“0421”Windows提权工具包。