常见提交方式下的注入漏洞

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,万能密码注入的更多相关文章

  1. 深入浅出带你玩转sqlilabs(四)-updatexml(),floor(),extractvalue()报错注入

    SQL各种参数类型下的注入测试 数字型-sqlilabs less2 前面文章已演示过 字符型-sqlilabs less1 前面文章已演示过 搜索型-自写测试 如: www.test.com/ind ...

  2. 深入浅出带你玩转sqlilabs(二)

    MYSQL高权限注入 mysql跨库注入 详情请看上一篇:深入浅出带你玩转sqlilabs(一) mysql文件操作注入-sqlilabs less7 可能用到的函数: into outfile()函 ...

  3. 深入浅出带你玩转sqlilabs(一)

    一.MySQL数据库结构分层 1.1库名,表名,列名,数据库用户等 Mysql数据库结构示例: 数据库A zblog = www.zblog.com 表名 列名(字段) 数据 数据库B dede = ...

  4. 深入浅出带你玩转sqlilabs(五)-布尔/延时盲注与二次注入

    SQL测试-基于布尔,延时盲注 布尔,延时注入常用到的判断语句 regexp regexp '^xiaodi[a-z]' 匹配xiaodi及xiaodi...等 if if(条件,5,0) 条件成立 ...

  5. TOM带你玩充电 篇三:15款5号电池横评及选购建议——南孚金霸王小米宜家耐时品胜一个都逃不了

    双鹿电池的几个版本 理论上来说性价比:绿骑士>金骑士>黑骑士>蓝骑士 绿骑士和金骑士都很不错.哪个便宜买哪个. 小米性价比虽然最高,但是超市买不到. 蓝骑士是普通碳性电池,黑骑士是高 ...

  6. 老猪带你玩转自定义控件三——sai大神带我实现ios 8 时间滚轮控件

    ios 8 的时间滚轮控件实现了扁平化,带来很好用户体验,android没有现成控件,小弟不才,数学与算法知识不过关,顾十分苦恼,幸好在github上找到sai大神实现代码,甚为欣喜,顾把学习这个控件 ...

  7. SQL注入之Sqli-labs系列第十一关(基于单引号的万能密码注入)

    本来以前写过sqli-labs的实战文章,但由于搞了事情,自己的服务器IP被封了,到期后又不太想续了,就一直没管.心酸的痛,都懂的....... 好了,最近这两天一口气写完前十关GET型的,现在到了P ...

  8. 来吧!带你玩转 Excel VBA

    来吧!带你玩转 Excel VBA 从错失良机到艰辛的DOS征程,从坎坷购机自学路到转机起程,从爱好到事业,他从一个完全不懂电脑的人到VBA高级应用者,一切全是自学…… 我是罗刚君,来自四川的一个小县 ...

  9. 转: 带你玩转Visual Studio——带你理解多字节编码与Unicode码

    上一篇文章带你玩转Visual Studio——带你跳出坑爹的Runtime Library坑帮我们理解了Windows中的各种类型C/C++运行时库及它的来龙去脉,这是C++开发中特别容易误入歧途的 ...

随机推荐

  1. SpringMVC-04 数据处理及跳转

    SpringMVC-04 数据处理及跳转 结果跳转方式 1.ModelAndView 设置ModelAndView对象 , 根据view的名称 , 和视图解析器跳到指定的页面 . 页面 : {视图解析 ...

  2. AtCoder Beginner Contest 171-175 F

    171 F - Strivore 直接把初始字符当成隔板,统计的方案数会有重复 为了避免重复情况,规定隔板字母尽可能最后出现,即在隔板字母后面不能插入含隔板字母的字符串 所以在隔板字母后插入的字符只有 ...

  3. 爬虫必知必会(7)_scrapy框架高级

    一.请求传参 实现深度爬取:爬取多个层级对应的页面数据 使用场景:爬取的数据没有在同一张页面中 在手动请求的时候传递item:yield scrapy.Request(url,callback,met ...

  4. 【odoo14】第八章、服务侧开发-进阶

    本章代码位于作为GITHUB库 https://github.com/PacktPublishing/Odoo-14-Development-Cookbook-Fourth-Edition 在第五章( ...

  5. golang io操作之写篇

    /** * @author livalon * @data 2018/9/4 15:11 */ package main import ( "os" "fmt" ...

  6. 聊一聊桥接(JSBridge)的原理

    一.前言 如今的互联网时代也称移动互联网时代,基本上每个人每天都会花费大量时间在移动设备上,早期的移动端应用大都使用原生开发(android,ios),而现在的移动开发技术选型上基本都是混合开发(Hy ...

  7. 在linux系统中登录mysql时出现Enter password: ERROR 1045 (28000): Access denied for user 'debian-sys-maint'@'localhost' (using password: YES)的解决办法

    在一次使用mysql数据库是出现了这种错误,于是乎去百度看了很多博文踩了很多坑,最终解决了问题,分享给大家. 转载与:https://blog.csdn.net/css33/article/detai ...

  8. 微信小程序应用开发-手动创建

    基础知识: index.wxml的代码为 Html,有很多标签,如等 index.wwss相当于css 即样式 index.js中有很多函数,可自定义 操作步骤: 删除app.json文件中page/ ...

  9. 【小白学算法】5.链表(linked list)、链表的添加

    链表其实也就是 线性表的链式存储结构,与之前讲到的顺序存储结构不同. 我们知道顺序存储结构中的元素地址都是连续的,那么这就有一个最大的缺点:当做插入跟删除操作的时候,大量的元素需要移动. 如图所示,元 ...

  10. Git基本操作流程

    技术背景 Gitee是一款国内的git托管服务,对于国内用户较为友好,用户可以访问Gitee地址来创建自己的帐号和项目,并托管在Gitee平台上.既然是git的托管服务,那我们就可以先看看git的一些 ...