如何使用Klyda在线检测Web应用程序的密码喷射和字典攻击漏洞
2022-12-16 13:23:38 Author: www.freebuf.com(查看原文) 阅读量:10 收藏

关于Klyda

Klyda是一款功能强大的Web应用程序安全漏洞检测工具,该工具本质上是一个高度可配置的脚本,可以帮助广大研究人员快速检测目标Web应用程序中是否存在基于凭证的攻击漏洞。当前版本的Klyda不仅支持使用密码喷射技术,而且还支持大规模多线程的字典攻击。

工具特性

1、支持多线程任务;

2、结合字典文件可实现大规模安全测试;

3、支持将数据列入黑名单以缩小结果范围;

4、限制了线程速度以更好地隐藏操作;

工具安装

由于该工具基于Python 3开发,因此广大研究人员首先需要在本地设备上安装并配置好Python 3环境。接下来,使用下列命令将该项目源码克隆至本地:

git clone https://github.com/Xeonrx/Klyda

接下来,切换到项目目录中,然后使用pip命令安装该工具所需的依赖组件:

pip install requests beautifulsoup4 colorama numpy

配置完成之后,我们就可以使用下列命令来查看工具的帮助信息了:

python3 klyda.py -h

该工具主要针对的是Linux设计的,而Linux系统一般都自带了Python。

工具使用

Klyda的使用非常简单,我们只需要提供下列四个命令参数即可:

1、目标Web应用程序的URL

2、用户名

3、密码

4、表单数据

目标Web应用程序的URL

我们可以通过--url参数来提供和解析目标Web应用程序的URL:

python3 klyda.py --url http://127.0.0.1

注意,不要针对单个Web页面执行测试。

用户名

用户名即字典攻击测试的主要目标,我们应该提供一个用户名范围或列表文件。

手动指定:

python3 klyda.py -u Admin User123 Guest

文件组合:

python3 klyda.py -U users.txt extra.txt

手动指定+文件组合:

python3 klyda.py -U users.txt -u Johnson924

密码

密码为整个安全测试中最主要的部分,因为我们不知道密码,因此才需要字典&爆破测试。和用户名一样,我们可以手动指定单个密码,或提供一个密码列表。

手动指定:

python3 klyda.py -p password 1234 letmein

文件组合:

python3 klyda.py -P passwords.txt extra.txt

手动指定+文件组合:

python3 klyda.py -P passwords.txt -p redklyda24

表单数据

表单数据即你构造请求时使用的数据,一般来说,我们需要指定一个用户名、一个密码和一个额外的值,此时可以使用-d参数指定:

python3 klyda.py -d username:xuser password:xpass Login:Login

其中,xuser是注入用户名的占位符,xpass为注入密码的占位符,表单数据的格式为(key):(value)。

黑名单

字符串:

python3 klyda.py --bstr "Login failed"

状态码:

python3 klyda.py --bcde 404

内容长度:

python3 klyda.py --blen 11

线程限制

python3 klyda.py --rate (# of requests) (minutes)

例如:

python3 klyda.py --rate 5 1

工具使用演示

我们在下面的工具使用演示样例中,针对DVWA应用程序运行了Klyda并进行测试:

python3 klyda.py --url http://127.0.0.1/dvwa/login.php -u user guest admin -p 1234 password admin -d username:xuser password:xpass Login:Login --bstr "Login failed"
python3 klyda.py --url http://127.0.0.1/mutillidae/index.php?page=login.php -u root -P passwords.txt -d username:xuser password:xpass login-php-submit-button:Login --bstr "Authentication Error"

工具运行截图

许可证协议

本项目的开发与发布遵循MIT开源许可证协议。

项目地址

Klyda:【GitHub传送门


文章来源: https://www.freebuf.com/articles/web/352665.html
如有侵权请联系:admin#unsafe.sh