一步步设计DBcrack数据库爆破 | Thelostworld_DBcrack(二)

460 阅读3分钟

本文约1200字,阅读约需4分钟。

自己的设计动机,来自于一次内外渗透代理隧道扫描速度太慢。尝试超级弱口令等exe,发现.net版本不支持。同时也发现,部分exe无法运行。

搜集了一下信息,发现很少有人分享用JAVA所写的、类似超级弱口令的这种集成在一起的爆破程序。因此,想做一个这种集成的程序。方便日常工作。

图片


1

实现过程

先来设计GUI:

图片

爆破测试console打印:

图片

测试过程输出和结果输出:

图片

同时在jar相同文件下输出,sucess.txt成功文件:

图片

存在问题

IP、用户名字典、密码字典都是采用文件读取方式;

结果和过程录入输出在一起;

多线程结果输出一个文件卡死IO占用高;

界面感觉不美观。

2

优化设计

考虑到展示效果的多样性,和界面的优化处理效果,不是全部的操作日志和最终想要的数据都要汇总在一起。完全可以把不同的数据输出展示到不同的位置——比如小米范-alive的程序。

接下来,由Swing绘制GUI界面,转换到JFX绘制GUI界面。

初始设计

字典还是通过文件读取方式:

图片

多次测试发现还是IO占用问题,字典不能太大。

最后修改为字典不再使用导入的加入方式,通过粘贴即可,节省IO读取。

大体的UI设计:

图片

爆破成功输出页面:

图片

图片

成功txt文件页面,可直接粘贴出来:

图片

爆破错误日志:

图片

过程中的难点

主要是Redis和Ftp这两个连接协议具有多状态的特性,输入的参数的类别不一样,连接状态也多种多样,需要添加多重判断和适配,从而减少误报情况。

图片

图片

图片

基本上功能目前支持:Mysql、Oracle、Sqlserver、Ssh、PostgreSql、Ftp、Redis、MongoDB、Tomcat。

RDP实现难度大,目前没有找到很好的解决办法。Telnet不同终端要求不相同,认证输入方式不同,还在研究中。

最近考虑添加SOCKS代理检测,目前界面已经写好,可能需要修改代理判断的实现方法。

图片

SOCKS代理扫描:

图片

HTTP代理扫描:

图片

目前功能还在持续更新中。

3

免责声明

该程序及其相关技术仅用于安全自查检测。

由于传播、利用此程序所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,作者不为此承担任何责任。

本人拥有对此程序的修改和解释权。未经网络安全部门及相关部门允许,不得善自使用本程序进行任何攻击活动,不得以任何方式将其用于商业目的。

4

参考

www.cnblogs.com/fsqsec/p/55…

blog.csdn.net/guanjungao/…

blog.csdn.net/FlyLikeButt…

- END -

注意:⚠️

免责声明:本站提供安全工具、程序(方法)可能带有攻击性,仅供安全研究与教学之用,风险自负!

如果本文内容侵权或者对贵公司业务或者其他有影响,请联系作者删除。

转载声明:著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

订阅查看更多复现文章、学习笔记

thelostworld

安全路上,与你并肩前行!!!!

图片

欢迎关注公众号:

thelostworld

开发、安全 学习-工作记录

113篇原创内容

公众号

图片