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

相关推荐
书源丶6 分钟前
三十五、Java 泛型——类型安全的「万能模板」
java·开发语言·安全
雪碧聊技术36 分钟前
组合查询(union)
数据库·sql
juniperhan2 小时前
Flink 系列第24篇:Flink SQL 集成维度表指南:存储选型、参数调优与实战避坑
大数据·数据仓库·sql·flink
Chengbei112 小时前
AI大模型网关存在SQL注入、影响版本LiteLLM 1.81.16~1.83.7(CVE-2026-42208)
数据库·人工智能·sql·安全·web安全·网络安全·系统安全
一拳一个娘娘腔3 小时前
告别图形化界面:基于CLI的Windows系统入侵排查与防御实战手册
windows·安全
冷小鱼3 小时前
从关系模型(SQL)基石到AI与信创时代的智能查询语言
数据库·sql
庞轩px3 小时前
致远互联实习复盘:一条SQL替代300次循环查询,组织架构选择器从5秒降到300毫秒
java·sql·mysql·mybatis·实习经历·n+1问题·join联表查询
hwscom4 小时前
Linux服务器如何进行安全加固,防止黑客攻击(Windows也适用)
linux·服务器·安全
liann1194 小时前
3.4_Linux 应急响应排查速查命令表
linux·运维·服务器·安全·网络安全·系统安全
Agent手记4 小时前
首件检验流程繁琐,耗时久还容易出现合规漏洞怎么办?——基于实在Agent的AI+超自动化全流程闭环实战
网络·人工智能·ai·自动化