关于sql注入的简要演示
文章分类:周稿 团队成员:sundy
首先可能大家都会问什么是sql?
Sql是数据库的一种类型,是用来存储网站数据的。
每当我们点开一个网站,就会从网站的数据库中获取相关的内容。
我们来梳理一下访问网页的简图:
看完这个以后,我们发现一个问题,当我们对发送数据这块动足够脑筋的时候,只要输入合理是可以做很多事情的,我们可以利用其方式获取很多内容。
接下来我们来讲解一下 “ ’ ” 这个符号在sql中的运用
首先 ’ 在sql中闭合一句话结束,如果这句话用的是 ’ 来闭合,那么我们人为的加入 ’ 是不是可以在后面接新的语句了呀?接新的句子就可以做自己想要做的事情了。
当然,如果大家想要真的理解还是要多学学sql和asp等语言。
接下来我们来开始演示吧~
接下来步入正轨,进入域名以后,我们会发现网站是要我们输入id的,所以在这里按照sql的要求输入
http://localhost/sqli/Less-1/?id=1
这里的?Id=1是数据库的进入的格式,想要回去对应的数据变数字就行了。
http://localhost/sqli/Less-1/?id=2
接着变换id,我们发现有多个账户密码,这些都是这个网站对应的数据库里面的内容。也是数据库里面对应的路径。
接下来就是重点了,当我们在http://localhost/sqli/Less-1/?id=1后面加入 ’ 时候,我们来看一下
我们发现这个网站出现了报错,并且出现了错误信息的一个反馈
''1'' LIMIT 0,1'
这是由于我们加入 ’ 引起的,我们来看一下这个报错语句,分析一下它,去掉最外层的 ‘’ 得到 '1'' LIMIT 0,1 我们发现这个数据库有限制,输出只能是一行。
因为我们加入了’闭合了语句,那么结合后面的内容,我们可以在’后面补充一些句子来得到更多的内容,在这里我想获取数据库用户名,一般默认user
http://localhost/sqli/Less-1/?id=1’and updatexml(1,concat(0x7e,user()),0)%23
%23就是’的意思。 是#url编码之后的值,因为sql语句在进入数据查询的时候会进行一次url解码,所以这个地方必须是url编码之后的值
这里我们看到出现了
~root@localhost
也就是数据库的用户名是 root
接下来我要查询数据库名称
http://localhost/sqli/Less-1/?id=1’ and updatexml(1,concat(0x7e,datebase()),0)%23
这里因为我把数据库文件名字改了所以没有查出来,当然,如果你知道的够多,这里还有很多种做法,这里的datebase的名字是可以猜解出来的。
关于sql注入的简要演示的更多相关文章
- 十二:SQL注入之简要注入
SQL注入漏洞将是重点漏洞,分为数据库类型,提交方法,数据类型等方式.此类漏洞是WEB漏洞中的核心漏洞,学习如何的利用,挖掘,和修复是重要的. SQL注入的危害 SQL注入的原理 可控变量,带入数据库 ...
- sql注入之简要注入
#mysql简要注入流程 mysql注入简要流程如下图: 由于还没学习完先结合sqlilabs的第一关讲解信息收集的一部分和数据注入的information_schema的有据查询. #sqli-la ...
- S-CMS企业建站v3几处SQL注入
0x01 前言 有段时间没有发文章了,主要没挖到比较有意思的漏洞点.然后看最近爆了很多关于S-CMS的漏洞,下载了源码简单挖了一下然后给大家分享一下. 0x02 目录 Wap_index.php sq ...
- SQL注入(SQL Injection)案例和防御方案
sql注入(SQL Injection):就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令. SQL注入攻击的主要危害包括:非法读取.篡 ...
- JDBC基础:JDBC快速入门,JDBC工具类,SQL注入攻击,JDBC管理事务
JDBC基础 重难点梳理 一.JDBC快速入门 1.jdbc的概念 JDBC(Java DataBase Connectivity:java数据库连接)是一种用于执行SQL语句的Java API,可以 ...
- 安全防御之防xss、SQL注入、与CSRF攻击
XSS攻击 个人理解,项目中最普通的就是通过输入框表单,提交js代码,进行攻击例如在输入框中提交 <script>alert("我是xss攻击");</scrip ...
- [视频]K8飞刀 SQL注入点脱库演示教程
K8飞刀 SQL注入点脱库演示动画教程 链接:https://pan.baidu.com/s/15gLTxiv9v1Te5QNFZnfV4A 提取码:eaa1
- 简要了解web安全之sql注入
什么是sql注入? 通俗来讲就是通过 将可执行sql语句作为参数 传入查询sql 中,在sql编译过程中 执行了传入进来的恶意 sql,从而 得到 不应该查到或者不应该执行的sql语句,对网站安全,信 ...
- 浅谈SQL注入风险 - 一个Login拿下Server
前两天,带着学生们学习了简单的ASP.NET MVC,通过ADO.NET方式连接数据库,实现增删改查. 可能有一部分学生提前预习过,在我写登录SQL的时候,他们鄙视我说:“老师你这SQL有注入,随便都 ...
随机推荐
- 更改Eclipse里的Classpath Variables M2_REPO
M2_REPO这个classpath variable 是不能改变的. 为什么 Eclipse 里的 Classpath Variables M2_REPO 无法修改(non modifiable) ...
- fork后父子进程文件描述问题
[fork后父子进程文件描述问题] 一张图可以浅析的解释: 参考:http://wenku.baidu.com/view/dd51581bff00bed5b9f31d8e.html
- Axure 原型图 (转)
Axure RP是很有名的一个界面原型设计工具,可以灵活快捷的对C/S.B/S程序设计原型. 近期我要开发一个Android客户端,也打算使用Axure RP设计原型. 下载地址:http://pan ...
- linux install jupyter notebook
install sudo pip install jupyter notebook start sudo jupyter notebook 一般,文件目录默认在你启动的位置.你可以在notebook里 ...
- Python3 hex() 函数
Python3 hex() 函数 Python3 内置函数 描述 hex() 函数用于将一个指定数字转换为 16 进制数. 语法 hex 语法: hex(x) 参数说明: x -- 一个整数 返回值 ...
- Luogu 3321 [SDOI2015]序列统计
BZOJ 3992 点开这道题之后才发现我对原根的理解大概只停留在$998244353$的原根是$3$…… 关于原根: 点我 首先写出$dp$方程,设$f_{i, j}$表示序列长度为$i$当前所有数 ...
- CoreText
[CoreText] Core Text is designed for development of higher-level text-handling frameworks. General ...
- rabbitmq用户权限管理
原文地址: http://my.oschina.net/hncscwc/blog/262246 安装最新版本的rabbitmq(3.3.1),并启用management plugin后,使用默认的账号 ...
- UVa 506 System Dependencies (细节问题)
题意:输入几种指令,让你进行模拟操作,指令如下: DEPEND item1 item2 (item3 ...) 安装item1需要先安装item2(.item3……) INSTALL item1 安装 ...
- C++笔记16之const的用法总结
const主要是为了程序的健壮型,减少程序出错. 最基本的用法: const int a=100; b的内容不变,b只能是100也就是声明一个int类型的常量(#define b =100) int ...