- 浏览: 468969 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (288)
- Java (70)
- Web (11)
- JSP (18)
- JavaScript (25)
- JQuery (22)
- HTML (7)
- CSS (2)
- Struts2.X (6)
- Ibatis/Mybatis (6)
- Hibernate (4)
- Spring (8)
- Oracle (23)
- MySql (9)
- Apache (1)
- Tomcat (9)
- Weblogic (2)
- Maven (6)
- Flex (0)
- Junit (2)
- Test (1)
- SVN (6)
- GIS (3)
- Android (1)
- Eclipse (10)
- Thread (3)
- JVM (1)
- Cache (2)
- Design pattern (1)
- Nosql (3)
- Linux (10)
- Hudson/Jenkins (1)
- MQ (1)
- Network (2)
- 生活工作 (5)
- 架构师之路 (6)
- 知识精华荟萃 (9)
- Interview (13)
最新评论
-
276847139:
方法很有效,我的问题就在是在父项目的.classpa ...
手动添加Maven Dependencies -
coosummer:
推荐使用http://buttoncssgenerator.c ...
button css 样式 -
lqz2012:
DBFFileReader是外部框架里面的吧,不是JDK的。楼 ...
java读取dbf文件 -
xudongcsharp:
lx13345 写道java.lang.NoSuchMetho ...
Spring常用错误 -
lx13345:
jar是hibernate3.3GA,ehcache-1.5. ...
Spring常用错误
巩固知识:
***********************************************
web.xml
Filter
//获取来源URL: String fromURL = request.getHeader("Referer"); // /ssm/ser.do String url = request.getRequestURI(); // http://localhost:8080/ssm/ser.do StringBuffer url_buffer = request.getRequestURL(); //常用的request头信息 out.println("Protocol: " + request.getProtocol()); out.println("Scheme: " + request.getScheme()); out.println("Server Name: " + request.getServerName() ); out.println("Server Port: " + request.getServerPort()); out.println("Protocol: " + request.getProtocol()); out.println("Server Info: " + getServletConfig().getServletContext().getServerInfo()); out.println("Remote Addr: " + request.getRemoteAddr()); out.println("Remote Host: " + request.getRemoteHost()); out.println("Character Encoding: " + request.getCharacterEncoding()); out.println("Content Length: " + request.getContentLength()); out.println("Content Type: "+ request.getContentType()); out.println("Auth Type: " + request.getAuthType()); out.println("HTTP Method: " + request.getMethod()); out.println("Path Info: " + request.getPathInfo()); out.println("Path Trans: " + request.getPathTranslated()); out.println("Query String: " + request.getQueryString()); out.println("Remote User: " + request.getRemoteUser()); out.println("Session Id: " + request.getRequestedSessionId()); out.println("Request URI: " + request.getRequestURI()); out.println("Servlet Path: " + request.getServletPath()); out.println("Accept: " + request.getHeader("Accept")); out.println("Host: " + request.getHeader("Host")); out.println("Referer : " + request.getHeader("Referer")); out.println("Accept-Language : " + request.getHeader("Accept-Language")); out.println("Accept-Encoding : " + request.getHeader("Accept-Encoding")); out.println("User-Agent : " + request.getHeader("User-Agent")); out.println("Connection : " + request.getHeader("Connection")); out.println("Cookie : " + request.getHeader("Cookie")); out.println("Created : " + session.getCreationTime()); out.println("LastAccessed : " + session.getLastAccessedTime());
***********************************************
web.xml
<filter> <filter-name>URLFilter</filter-name> <filter-class>com.shctc.util.URLFilter</filter-class> <init-param> <param-name>sqlInj</param-name> <param-value>java|String|and|exec|insert|select|delete|update|*|chr|mid|master|truncate|char|declare|;|-|+|,</param-value> </init-param> </filter> <filter-mapping> <filter-name>URLFilter</filter-name> <url-pattern>*.action</url-pattern> </filter-mapping>
Filter
public class URLFilter implements Filter{ private static final long serialVersionUID = 12345L; Logger log =Logger.getLogger(URLFilter.class); private FilterConfig config=null; private String sqlInj=""; public void init(FilterConfig config) throws ServletException{ this.config=config; log.debug("FilterConfig:"+config); sqlInj=config.getInitParameter("sqlInj"); } public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException{ HttpServletRequest req = (HttpServletRequest) request; HttpServletResponse resp = (HttpServletResponse) response; String UserIP = request.getRemoteAddr(); String requestURL = req.getRequestURL()+ req.getQueryString(); log.debug("******请求用户来源:"+req.getHeader("Referer")); log.debug("******请求用户IP地址:"+UserIP); log.debug("******请求URL:"+requestURL); String[] inj_stra=sqlInj.split("\\|"); for (int i=0; i < inj_stra.length; i++){ if (requestURL.indexOf(inj_stra[i])>=0){ log.debug("******返回主页了,因为请求URL中含有敏感字符:"+inj_stra[i]); resp.sendRedirect("page/index.action"); return; } } //如果存在下一个dofilter方法,则调用下一个过滤器的dofilter方法;否则一直停在这 chain.doFilter(request, response); } public void destroy(){ config=null; }
发表评论
-
Servlet Listener
2014-03-26 17:35 1294Listener功能 它是基于观 ... -
jsp实现download excel功能中格式问题
2012-11-26 16:48 1113<foreach> <c:set va ... -
EL 语法
2012-01-18 21:43 1937EL元素必须以${开始,以}结束。 EL元素可以出现在模板文 ... -
JSTL formatDate tag
2012-01-17 22:42 1929<fmt:formatDate> 标签用于格式化 ... -
JSP中page和pageContext的区别
2011-11-15 15:02 979page java.lang.Object 对应this ... -
使用JSTL标签 table三列换行
2011-08-29 15:00 1439<table width="90%" ... -
JSP 9 大内置对象介绍
2011-07-03 18:57 9201.request对象 客户端的 ... -
EL教程
2011-06-20 20:51 1479EL教程 一、JSP EL语言定义 EL(Ex ... -
JSTL常用
2011-04-23 17:26 1067一、JSTL判断: if判断语 ... -
解决url传中文参数时出现乱码问题
2011-04-11 17:09 1116第一种解决办法: Tomcat修改server.xml配置 ... -
简单设置-页面自动刷新或跳转
2011-04-10 22:48 1407当你做网页时,是不是有的时候想让你的网页自动不停刷新,或者过一 ... -
获取客户端IP地址
2011-04-07 12:33 1022在JSP里,获取客户端的IP地址的方法是: request.g ... -
jsp页url中传中文参数乱码的方法
2011-03-17 15:13 1247一个偶然的机会,发现了一个解决jsp页url中传中文参数乱 ... -
javaweb获取表单参数
2011-01-18 10:02 12221.关于Radio Button 比如这里有个form.htm ... -
莫名其妙的错 纠结...
2010-12-23 11:53 12592010-12-21 11:53:38 org.apache. ... -
关于jsp乱码问题的解决。
2010-11-13 22:51 998关于jsp乱码问题的解决 ... -
javaee5.0与j2ee1.4
2010-11-05 10:45 1903在新建web工程时,如果选的是javaEE5自带的jstl,仅 ...
相关推荐
6. 权限管理系统,他将精确到每个按钮,我们将在过滤器判断权限,你的代码非常简洁,只需要一个数据注解就完成了验证 7. T4模版或代码生成器,有了T4模版,妈妈再也不用当心我写代码了要熬夜了 8. MVC4 用微软自带的...
使用过滤器清除HTML属性。 使用匹配器插入组件。 自动链接URL,IP,电子邮件和主题标签。 渲染表情符号和表情符号字符。 以及更多! < Interweave xss=removed>HTML</b> and will safely be rendered!" / > < ...
从JavaScript代码中访问过滤器133 过滤器做什么与不做什么134 过滤器与DOM操作135 过滤器中代价高昂的数据变换136 不稳定的过滤器136 48摘要138 第5章创建高级表单139 51AngularJS表单与传统表单的比较139 ...
WebCruiser - Web 漏洞扫描器, 是一款轻量级但非常实用的Web安全扫描工具,能够扫描SQL注入(SQL注入), Cross Site Scripting(跨站), Local File Inclusion(本地文件包含), Remote File Inclusion(远程文件...
用户可以把自己过滤器加入FilterChain中。 你可以实现DocumentFilter接口定制自己的功能,系统实现提供了一个LinkLocalizer实现,用于替换相对连接。 FilterChain filters=new FilterChain(); DocumentFilter ...
3.9 判断编辑器中是否包含特殊字符 3.10 判断文本中回车的数量 3.11 判断字符串中有多少汉字 3.12 去除字符串的前后空格 3.13 刷新时清空所有文本框 3.14 随意改变大小的文本框 3.15 文本框的自动全选 3.16 文本框...
3.9 判断编辑器中是否包含特殊字符 3.10 判断文本中回车的数量 3.11 判断字符串中有多少汉字 3.12 去除字符串的前后空格 3.13 刷新时清空所有文本框 3.14 随意改变大小的文本框 3.15 文本框的自动全选 3.16 文本框...
实例036 在下拉菜单中显示数组中的元素 51 实例037 级联菜单的应用 52 实例038 修改数据时下拉列表的默认值为数据库中原数据信息 54 实例039 可输入字符的下拉菜单 56 实例040 应用下拉列表选择所要联机的...
LemonSMS 这个Java库可以让开发者在应用程序中集成使用GSM调制解调器或兼容电话来发送SMS消息。 远程桌面 Java Remote Desktop.tar Java Remote Desktop 是一个Java 的远程桌面软件,支持很多特性例如文件传输、...
3.3 响应数据的安全检查——XSS过滤器 52 3.3.1 IE XSS Filter的实现原理 53 3.3.2 Chrome XSSAuditor的工作原理 55 3.4 文档的预处理 56 3.4.1 浏览器对HTML文档的标准化 56 3.4.2 设置兼容模式 57 3.5 处理...
- 标签关闭提示:检测是否有未保存文件,文件修改实时修改是否修修改的按钮状态 ####fix bug:(bug解决和程序优化) - 文本文件编辑 文件名含有url编码则出错bug - 右键菜单在最下面时,右键位置重叠导致点击...
目前市场业务中在产品以及其他项目的认证和检测方面存在诸多不便,用户需要实地考察并频繁与检测单位沟通,填写繁琐的纸质检测报告、当面送递样品,对于检测环节中存在的问题难以及时交互并处理。市场上相应的检测...
系统设计之公共类库 ?Data Class Name File Function SQL访问基础类 SqlHelper.cs 执行带参数SQL,非带参数SQL,存储过程等语句 ...Function Ajax控件 分页控件 在线编辑器控件 URL重写控件 本类库为转发
【改进】 加强参数提交过滤,防止SQL注入,防止挂马,加强字符过滤 【改进】 系统可安装在二级目录,支持php5.3以上版本安装 【改进】 优化程序代码 轻松应对千万数据级别负载 【改进】 商家注册IP限制,修正发布...
【改进】 加强参数提交过滤,防止SQL注入,防止挂马,加强字符过滤 【改进】 系统可安装在二级目录,支持php5.3以上版本安装 【改进】 优化程序代码 轻松应对千万数据级别负载 【改进】 商家注册IP限制,修正发布...
像坐标控制、旋转矩阵、定时器、生成图像、数据初始化、矩阵乘法、坐标旋转、判断是否是顺时针方向排列、鼠标按下、放开时的动作等,都可在本源码中得以体现。 Java编写的显示器显示模式检测程序 2个目标文件 内容...
像坐标控制、旋转矩阵、定时器、生成图像、数据初始化、矩阵乘法、坐标旋转、判断是否是顺时针方向排列、鼠标按下、放开时的动作等,都可在本源码中得以体现。 Java编写的显示器显示模式检测程序 2个目标文件 内容...