SQL Injection-Http请求的参数中对特殊字符的处理
1、背景:最近学习webgoat到了SQL Injection的这一课,要完成这一课需要拦截Http请求,修改参数,不过在修改的参数中加入特殊字符才能完成。下面让我们一起来学习吧。
2、题目:

大致翻译一下题目:使用SQL注入的方式绕过认证。使用SQL注入的方式登录boss的账号Neville,而不是用正确的密码。验证Neville的档案可以被浏览,所有的功能都是可用的。(这些功能包括查询、创建和删除)
3、可是我怎么知道Neville的密码?......题目说了是SQL注入。那我们就开始吧。
①password绝大多数都是以字符串的形式存储的,所以这里肯定是字符串注入。注入的形式一般是 test' or '1'='1 此时就遇见了需要在Http请求参数中写特殊字符
②随便找一个输入框,输入以上的内容,然后向服务器发送请求,看见了编码后的参数, test%27+or+%271%27%3D%271
4、查阅资料,发现规律是%+ASCII码。现在就把我用到的总结如下【随时更新,欢迎补充】
| 特殊字符 | 编码 |
| 空格 | + |
| 单引号 |
%27
|
| 等号 |
%3D
|
SQL Injection-Http请求的参数中对特殊字符的处理的更多相关文章
- ajax请求在参数中添加时间戳
ajax请求在参数中添加时间戳 参考网址
- http请求参数中包含特殊字符的严重后果,比如:#
URL请求中不能包含特殊符号,比如:# 今天在调接口,突然发现接口参数中传递的数据没有完全接收到controller层的model模型中,反反复复测了好几遍,真不信这个邪了,头晕脑胀的时候才关注到UR ...
- ajax请求参数中含有特殊字符"#"的问题 (另附上js编码解码的几种方法)
使用ajax向后台提交的时候 由于参数中含有# 默认会被截断 只保留#之前的字符 json格式的字符串则不会被请求到后台的action 可以使用encodeURIComponent在前台进行编码, ...
- 在请求的参数中设置可选值列表为当前职责可访问的所有OU
方法一: 实现此需求的前提之一是为该请求开启多业务实体访问,开启方法 系统管理员->系统管理->并发->程序,进入OAF页面,查询你的并发,然后点更新,选择请求,在业务实体模式下选择 ...
- PHP获取不到url传递参数中#&等特殊字符解决方法
有些符号在URL中是不能直接传递的,无法传入PHP处理,比如#&等符号,通过$_GET是获取不到的,比如一个域名https://localhost/url.php?url=yangyufei+ ...
- XSS工具类,清除参数中的特殊字符
package com.xss; import java.util.regex.Pattern; /** * XssUtil 工具类 */ public class XssUtil { static ...
- java 发送post请求参数中含有+会转化为空格的问题
如题 原因分析:参数在传递过程中经历的几次编码和解码标准不同,导致加号.空格等字符的错误. 解决方案:将post请求的参数中 ,含有+号的,统统采用%2B 去替换,这是URL的协议问题.
- PHP+MYSQL网站SQL Injection攻防
程序员们写代码的时候讲究TDD(测试驱动开发):在实现一个功能前,会先写一个测试用例,然后再编写代码使之运行通过.其实当黑客SQL Injection时,同样是一个TDD的过程:他们会先尝试着让程序报 ...
- HP+MYSQL网站SQL Injection攻防
WebjxCom提示:程序员们写代码的时候讲究TDD(测试驱动开发):在实现一个功能前,会先写一个测试用例,然后再编写代码使之运行通过.其实当黑客SQL Injection时,同样是一个TDD的过程: ...
随机推荐
- 使用Python+turtle绘制同心圆
问题描述:数学定义上是指:同一平面上同一圆心而半径不同的圆.简单来说就是:圆心相同半径不同的圆,如果几个圆的圆心是同一点,那么这几个圆就叫做同心圆. 本文使用turtle绘制一个类似“箭靶”的同心圆. ...
- redis基本数据结构
redis5中数据类型
- flask sqlchemy 多对多的自引用关系定义
多对多的定义可以使用关联表,或者重新定义一个模型,通过模型定义多对多的自引用在flask web开发书里有讲到,这里主要演示用关联表定义的方法. from flask_sqlalchemy impor ...
- 如何能快速的成为一个年薪20万的Java程序员,你都需要具备哪些技术?史上最全的java学习路线!
看好了,绝对不是单纯的初级视频,一个朋友在某机构学习,把每天老师讲课的视频代码和笔记全部整理出来了,需要的抓紧时间联系我! 一级目录截图 其中还包含时下最火的分布式和外服务的技术哦,请看07和08 ...
- 多个Gesture响应原理
默认情况下,一个响应链上只能响应一个Gesture,不过每个Gesture都可以设置一个delegate,当某个gesture的代理方法shouldRecognizeSimultaneouslyWit ...
- 执行makemigrations后错误集锦
在项目配置xadmin后,执行python manage.py makemigrations后出现了很多问题: 1.ModuleNotFoundError: No module named 'futu ...
- ssl简介与openssl的使用
SSL证书: 是数字证书的一种,类似于驾驶证.护照和营业执照的电子副本.因为配置在服务器上,也称为SSL服务器证书. ssl也是传输协议. 基于ssl协议开发的一款软件叫openssl linux系 ...
- css预处理器:Sass LASS Stylus
语法 Sass h1 { color: #0982C1; } h1 color: #0982c1 LESS h1 { color: #0982C1; } Stylus /* style.styl */ ...
- fiddler抓取https请求
Fiddler抓取https设置详解(图文):https://www.cnblogs.com/joshua317/p/8670923.html Fiddler要抓取到https请求我们还需要Fiddl ...
- c#遍历一个对象中所有的属性和值
SpDictItem sp = GetCFHObject.GetSpItem("); PropertyInfo[] propertys = sp.GetType().GetPropertie ...