CrackQL:一款功能强大的图形化密码爆破和模糊测试工具

news2024/9/29 13:23:43

关于CrackQL

CrackQL是一款功能强大的图形化密码爆破和模糊测试工具,在该工具的帮助下,广大研究人员可以针对密码安全和应用程序安全进行渗透测试。

除此之外,CrackQL同时也是一款通用的GraphQL渗透测试工具,它可以控制速率限制和其他分析控制技术来对目标系统进行凭证爆破和模糊测试等操作,以测试程序的安全性。

工具运行机制

CrackQL的工作原理是将单个GraphQL查询或变异自动批量处理为多个别名操作,该工具可以根据CSV输入变量确定要使用的别名数。在以编程方式生成分批GraphQL文档后,CrackQL然后会分批并将Payload发送到目标GraphQL
API,并解析结果和错误信息。

工具依赖组件

Python3

Requests

GraphQL

Jinja

工具安装

广大研究人员可以使用下列命令将该项目源码克隆至本地:

git clone git@github.com:nichola*saleks/CrackQL.git

接下来,利用项目提供的requirements.txt文件安装该工具所需的依赖组件:

pip install -r requirements.txt

工具运行

查看帮助信息

python3 CrackQL.py -h

 

Options:

  -h, --help             显示工具帮助信息和退出

  -t URL, --target=URL   目标GraphQL节点的URL路径

  -q QUERY, --query=QUERY

                        指定输入查询或编译操作

  -i INPUT_CSV, --input-csv=INPUT_CSV

                        输入CSV列表的文件路径

  -d DELIMITER, --delimiter=DELIMITER

                        CSV输入分隔符,默认:“,”

  -o OUTPUT_DIRECTORY, --output-directory=OUTPUT_DIRECTORY

                        存储结果的输出目录,默认:./results/[domain]_[uuid]/

  -b BATCH_SIZE, --batch-size=BATCH_SIZE

                        每次GraphQL文档请求的批量操作数量,默认:100

  -D DELAY, --delay=DELAY

                        批量请求发送的时间间隔,默认:0

  --verbose           启用工具Verbose模式

  -v, --version         输出工具当前版本和退出

使用样例

python3 CrackQL.py -t http://example.com/graphql -q sample-queries/login.graphql -i sample-inputs/usernames_and_passwords.csv

工具使用演示

密码喷射爆破

sample-queries/login.graphql

mutation {

  login(username: {{username|str}}, password: {{password|str}}) {

    accessToken

  }

}

双因素身份验证OTP绕过

sample-queries/otp-bypass.graphql

mutation {

  twoFactor(otp: {{otp|int}}) {

    accessToken

  }

}

用户账号枚举

sample-queries/enumeration.graphql

query {

  signup(email: {{email|str}}, password: {{password|str}}) {

    user {

      email

    }

  }

}

不安全的直接对象引用

sample-queries/idor.graphql

query {

  profile(uuid: {{uuid|int}}) {

    name

    email

    picture

  }

}

字典Payload

sample-inputs/usernames_and_passwords.csv

username, password

admin, admin

admin, password

admin, pass

admin, pass123

admin, password123

operator, operator

operator, password

operator, pass

operator, pass123

operator, password123

最后

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

同时每个成长路线对应的板块都有配套的视频提供:


当然除了有配套的视频,同时也为大家整理了各种文档和书籍资料&工具,并且已经帮大家分好类了。

因篇幅有限,仅展示部分资料,有需要的小伙伴,可以【扫下方二维码】免费领取:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/186268.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

垃圾分类智能分析系统 yolov7

垃圾分类智能分析系统应用pythonyolov7网络模型深度学习识别技术,自动识别违规投放行为并现场进行语音提示实时预警。如垃圾满溢抓拍预警、人脸识别、工服识别、厨余垃圾混投未破袋识别预警、垃圾落地识别预警、人来扔垃圾语音提醒等。我们选择当下YOLO最新的卷积神…

数组去重的七种方法

数组去重的七种方法1. 双重for循环2. forindexOf3.es6 set4.filter5.includes6.创建一个新的object7.new Map()1. 双重for循环 第1种是定义一个新的空数组,再执行嵌套双循环,监测空数组中如果没有的元素,push进空数组中。这个方法考察了conti…

AcWing - 寒假每日一题2023(DAY 16——DAY 20)

文章目录一、AcWing 4455. 出行计划(简单)1. 实现思路2. 实现代码二、AcWing 4510. 寻宝!大冒险!(简单)1. 实现思路2. 实现代码三、AcWing 3422. 左孩子右兄弟(中等)1. 实现思路2. 实…

【MySQL】过年没有回老家,在出租屋里整理了一些思维导图

Xmind导图知识点Mysql知识点SQL知识点Mybatis知识点面试题分享MySQL部分Mybatis部分Mysql知识点 通过下面的图片可以看出,MySQL基础语法分为四部分:连接数据库,对数据库的操作,对表中的数据操作,对表操作等等。 SQL…

python exe程序注册为window系统服务

1、使用pyinstaller将py打包成exe 1、安装 pip install pyinstaller2、打包成exe可执行文件 pyinstaller -F packTest.py #packTest.py为待打包的py文件打包成功后会在同级目录中生成两个文件夹和一个文件,分别为dist和build文件夹,以及一份与.py文件同…

Java——最大子数组和

题目链接 leetcode在线oj题——最大子数组和 题目描述 给你一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。 子数组 是数组中的一个连续部分。 题目示例 输入:…

Vulnhub DC-4靶机渗透

环境准备DC-4靶机 ip:???????kali攻击机 ip:192.168.153.128一、信息收集kali攻击机中,使用 arp-scan -l 扫描c段(-l为扫描c段)确定靶…

自动驾驶——智能配电

一、汽车配电 汽车配电(Power Distrubition Unit,PDU)分为低压配电与高压配电,即低压PDU与高压PDU。 二、传统控制方式——PCB式电器盒 传统配电盒(机电器件): (1)继…

为什么要做黑盒测试?黑盒测试有什么作用?

对于软件测试的从业者来说,黑盒测试是十分重要的测试方式,它可以弥补白盒测试检查不到的部分。可能刚刚入门的测试小白,对于为什么要做黑盒测试?黑盒测试有什么作用?仍然抱有很大的疑问。下面小编就来从黑盒测试的概念…

QT入门Buttons之QPushButton

目录 一、界面布局介绍 1、布局器中的位置及使用 2、控件的界面属性 3、常用基本属性介绍 3.1控件名称 3.2控件大小属性 3.3按钮上的文字设置 3.4设置按钮的样式 二、属性功能介绍 1、常用方法介绍 2、基本信号介绍 三、Demo展示 一、界面布局介绍 1、布局器中的位…

丰田埃尔法商务租车价格是多少,它的性能到底有多好呢

丰田埃尔法作为MPV之王。埃尔法的高腰线和深色玻璃也使内部更具神秘感,惹眼闪烁的进气格栅,类似盔甲一般的全镀铬饰条构成的霸道前脸和富于设计感的车身曲线,细节处采用36颗闪亮镀铬装饰点缀,有着很高的辨识性。保持了典型的MPV风…

需要代理上网的linux服务器,无法使用NTP同步时间,只需要这一行指令即可。

这将会是一篇让你对时间同步受益匪浅的文章!如果你看完之后有收获,希望你能加个关注,如果你看完之后没有收获,希望你能留下你路过的痕迹。 由于工作需要,我们使用了一款神奇的调度框架,叫powerjob&#xff…

【职工管理系统】C++全栈体系(十四)

职工管理系统 第七章 添加职工 功能描述:批量添加职工,并且保存到文件中 一、功能分析 分析: 用户在批量创建时,可能会创建不同种类的职工 如果想将所有不同种类的员工都放入到一个数组中,可以将所有员工的指针维…

组织级过程资产库如何助力CMMI3-5级高效落地?

为了助力CMMI3-5级高效落地,近日CoCode旗下Co-ProjectV3.0智能项目管理平台全面升级,CMMI落地4大工具正式上线:CMMI成熟度自测工具、量化管理工具(组织级过程改进工具和量化项目管理工具)、组织级过程资产库。 组织级过…

tomcat下载安装步骤(笔记整理)

目录Tomcat下载安装以及配置(详细教程)tomcat下载安装步骤(超详细)Apache Tomcat下载、安装、配置图文教程Tomcat下载安装配置详细过程Tomcat下载及配置(IDEA)Tomcat 下载安装教程Linux系统中Tomcat下载安装…

振弦采集模块配置工具VMTool 扩展功能数据处理

振弦采集模块配置工具VMTool 扩展功能数据处理 数据存储 数据存储功能模块支持自动或手动将实时数据寄存器值存储到数据库, 并支持导出为 Excel文件功能。 ( 1) 手动存储 每点击数据存储面板内的【 手动存储】按钮一次,将当前寄存…

Spring Cloud_Gateway新一代网关

目录一、概述简介1.官网2.是什么3.能干嘛4.微服务架构中网关在哪里二、三大核心概念1.Route(路由)2.Predicate(断言)3.Filter(过滤)4.总体三、Gateway工作流程1.官网总结2.核心逻辑:路由转发执行过滤器链四、入门配置1.新建Module2.POM3.YML4…

模板征集活动正式上线 | 加入我们,共创可视化内容!

本活动是由EasyV官方发布举办的定向主题模板征集活动,用户报名参加并使用EasyV进行创作后,通过素材广场上传作,经由官方进行作品评估,取得奖次的用户即可获得相应奖励。活动面向EasyV所有产品用户,以作品为维度独立参与…

tomcat下载与安装win11

目录 一、下载Tomcat及解压 1、选择下载版本(本文选择tomcat 10版本为例) 2、之后选择解压到任意一个盘,我解压到D盘,解压的路径一定要记住,后面系统环境变量配置的时候要用到。 二、配置环境 三、验证是否配置成功…

jvm 堆 栈大小设置

1、Eclise 中设置jvm内存: 改动eclipse的配置文件,对全部project都起作用 改动eclipse根文件夹下的eclipse.ini文件 -vmargs //虚拟机设置 -Xms40m //初始内存 -Xmx256m //最大内存 -Xmn16m //最小内存 -XX:PermSize128M //非堆内存 -XX:MaxPermSize256M 2、Eclise 中设置jvm内…