Sql注入(Search/GET)

大家好!!! 现如今web服务在我们的网络上遍地都是,各个终端设备成为我们看不见的客户,web服务也成为公司的招牌。80 443为我们展现的视角也是多姿多彩但背后新闻爆出的安全风险事故有时也让我们触目惊心,近年来随着各个公司网络安全意识不断提高发生的安全事故也明显下降,但更高级的攻击手段也时时刻刻让企业面临着挑战。如今不妨让我们了解一下这些攻击的原理,对这些手段也做一个了解。

(本章内容)我们以sql注入为例,Sql注入的方法类型有多种方式(get型,post型,表单的,存储型的,盲注的),我们根据类型一个个的进行讲解

各种的手法有各自的特点注入的地点有些不相同,但原理上大致相同头一篇都已较为简单的注入来介绍方便大家理解。(下面进入正题)

首先观察这个页面有一个查询电影的出入框,点击search后我们发现下面列出了列表

当我们在图中输入框里面简单的加一个单引号的时候整个页面发生了变化,通过报错的内容来看单引号让整个语句出现了问题,并直接爆出来这是一个sql语句的问题。这样注入点我们就找到了。

因为输入的是电影名字,我们随便复制上一张图片中的一个电影名将他输进去查询一下,有结果显示所以这是一个字符形的。

通过--+将原来后面的sql语句注释掉。(sql中--+和#代表这注释我们添加这个是为了不让后面的sql语句执行。  在url里面#我们要编码一下给写成%23这样系统才会认这个字符。)

(title=***)找到这个注入点以后我们要进行列的判断,找出这个表里面有几列,把列的位置一一列出来则样做的目的是为了让页面中的sql语句完整不报错。我们可以通过Order by (X)是查询这个表里有几个列(字段)当X大于正确的列数页面就会报错小于则显示正常页面。 首先输入一个较大的数然后用二分法进行筛选。例如先输入20 然后10。。。。5。。。根据页面现实的内容进行加减。

当输到order by 8报错order by 7 的时候页面又恢复了正常这就可以确定7这个数字是一个“分水岭”这表名张表里面有7列。

列已经确定了出来了是7列,这个时候第一个想到的是找到显示位用联合查询的方法进行查询,因为这样的效率是最高的。

Union select 1,2,3,4,5,6,7 用这条语句将7个字段占上。 最后在图上明显的看到2345说明这七个字段中只有2345是显示位。

这个时候就可以随便找一个显示位进行查询了(我以2号显示位做的演示)

这时候就用到之前讲过的数据库与sql相关知识了,通过查询mysql自带的关键数据库进行查询(所有的重要信息在information_schema这个库里都有一一对应 我们利用的是这个特点)

select schema_name from information_schema.schemata;

为了不出错我们用group_concat方法将 schema_name信息包裹起来输出到一个位置里面

我们将这些库名复制出来做个记录

查完库了现在开始查表 我们对这里面的一个库进行一个查表的操作

这样表名被查出来了

将这个库里面的的表名记下来

现在去探测列名 这里面应该有好几个user表。。。。(这么多的列应该是好几个user表里面的)

把这些列记下来

这些列里面有许多是重复的,应该在where后面再加一个条件,我们不管这些只找我们关心的用户名密码这是最重要的

Select 用户 from 那个库下的那个表

从始至终一直在围绕着information_schema在获取先决条件,以上就是对sql注入全过程的基本操作。

webgote的例子(2)Sql注入(SearchGET)的更多相关文章

  1. SQL注入(二)

    5.限制输入长度 如果在Web页面上使用文本框收集用户输入的数据,使用文本框的MaxLength属性来限制用户输入过长的字符也是一个很好的方法,因为用户的输入不够长,也就减少了贴入大量脚本的可能性.程 ...

  2. sql注入原理详解(一)

    我们围绕以下几个方面来看这个问题: 1.什么是sql注入? 2.为什么要sql注入? 3.怎样sql注入? 1.什么是sql注入? 所谓SQL注入,就是通过把SQL命令插入到Web表单递交或输入域名或 ...

  3. 预防SQL注入笔记

    SQL注入如何预防? 本文参考自owasp,重点是提供清晰,简单,可操作的指导,以防止应用程序中的SQL注入漏洞.不幸的是,SQL注入攻击很常见,这是由于两个因素: SQL注入漏洞的显着流行 目标的吸 ...

  4. 讲sql注入原理的 这篇不错(有空可以看看)

    我们围绕以下几个方面来看这个问题: 1.什么是sql注入? 2.为什么要sql注入? 3.怎样sql注入? 1.什么是sql注入? 所谓SQL注入,就是通过把SQL命令插入到Web表单递交或输入域名或 ...

  5. webgote的例子(3)Sql注入(SearchPOST)

    Sql注入(Search/POST) (本章内容):post的方式进行注入 今天来讲一下sql注入的另一个例子(post) 上一个用的是get请求的方法将我们的参数传到服务器进行执行 上图中的标红是需 ...

  6. webgote的例子(4)Sql注入(SelectGET)

    SQL Injection (Select/GET) 本章内容 (查询显示中要注意的错误) 这里面我们看一下 movie的数值,选择表单中的当我们选择的二个的时候 move的值也变成了第二个,选择表单 ...

  7. webgote的例子 数据库与sql注入的相关联系(1)

    大家好我是时光凉春衫薄 之前将讲的sql注入有点随便了我同事也觉得有些地方看不懂,往后的几天我尽量写的细一点.尽可能让大家能看懂.(新手出道大佬多多指教.欢迎评论批评.) 数据库与sql注入的相关联系 ...

  8. sql 注入例子及防止

    一.什么是sql注入? 所谓SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令 二.sql例子 1.数字注入 假设在项目中,在 ...

  9. C#语言Winform防SQl注入做用户登录的例子

    using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using Sy ...

随机推荐

  1. 在dbgrid中如何多行选中记录(ctl与shift均可用)

    在dbgrid中如何多行选中记录(ctl与shift均可用),设置dbgrid的dgmultiselect为true,只有ctl好用而shift不好用,如何使shift也好用 Dbgrid源代码:pr ...

  2. 使用JMeter录制Web应用测试脚本

    环境 操作系统:Windows 7 工具:JMeter.Badboy 1. 使用代理录制Web性能测试脚本 使用代理录制脚本来创建测试计划无疑是一个简便的方法,代理所要完成的工作就是录制发往服务器的请 ...

  3. HDU4787_GRE Words Revenge

    这个题目做得泪牛满面. 题目为给你若干串,有的表示添加一个串,有的表示询问一个串有多少个字串为前面出现过的串. 题目一看就知道肯定是AC自动机(不过后缀自动机也是可以的) 但是细想就会发现AC自动机好 ...

  4. CTSC2012-Cheat

    题意 给出一些母01串,多次询问,每次询问一个01串,问一个最大的\(L\),使得可以在询问串中选出若干个不相交的,长度大于等于\(L\)的子串,这些子串都在母串中出现过,且子串的长度和大于等于询问串 ...

  5. BZOJ 2190 仪仗队(线性筛欧拉函数)

    简化题意可知,实际上题目求得是gcd(i,j)=1(i,j<=n)的数对数目. 线性筛出n大小的欧拉表,求和*2+1即可.需要特判1. # include <cstdio> # in ...

  6. 最大流Dinic算法模板(pascal)

    program rrr(input,output); const inf=; type pointer=^nodetype; nodetype=record t,c:longint; next,rev ...

  7. 【Java】判断字符串是否包含子字符串

    JAVA里面判断: public static void main(String[] args) { String str="ABC_001"; if(str.indexOf(&q ...

  8. QTREE6 - Query on a tree VI 解题报告

    QTREE6 - Query on a tree VI 题目描述 给你一棵\(n\)个点的树,编号\(1\)~\(n\).每个点可以是黑色,可以是白色.初始时所有点都是黑色.下面有两种操作请你操作给我 ...

  9. apue.3e 的安装 (基于ubuntu12.0.4)

    本菜刚刚学习UNIX下高级编程,无奈搭建本书编程环境时遇到不少问题.幸好网上有各种大神的解决办法让我最终解决了问题.在这里感谢为LINUX开源操作系统奋斗的大神. 不过话说回来,网上大都是针对UNIX ...

  10. mac os 启动服务命令 launchctl

    参考苹果开发者网址 https://developer.apple.com/library/mac/documentation/MacOSX/Conceptual/BPSystemStartup/Ch ...