代码审计之jsp+servlet模式从客户端接收参数的函数大全
2016-06-24 17:12
399 查看
在java代码审计的过程中,jsp+servlet架构的形式是我们学习javaweb开发的基础,虽然它不如SpringMVC框架流行,但是在view层的处理还大多依赖于jsp,jsp作为用户和服务器操作数据的入口,我们总结一下jsp的输入函数还是十分必要的。安全的威胁也是主要来自于客户端的输入,如果我们对客户端的数据数据在后台有严格的校验,那么我们也就能更深层次的保护我们的网站安全。在java代码审计的过程中,对数据流进行跟踪也是一种常用的审计方法。我们就总结并验证了一下jsp中接收客户端数据的函数。首先我们介绍这个HttpServletRequest类。这个类主要接收客户端请求的类。我们分析的大部分函数也都是在这个类中。
jsp中EL表达式获取客户端内容
HtppServletRequest对象 获得客户端请求参数方法 request.getParameter(String name) 接收参数的多个值的方法(一个参数多个值情况) request.getParameterValues(String name) 接收参数的名字 request.getParameterNames() 接收参数的名字和值 request.getParameterMap() 获取客户机请求头方法 request.getHeader(string name) request.getHeaders(String name) request.getHeaderNames() 调用此方法来读取来自客户端表单的数据流 request.getInputStream() request.getReader() 获取客户端发送的请求cookie request.getCookies() 获取参数和值 request.getQueryString() 获取客户端发出请求时的网站url request.getRequestURL() 返回请求文件内容的长度,返回值类型为int,长度伪造 request.getContentLength() 获取请求文件内容的类型 request.getContentType()
jsp中EL表达式获取客户端内容
EL表达式 ${param.name} 相当于request.getParamter(name) ${paramvalues.name} 相当于request.getParamtervalues(name) ${header.name} 相当于request.getHeader(name) ${headerValues.name} 相当于request.getHeaderValues(name) 获取带有特定名称的第一个cookie值 ${cookie.name.value} 获取请求的参数字符串 ${pageContext.request.queryString} 获取请求的URL,但不包括请求的参数字符串 ${pageContext.request.requestURL}
相关文章推荐
- javascript设计模式学习之五——策略模式
- JavaScript中的一些特殊用法(四)
- js 离散文件合并到一个js(调试)
- js 打包 压缩后台代码 (java)
- JS全局变量和局部变量最新解析
- js原型链原理看图说明
- javascript:void(0)是什么意思?JS的几种跳转
- <script type="text/html"></script> js模版使用
- jsp页面中EL表达式不能被解析
- JavaScript笔记整理——驯服线程和定时器
- 学习Javascript 网址
- JS编码解码
- JS解析json数据(如何将json字符串转化为数组)
- Javascript中Function类型(不能错过!)
- Ubuntu 搭建JSP 环境
- 判断json格式中是否含有key
- javascript函数复习
- JavaScript强化教程——从简到繁
- org.json的基本用法
- js交互