- 浏览: 1480644 次
- 性别:
- 来自: 大连
-
文章分类
- 全部博客 (460)
- java (148)
- javascript (34)
- Flex文章 (4)
- css+div (2)
- ajax (6)
- extjs (11)
- 人生感悟 (9)
- struts2.0 (6)
- IT之路,生活 (15)
- hibernate (6)
- struts1 (1)
- spring (5)
- j2ee错误 (3)
- Dwr (5)
- Linux (33)
- C++ (3)
- SWT Win32 (2)
- EJB (1)
- JPA (4)
- C语言和LinuxC (7)
- SQL (13)
- 项目经理 (6)
- db2 (2)
- java数据结构 (2)
- 网页播放器flv (1)
- 数据库 (24)
- 用户体验设计学习 (2)
- 网络电话 (5)
- 军事理论 (4)
- android (3)
- oracle (18)
- oracle ebs form (11)
- oracle ebs oaf (4)
- erp (20)
- DBA (9)
- java中URL 的编码和解码函数 (1)
- 铁血丹心 (1)
- excel 单元格格式不能立即生效 (1)
- Java调用bat文件 (1)
- 如何把本地outlook中的邮件上传到网络邮箱中 (1)
- java 报表 打印 (1)
- 创建dblink (1)
- 图标前台框架 (1)
- vnc (1)
- FORM (1)
- MYSQL (1)
最新评论
-
July01:
推荐用StratoIO打印控件,支持网页、URL、图片、PD、 ...
web打印不显示页眉页脚 -
July01:
推荐用StratoIO打印控件,浏览器和系统的兼容性都很好,而 ...
Javascript网页打印大全 -
hardyer:
大哥写的很实在,受教了,提前祝你元旦快乐!
黎活明给程序员的忠告 -
cxysilahi:
请问WIN7 64位,调用报错Exception in thr ...
JNative的初步使用 -
action1949:
好东西,解决问题
JFreeChart乱码解决方法
一。写一个过滤器
代码如下:
package com.liufeng.sys.filter;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
*
* @author liufeng 2009-08-18
*
*/
public class IllegalCharacterFilter implements Filter {
private String[] characterParams = null;
private boolean OK=true;
public void destroy() {
// TODO Auto-generated method stub
}
/**
* 此程序块主要用来解决参数带非法字符等过滤功能
*/
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain arg2) throws IOException, ServletException {
HttpServletRequest servletrequest = (HttpServletRequest) request;
HttpServletResponse servletresponse = (HttpServletResponse) response;
boolean status = false;
java.util.Enumeration params = request.getParameterNames();
String param="";
String paramValue = "";
servletresponse.setContentType("text/html");
servletresponse.setCharacterEncoding("utf-8");
while (params.hasMoreElements()) {
param = (String) params.nextElement();
String[] values = request.getParameterValues(param);
paramValue = "";
if(OK){//过滤字符串为0个时 不对字符过滤
for (int i = 0; i < values.length; i++)
paramValue=paramValue+values[i];
for(int i=0;i<characterParams.length;i++)
if (paramValue.indexOf(characterParams[i]) >= 0) {
status = true;
break;
}
if(status)break;
}
}
// System.out.println(param+"="+paramValue+";");
if (status) {
PrintWriter out = servletresponse.getWriter();
out
.print("<script language='javascript'>alert(\"您提交的相关表单数据字符含有非法字符。如:\\\"'\\\".\");location.href('"
+ servletrequest.getRequestURL()
+ "');</script>");
}else
arg2.doFilter(request, response);
}
public void init(FilterConfig config) throws ServletException {
if(config.getInitParameter("characterParams").length()<1)
OK=false;
else
this.characterParams = config.getInitParameter("characterParams").split(",");
}
}
二。在web.xml文件中加入如下内容:
<!-- 非法字符过滤器 -->
<filter>
<filter-name>IllegalCharacterFilter</filter-name>
<filter-class>
com.liufeng.sys.filter.IllegalCharacterFilter
</filter-class>
<init-param>
<param-name>characterParams</param-name>
<param-value>',@</param-value><!-- 此处加入要过滤的字符或字符串,以逗号隔开 -->
</init-param>
</filter>
<filter-mapping>
<filter-name>IllegalCharacterFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
重启你的服务器就OK了。
这样,增加此过滤器后能提高网站的安全,防止SQL注入,防止跨站脚本XSS等。
发表评论
-
Oracle Developer10G 安装
2020-09-09 18:03 357oracle 客户端也要删除,以前的oracle产品 ... -
打开Eclipse时出现"The Eclipse executable launcher was unable to locate its companion
2018-06-05 15:06 9719打开Eclipse时出现"The Eclipse ... -
J2EE通过tomcat部署的两种方式
2017-09-12 09:01 679转载:http://blog.csdn.net/psp000 ... -
Linux安装Tomcat7
2016-03-30 15:01 889http://blog.sina.com.cn/s/blog ... -
java支持跨平台获取cpuid、主板id、硬盘id、mac地址 (兼容windows、Linux)(转)
2015-11-17 22:10 1603http://blog.csdn.net/flyingclo ... -
栋哥涕啐茆
2015-10-27 10:49 777栋哥涕啐茆 -
Eclipse快捷键 10个最有用的快捷键
2015-10-27 10:18 809Eclipse中10个最有用的快捷键组合 一个Eclip ... -
java上传头像图像剪切
2015-04-02 20:19 1191java上传头像图像剪切 JQUERY 图片上传裁切 -
创建dblink
2014-12-11 20:01 697CREATE public database link ... -
Bitnami Redmine 安装笔记
2014-12-10 11:28 1647http://atian25.iteye.com/blog/ ... -
利用workflow发送类似数据报表内容的通知页面
2014-11-21 15:03 833利用workflow发送类似数据报表内容的通知页面 ... -
excel科学技术法问题
2014-11-12 13:50 8201.使用导入外部数据的方法2.并且在第三步的时候选择文本,需要 ... -
java.lang.IllegalAccessError
2014-09-29 11:05 1165java.lang.IllegalAccessError: ... -
java如何获取文件编码格式
2014-04-11 11:28 102471:简单判断是UTF-8或不是UTF-8,因为一般除了UTF ... -
JAVA中使用FTPClient上传下载
2013-12-08 13:35 1929方法一:这种方法网上有许多 可以用下面的方式,但是支持批量 ... -
在Java中获取环境变量
2013-11-11 11:18 1447package cy.cn.test; import ... -
ORACLE性能调整笔记
2013-11-05 18:39 0一 关于statspack中等待事件的一些解释 ... -
EBS DBA指南笔记1
2013-11-05 18:35 1925时光飞逝,不从事EBS DBA转眼已有两年多。很还念那段学习 ... -
用html代码在word中插入分页符和页面设置
2013-11-05 17:11 5340<span lang=EN-US style=&quo ... -
OpenJWeb新增二维码图片生成功能
2013-11-05 09:02 1297在开发进销存软件的时 ...
相关推荐
例如,在网页表单提交时,需要过滤特殊字符以避免恶意代码的执行;在数据库存储时,要过滤掉可能导致数据污染或结构破坏的字符;在内容审核中,可能涉及到敏感词的过滤,以符合法规要求。 "字符过滤字符过滤"标签...
例如,当用户通过网页表单提交数据时,服务器端的KDS非法字符检测器会在数据入库前进行检查,以防止非法字符污染数据库。 此外,为了提高用户体验,非法字符检测器还可以实现实时反馈,即在用户输入时即时提醒。这...
1. **字符串过滤**:`stringFilter`方法用于过滤掉特定的非法字符。 2. **特殊字符检测**:`isContainsSpecialChar`方法检查字符串中是否包含特定的特殊字符。 3. **HTML转纯文本**:`htmltoText`方法可以将包含HTML...
例如,一个简单的登录表单如果没有进行适当的验证,攻击者可以输入"username' OR '1'='1 --"这样的字符串,使所有用户的登录验证都能通过。 二、JavaScript前端过滤 虽然前端验证不能替代后端的安全措施,但可以在...
Java验证码是一种广泛应用于Web开发中的安全机制,主要目的是防止恶意自动化程序(如机器人或爬虫)对网站进行非法操作,例如频繁提交表单、刷票等。在Java中实现验证码通常涉及图像处理、随机数生成以及哈希算法等...
2. 验证用户输入:确保所有字段都有有效值,并过滤非法字符。 3. 密码安全:使用安全的哈希算法,并添加随机盐值。 4. 防止跨站脚本攻击(XSS):对用户输入进行转义或过滤。 在实际开发中,可能还会涉及用户认证、...
本篇文章将深入探讨“web开发中必不可少的过滤器”,以及如何利用过滤器解决乱码及非法字符串转换的问题。 首先,让我们了解过滤器的基本概念。在Java Servlet规范中,过滤器是通过实现javax.servlet.Filter接口来...
Java验证码框架是Web开发中用于安全验证的重要工具,主要用于防止恶意自动化的机器人或者爬虫进行非法操作,如注册、登录等。在J2EE环境中,验证码框架能够为开发者提供便捷的方式来实现这一功能。"附带example比较...
此段脚本的功能在于确保用户在提交表单之前,各项输入内容均符合一定的格式要求,避免因错误的数据格式而引发的后端处理问题。 ### 一、整体框架理解 首先,我们看到这段代码被嵌入到了一个HTML表单中,通过`...
// 过滤非法字符的函数 function stripscript(s) { var pattern = new RegExp("[`~!@#$^&*()=|{}':;',\\[\\].<>/?~!@#¥……&*()——|{}【】‘;:”“'。,、?]"); var rs = ""; for (var i = 0; i ; i++)...
在Java开发中,用户输入通常通过表单提交给服务器端,然后被拼接到数据库查询中。如果应用程序未能正确过滤或转义这些输入,攻击者就可能通过输入特定构造的SQL片段,破坏原本的SQL逻辑,执行非法的数据库操作。例如...
这里先检查当前字符是否为非法字符,再根据ASCII码判断字符类型并更新计数器和索引。 5. **验证规则**: ```javascript if (numberCount == 0 || (numberCount == 1 && (numberIndex == 0 || numberIndex == str...
验证码在IT领域中是一种常见的安全机制,主要用于防止自动机器人或者恶意程序进行非法操作,比如注册、登录、提交表单等。在Java Web开发中,我们可以使用多种方式来实现验证码功能。这里,我们主要讨论与"java...
这种功能常见于各种软件和网页表单,以确保输入数据的格式正确,防止非法字符的输入。例程可能包括以下步骤: 1. 检查输入:当用户在编辑框中输入字符时,程序会实时或在提交前检查每个字符的ASCII码值。 2. 过滤非...
另外,对于用户输入的数据,应当进行校验和过滤,防止非法字符或恶意代码的提交。在登录失败的情况下,不应显示具体的错误信息(如“用户名不存在”),以避免暴露系统的敏感信息。 至于提供的压缩包文件`servlet_...
它不仅能够提高用户体验,还可以有效地防止用户提交非法或错误的数据,从而减少服务器端的压力以及可能的安全风险。文本域验证作为表单验证的一部分,主要针对用户在文本输入框中输入的数据进行检查。 ### 2. ...
例如,对用户输入的数据进行过滤和校验,防止非法字符或恶意代码的注入;对用户的密码进行哈希加盐处理,保护用户隐私。 总的来说,"Struts+JDBC-Crud曾删改查,用户管理程序"是一个典型的Java Web应用,它整合了...
- 验证和过滤用户输入:对用户提交的数据进行合法性检查,防止非法字符和恶意代码。 8. **前端展示**: - 使用HTML、CSS和JavaScript构建用户界面,可能配合Bootstrap等前端框架提升美观度和响应式布局。 - 前后...