带有条件响应的盲 SQL 注入

题目:此实验室包含一个 SQL 盲注漏洞。该应用程序使用跟踪 Cookie 进行分析,并执行包含已提交 Cookie 值的 SQL 查询。

SQL 查询的结果不会返回,也不会显示任何错误消息。但是, Welcome back如果查询返回任何行,应用程序会在页面中包含一条消息。

总而言之带有响应的盲sql就像是一个可以回答你是不是的海龟汤,你可以通过条件的真假来获取你想要的信息

我们打开这个实验室,并使用Burpsuite来拦截首页,并将它发送给repeater:

回到原来实验室的页面,我们发现只要是第二次进入,页面的右上角就会返回:Welcome back!

我们又回到Burpsuite尝试在cookie后面输入Cookie: TrackingId=3IBuwB3cAeSggHgb'and'1'='1,并在response的搜索栏中输入Welcome back!,发现确实存在

尝试改变后面的布尔条件为Cookie: TrackingId=3IBuwB3cAeSggHgb'and'1'='2,后在response中查询Welcome back!发现不存在;说明我们找到了条件来响应我们的注入!

我们如果想要找到管理员的密码,就得先找到对应的数据存储在哪个表里面,一般的表会命名为user,我们通过该语句:Cookie: TrackingId=3IBuwB3cAeSggHgb'and(SELECT 'a' FROM users limit 1)='a来判断是否存在users这个表:发现存在

后面我们对应在这个表里找到administrator这个用户,发现也存在:

这样我们找到了这个用户,但是想要登陆这个账户还需要对应的密码,我们首先可以先判断这个密码的长度,将cookie改为:Cookie: TrackingId=3IBuwB3cAeSggHgb'and(SELECT username FROM users WHERE username = 'administrator' and length(password)>1)='administrator;通过结果的输出来判断密码的长度为多少,但是我们试了几个数字,发现这个密码的长度不在个位数,所以我们选择将这个页面发送给intruder,进行枚举

爆破范围我们选择1-100(正常的密码的长度不应该会超过这个范围),然后开始攻击(start attack,我们发现长度在19和20之间发生了改变,可以知道密码的长度应该在20,因为我们的条件是“>”,所以在超过密码范围时,长度会发生变化)

确认长度之后,我们需要确认密码内容,这里需要用到substring函数,函数的使用方式为:

SUBSTRING(字符串, 开始位置, 长度)

因此我们可以将cookie改为这种形式:Cookie: TrackingId=3IBuwB3cAeSggHgb'and(SELECT SUBSTRING(password,1,1)from users where username= 'administrator')='a'--

该句话的目的是判断administrator该用户密码的第一位是否是a,当我们将该句话发送出去,很显然response中没有Welcome back!,说明第一个字母不是a,一个个试太浪费时间,我们可以直接把这个页面发送给intruder,将substring的第一个1和最后的a添加上:记得这里的攻击类型改为cluster bomb,可以两个一起攻击

1这里的页面是这样的,我们进行数字爆破:

2这里的是密码的内容爆破,这里前面暗示了一下,密码的内容只有字母和数字,我们将payload改为这样:

然后开始攻击:可以看到有720条记录,我们可以点击上面的筛选栏,输入Welcome back,点击后会出现20条筛选记录,这正对应着我们的密码:一开始顺序是混乱的,可以点击payload1按照升序或降序来排列:

以上就是带有条件响应的盲 SQL 注入,希望看到的可以点个赞和收藏,谢谢🙏

Read more

Flutter 三方库 wasm_ffi 深入鸿蒙端侧硬核 WebAssembly 虚拟机沙盒穿透适配全景:通过异步极速 FFI 中继管道打通底层高算力异构服务-适配鸿蒙 HarmonyOS ohos

Flutter 三方库 wasm_ffi 深入鸿蒙端侧硬核 WebAssembly 虚拟机沙盒穿透适配全景:通过异步极速 FFI 中继管道打通底层高算力异构服务-适配鸿蒙 HarmonyOS ohos

欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.ZEEKLOG.net Flutter 三方库 wasm_ffi 深入鸿蒙端侧硬核 WebAssembly 虚拟机沙盒穿透适配全景:通过异步极速 FFI 中继管道打通底层高算力异构服务并全面实现无损语言壁垒交互 前言 在 OpenHarmony 应用向高性能计算领域扩展的过程中,如何优雅地接入已有的 C/C++ 算法库(如加密引擎、重型图像处理、数学模拟)而又不失跨平台的便捷性?传统的 NAPI 虽然稳健,但在 Flutter 生态中,直接利用 WebAssembly (WASM) 配合 FFI(External Function Interface)的语义可以在一定程度上实现代码的高度复用。wasm_ffi 库为 Flutter 开发者提供了一套在 Dart 环境下调用 WASM

By Ne0inhk
三种适用于Web版IM(即时通讯)聊天信息的加密算法实现方案

三种适用于Web版IM(即时通讯)聊天信息的加密算法实现方案

文章目录 * **第一部分:引言与核心密码学概念** * **1.1 为什么IM需要端到端加密(E2EE)?** * **1.2 核心密码学概念与工具** * **第二部分:方案一:静态非对称加密(基础方案)** * **2.1 方案概述与流程** * **2.2 前端Vue实现(使用node-forge)** * **1. 安装依赖** * **2. 核心工具类 `crypto.js`** * **3. Vue组件中使用** * **2.3 后端Java实现(Spring Boot)** * **1. 实体类** * **2. Controller层** * **3. WebSocket配置** * **2.4 密钥管理、注册与登录集成** * **1. 用户注册/登录时生成密钥** * **2. 密钥设置页面** * **2.

By Ne0inhk
前端代码生成的大洗牌:当 GLM 4.7 与 MiniMax 挑战 Claude Opus,谁才是性价比之王?

前端代码生成的大洗牌:当 GLM 4.7 与 MiniMax 挑战 Claude Opus,谁才是性价比之王?

在 AI 辅助编程领域,长期以来似乎存在一条不成文的铁律:如果你想要最好的结果,就必须为最昂贵的模型买单(通常是 Anthropic 或 OpenAI 的旗舰模型)。然而,随着国产大模型如 GLM 4.7 和 MiniMax M2.1 的迭代,这一格局正在发生剧烈震荡。 最近,一场针对Claude Opus 4.5、Gemini 3 Pro、GLM 4.7 和 MiniMax M2.1 的前端 UI生成横向测评,打破了许多人的固有认知。在这场包含落地页、仪表盘、移动端应用等五个真实场景的较量中,不仅出现了令人咋舌的“滑铁卢”,更诞生了性价比极高的“新王”。 本文将深入拆解这场测试的细节,透过代码生成的表象,探讨大模型在工程化落地中的真实效能与成本逻辑。

By Ne0inhk
【Java Web学习 | 第14篇】JavaScript(8) -正则表达式

【Java Web学习 | 第14篇】JavaScript(8) -正则表达式

🌈个人主页: Hygge_Code🔥热门专栏:从0开始学习Java | Linux学习| 计算机网络💫个人格言: “既然选择了远方,便不顾风雨兼程” 文章目录 * JavaScript 正则表达式详解 * 什么是正则表达式🤔 * JavaScript 正则表达式的定义与使用🥝 * 1. 字面量语法 * 2. 常用匹配方法 * test() 方法🍋‍🟩 * exec() 方法🍋‍🟩 * 正则表达式的核心组成部分🐦‍🔥 * 1. 元字符 * 边界符 * 量词 * 字符类 * 2. 修饰符 * 简单示例🍂 JavaScript 正则表达式详解 正则表达式是处理字符串的强大工具,在 JavaScript 中被广泛应用于表单验证、文本处理和数据提取等场景。本文将从正则表达式的基本概念出发,详细介绍其语法规则和实际应用方法。 什么是正则表达式🤔 正则表达式是用于匹配字符串中字符组合的模式,在 JavaScript

By Ne0inhk