pwcrack - 一款Md5密码自动破解框架

VSole2022-07-29 08:31:52

声明:该公众号大部分文章来自作者日常学习笔记,也有部分文章是经过作者授权和其他公众号白名单转载,未经授权,严禁转载,如需转载,联系开白。

请勿利用文章内的相关技术从事非法测试,如因此产生的一切不良后果与文章作者和本公众号无关。

pwcrack-framework是一个用Ruby编写的密码自动破解框架,目前提供了在线破解和30离线破解接口,支持53种破解算法。大家可以给作者点个star!!!

项目地址:

https://github.com/L-codes/pwcrack-framework

0x01 特点

Ruby2.7+(使用 Ruby2.7.2和Ruby3.1.1测试)‍支持Linux/OSX/Windows平台运行支持在线和离线的进行破解密码明文支持自动分析密文算法调用插件破解提供简单的 DSL 编写插件配置java环境扩展,支持更多算法,可安装gem install rjb

0x02 安装

$ git clone https://github.com/L-codes/pwcrack-framework$ cd pwcrack-framework$ bundle install# banner view$ ./pwcrack banner
    [ Github ] https://github.com/L-codes/pwcrack-framework
                       [ Plugin Count ] 
         Online Plugin: 22        Offline Plugin: 30                   supporting algorithms: 53
                  [ Algorithm Plugin Count ] 
         serv_u: 20             md5: 20            sha1: 12        dedecms: 10          md5_16: 10           mysql:  8           ntlm:  7          mysql3:  6          sha256:  6         sha512:  6              lm:  4             md4:  4          mssql:  2          sha384:  2     landray_ekp:  1  juniper_type9:  1         h3c_imc:  1      h3c_huawei:  1        grafana:  1             gpp:  1         foxmail:  1       foxmail6:  1        flashfxp:  1      finereport:  1      filezilla:  1       druid_rsa:  1      dongao_rc4:  1      whirlpool:  1          sha224:  1       ripemd320:  1      ripemd256:  1       ripemd160:  1       ripemd128:  1           mdc2:  1             md2:  1       dahan_jis:  1      d3des_vnc:  1       cisco_vpn:  1     cisco_type7:  1         xshell:  1            xftp:  1       websphere:  1    uportal2800:  1          trswcm:  1       seeyon_a8:  1   securecrt_v2:  1       securecrt:  1       qizhi_php:  1      navicat12:  1       navicat11:  1       mobaxterm:  1    mac_osx_vnc:  1        lsrunase:  1          zfsoft:  1
# Install in Termux$ pkg install git ruby ruby-dev clang make libffi-dev$ gem install bundler$ git clone https://github.com/L-codes/pwcrack-framework$ cd pwcrack-framework$ bundle update --bundler

0x03 示例用法

示例 1

示例 2

示例 3

示例 4

0x04 插件开发 DSL

#!/usr/bin/env ruby## Plugin 80p# Author L#
plugin '80p' do  web_server 'http://md5.80p.cn'  supported_algorithm :md5, :md5_16, :sha1
  crack {    r = post '/', {'decode': passwd}    r.body.extract(/<font color="#FF0000">(.*?)<\/font>/)  }end

0x05 本地数据库

在v1.4.0之后版本,添加了本地的密码数据库(大多数为cmd5等需收费查询),localdb 插件会查询本地的数据库

初次使用或需要重建本地数据库,则执行如下命令

pwcrack initdb

也可以自定义字典进行创建数据库

$ pwcrack initdb my_dict.txt

在v1.9.8之后版本,添加了add和updatedb功能,新增明文到data/words.txt则使用

$ pwcrack add <word...>

更新data/words.txt中新增的明文记录到数据库则使用

$ pwcrack updatedb

注意:安装时最好用作者建议的Ruby 2.7.2和Ruby 3.1.1,否则可能会出现各种依赖包版本问题......!

数据库
本作品采用《CC 协议》,转载必须注明作者和本文链接
数据库的安全性是指保护数据库免受未经授权的访问、篡改、破坏或丢失。
提升数据库自身安全防护能力、改善应用维护管理方式、运用适合自身运营现状的安全管控方案,是企业在数字化转型中必须重视的问题。
数据库注入提权总结
2022-08-10 15:52:54
首先,不能直接将该函数注入子查询中,因为 Oracle 不支持堆叠查询 。其次,只有数据库管理员才能使用 DBMS_LOCK 包。在 Oracle PL/SQL 中有一种更好的办法,可以使用下面的指令以内联方式注入延迟:dbms_pipe.receive_messageDBMS_PIPE.RECEIVE_MESSAGE() 函数将为从 RDS 管道返回的数据等待 10 秒。
如果关闭了autocommit,所有的sql语句都在一个事务中,直到执行了commit或rollback,该事务结束,并且开启了下一个事务。DML语句等都不会强制提交事务。因此与其说ACID是事务必须满足的条件,不如说它们是衡量事务的四个维度。undo log属于逻辑日志,它记录的是sql执行相关的信息。当发生回滚时,InnoDB会根据undo log做相反的事情,对于每个insert,回滚做delete;对于每个delete,回滚做insert;对于update,回滚会执行一个相反的update,把数据改回去。
数据库的可观测性的学习榜样是Oracle,我们根据Oracle官方发布的资料以及可观测性接口就可以比较清晰的了解到数据库的运行状态,进行问题定位、性能分析的工作。目前国产数据库都没有提供如此丰富的可观测性接口与工具,因此对于国产数据库的运维来说,造成了很大的障碍。不知道今年的开发者大会上发布的openGauss商业版里,会不会看到USTORE成为默认存储引擎的功能。
数据库没有备份,一旦数据库被恶意破坏或者因为软硬件故障导致不可用,烦恼的不仅是IT人,还有企业的经营者。所以,企业需要结合不同场景灵活组合不同的备份和恢复手段,备份之后也要定期进行恢复演练,确保恢复流程的正确性和数据库备份集的有效性。
数审系统发挥的作用就是回答以上这些追问。靠人工24小时监控数据库的一切访问行为几乎难以实现,因此,借助工具的力量,引入数审产品才是成熟的做法。建立数审体系,无论是外部还是内部,只要出现了针对数据库的恶意操作,数据库审计就能够第一时间识别并发出告警,让管理者第一时间进行处理,能够有效降低甚至避免损失。所以,数据库审计对于数据安全防护来说是必要一环。
据中国信息通信研究院《数据库发展研究报告》预测,预计到2025年,全球数据库市场规模将达到798亿美元。2021年3月,“十四五”规划纲要正式颁布,提出要培育壮大人工智能、大数据、区块链等新兴数字产业。国家也陆续印发不同领域的“十四五”规划。
数据库运维人员(DBA)在开展日常运维工作的过程中,因操作环境和规范要求的不同,其访问数据库的方式也相对灵活——既可以通过网络远程访问,也可以进行本地访问。那么问题来了...
VSole
网络安全专家