深入浅出带你玩转sqlilabs(三)--GET,POST,COOKIE,万能密码注入
常见提交方式下的注入漏洞
WEB应用在数据传递接受中,针对SQL注入安全漏洞,由于数据大小,格式等原因,脚本在接受传递时会有多种传递方式,传递方式的不同将影响到安全测试的不同
第一点:数据常见提交方式
https://www.cnblogs.com/weibanggang/p/9454581.html

get与request提交方式:
本地测试,直接使用链接传参,各种提交方式的效果如下图,get与request提交方式本地有回显,说明这两个提交方式可以通过链接传参发送到服务器

post提交方式:
给服务器同时本地echo回显:用post data插件,或者用burpsuite抓包改数据

cookie提交方式:
用burpsuite直接在响应正文插入cookie值


$_SERVER['HTTP_ACCEPT']的作用(头部注入)

post注入:11关
先输入账户加个’看看报错

分析:

参数有第2对单引号进行闭合,就好办了

注意:注入的方式有三个:post data插件,burpsuite抓包改包,还有直接在框里面直接填
这里推荐用post data插件,简单直观,先右键查看源代码表单哪些元素要post提交的

就这三个元素(提交的时候一个也不能漏)
后台源码中uname有单引号,我们可以进行闭合

用uname参数进行闭合(三个参数之间用&连接)
uname=-gsdftg' order by 2#&passwd=pass&submit=Submit
报错负号(显示错误信息),闭合单引号(执行我们的命令),注释负号#(不使用--+注释的原因是:POST参数不经过url编码,命令传输到后端注释符变不了标准注释符:-- (后面有空格))

注入成功
cookie注入:20关
随便输入表单,抓一下包,第一个包(POST包)是登录验证的请求包,将cookie存储在服务器同时在本地留下session信息

再里面加个cookie信息,然后放过去
第二个包(GET包)直接验证cookie,与第一个包相互匹配,一样改个cookie,放过去


登录成功,查看历史包找到GET包,改包

报错

报错,注释,一把梭

补充:request请求方式是包含其他请求方式(GET,POST,COOKIE等)的,也就是说,用其他请求方式请求的数据,request请求也可以做到,这个适用范围就很广了,如bypass方面等
万能密码(POST登录框):11关
在登录框输入(知道用户名admin)
先来看一下正常登陆进去的界面,正确的账号密码都是admin


同时抓包看看数据传输与SQL语句执行

可以看到这里的uname与passwd参数传递到SQL语句中的username与password参数中进行查询,由于①username and ②password 的逻辑判断:真and真=真,所以可以登录成功,那么我们只需要构造一个逻辑判断为真的SQL参数,即可进行万能登录的操作
比如在用户名输入框中输入:
admin' or '1'='1# //逻辑判断:真或真=真,可登录,最后别忘了用#号注释掉后面的SQL语句

或者
admin' or 1=1# 真或真=真

或者
admin'and ''=''# 真或假=真

或者
admin'or' 真或假=真

在登录框输入(未知用户名)
思路一样,只是将username参数变为假,password为真的“or”判断
'or '1'='1'limit 1# 假或真=真 (limit语句要不要都一样)

深入浅出带你玩转sqlilabs(三)--GET,POST,COOKIE,万能密码注入的更多相关文章
- 深入浅出带你玩转sqlilabs(四)-updatexml(),floor(),extractvalue()报错注入
SQL各种参数类型下的注入测试 数字型-sqlilabs less2 前面文章已演示过 字符型-sqlilabs less1 前面文章已演示过 搜索型-自写测试 如: www.test.com/ind ...
- 深入浅出带你玩转sqlilabs(二)
MYSQL高权限注入 mysql跨库注入 详情请看上一篇:深入浅出带你玩转sqlilabs(一) mysql文件操作注入-sqlilabs less7 可能用到的函数: into outfile()函 ...
- 深入浅出带你玩转sqlilabs(一)
一.MySQL数据库结构分层 1.1库名,表名,列名,数据库用户等 Mysql数据库结构示例: 数据库A zblog = www.zblog.com 表名 列名(字段) 数据 数据库B dede = ...
- 深入浅出带你玩转sqlilabs(五)-布尔/延时盲注与二次注入
SQL测试-基于布尔,延时盲注 布尔,延时注入常用到的判断语句 regexp regexp '^xiaodi[a-z]' 匹配xiaodi及xiaodi...等 if if(条件,5,0) 条件成立 ...
- TOM带你玩充电 篇三:15款5号电池横评及选购建议——南孚金霸王小米宜家耐时品胜一个都逃不了
双鹿电池的几个版本 理论上来说性价比:绿骑士>金骑士>黑骑士>蓝骑士 绿骑士和金骑士都很不错.哪个便宜买哪个. 小米性价比虽然最高,但是超市买不到. 蓝骑士是普通碳性电池,黑骑士是高 ...
- 老猪带你玩转自定义控件三——sai大神带我实现ios 8 时间滚轮控件
ios 8 的时间滚轮控件实现了扁平化,带来很好用户体验,android没有现成控件,小弟不才,数学与算法知识不过关,顾十分苦恼,幸好在github上找到sai大神实现代码,甚为欣喜,顾把学习这个控件 ...
- SQL注入之Sqli-labs系列第十一关(基于单引号的万能密码注入)
本来以前写过sqli-labs的实战文章,但由于搞了事情,自己的服务器IP被封了,到期后又不太想续了,就一直没管.心酸的痛,都懂的....... 好了,最近这两天一口气写完前十关GET型的,现在到了P ...
- 来吧!带你玩转 Excel VBA
来吧!带你玩转 Excel VBA 从错失良机到艰辛的DOS征程,从坎坷购机自学路到转机起程,从爱好到事业,他从一个完全不懂电脑的人到VBA高级应用者,一切全是自学…… 我是罗刚君,来自四川的一个小县 ...
- 转: 带你玩转Visual Studio——带你理解多字节编码与Unicode码
上一篇文章带你玩转Visual Studio——带你跳出坑爹的Runtime Library坑帮我们理解了Windows中的各种类型C/C++运行时库及它的来龙去脉,这是C++开发中特别容易误入歧途的 ...
随机推荐
- linux时间问题
如果遇到创建时间和更新时间,不一致,先将时间调整为一致. 导致不一致的原因可能是时区不对,使用 tzselect ,将时区调整为Asia/Shanghai , cp /usr/share/zonein ...
- XUPT-D
/* 泰泰学长又来玩数字了,泰泰学长想让你帮他求1-n的和,但是这次的求和可不是简单的1+2+...+n. 这次的求和是这样的,如果加到一个数字是2的指数倍,那就不加,反而减掉这个数. ...
- vue 倒计时 iOS无效
vue实现的倒计时在苹果手机上无效,原因是因为后台返回的时间格式是'2019-1-29 17:13:04',而苹果手机只能解析这种时间格式'YYYY/MM/DD HH:mm:ss',修改后测试成功的代 ...
- editplus更改编码
1.在Tools下拉后选择Configure User Tools 2.在左边导航菜单找到File,对应右边视图中的Default encoding 3.将编码更改为utf-8,点击底部的OK保存.
- CodeMonkey少儿编程第7章 函数
目标 了解函数是什么 掌握如何定义一个函数 函数是什么 本章我们学习一个新的概念----函数. 你可以简单的将函数看作为一个黑匣子,给它输入参数后,它将会按照一定的规则,执行相应的指令或输出数据. 让 ...
- 关于go中并发的初步理解
1.一些概念的介绍: 概念 描述 进程 在内存中的程序.有自己独立的独占的虚拟 CPU .虚拟的 Memory.虚拟的 IO devices. (1) 每一进程占用独立的地址空间. 此处的地址空间包括 ...
- vue全家桶和react全家桶
vue全家桶:vue + vuex (状态管理) + vue-router (路由) + vue-resource +axios +elementui react全家桶 : react + re ...
- find文本处理(locate)实例学习记录
find文本处理(locate)实例学习记录 (一)按文件名称查找 按照文件名称查找是 find 最常见的用法,需要注意的是,搜索的文件名必须完全匹配,才能找到对应的文件. 1. 查找当前目录下所有 ...
- P1055_ISBN号码(JAVA语言)
题目描述 每一本正式出版的图书都有一个ISBN号码与之对应,ISBN码包括9位数字.1位识别码和3位分隔符, 其规定格式如x-xxx-xxxxx-x,其中符号-就是分隔符(键盘上的减号), 最后一位是 ...
- 深入理解Java并发框架AQS系列(三):独占锁(Exclusive Lock)
一.前言 优秀的源码就在那里 经过了前面两章的铺垫,终于要切入正题了,本章也是整个AQS的核心之一 从本章开始,我们要精读AQS源码,在欣赏它的同时也要学会质疑它.当然本文不会带着大家逐行过源码(会有 ...