spring mvc 默认防御xss吗
说一下SpringMVC如何防御CSRF(Cross-site request forgery跨站请求伪造)和XSS(Cross site script跨站脚本攻击)。 说说CSRF 对CSRF来说,其实Spring3.1
Spring MVC 如何防止XSS、SQL注入攻击
在数据进入数据库之前对非法字符进行转义,在更新和显示的时候将非法字符还原 在显示的时候对非法字符进行转义 如果项目还处在起步阶段,建议使用第二种,直接使用jstl的c:out标签即可解决非法字符的问题。当然,对于Javascript还需要自己处理一下,写一个方法,在解析从服务器端获取的数据时执行以下escapeHTML()即可。 附:Javascript方法: String.prototype.escapeHTML = function () { return this.replace(//g, ‘’).replace(//g, ‘’).replace(//g, ‘’).replace(/”/g, ‘"’);} 如果项目已经开发完成了,又不想大批量改动页面的话,可以采用第一种方法,此时需要借助Spring MVC的@InitBinder以及org.apache.commons.lang.PropertyEditorSupport、org.apache.commons.lang.StringEscapeUtils public class StringEscapeEditor extends PropertyEditorSupport { private boolean escapeHTML; private boolean escapeJavaScript; private boolean escapeSQL; public StringEscapeEditor() { super(); } public StringEscapeEditor(boolean escapeHTML, boolean escapeJavaScript, boolean escapeSQL) {super();this.escapeHTML = escapeHTML; this.escapeJavaScript = escapeJavaScript; this.escapeSQL = escapeSQL;}@Overridepublic void setAsText(String text) { if (text == null) { setValue(null);} else {String value = text; if (escapeHTML) { value = StringEscapeUtils.escapeHtml(value); } if (escapeJavaScript) { value = StringEscapeUtils.escapeJavaScript(value); } if (escapeSQL) { value = StringEscapeUtils.escapeSql(value); } setValue(value); }}@Overridepublic String getAsText() { Object value = getValue(); return value != null ? value.toString() : “”; }} 在上面我们做了一个EscapeEditor,下面还要将这个Editor和Spring的Controller绑定,使服务器端接收到数据之后能够自动转移特殊字符。 下面我们在@Controller中注册@InitBinder @InitBinder public void initBinder(WebDataBinder binder) { 这个方法可以直接放到abstract Controller类中,这样子每个Controller实例都能够拥有该方法。至此第二种方法完成,但是在还原的方法暂时还没有。
Spring MVC中,遇到XSS、SQL注入攻击怎么处理?
1、在数据进入数据库之前对非法字符进行转义,在更新和显示的时候将非法字符还原;
2、在显示的时候对非法字符进行转义;
如果项目还处在起步阶段,建议使用第二种,直接使用jstl的标签即可解决非法字符的问题。在解析从服务器端获取的数据时执行以下escapeHTML()即可。
来源:麦子学院
Spring框架曝安全漏洞,你如何评价这个漏洞?
这个漏洞也是比较大的,说明这样的一个漏洞也需要管理,需要查处的。
JDK9使用spring框架发现漏洞,官方对此有何回应?
官方表示已经知道了这件事会加大检查力度加大监管力度,如果这个问题确实存在的话,会撤回这批有问题的产品,发布新的产品并且会进行相应的补偿。
spring MVC下如何能有效的防止XSS漏洞以及sql注入
在数据进入数据库之前对非法字符进行转义,在更新和显示的时候将非法字符还原
在显示的时候对非法字符进行转义
如果项目还处在起步阶段,建议使用第二种,直接使用jstl的标签即可解决非法字符的问题。当然,对于Javascript还需要自己处理一下,写一个方法,在解析从服务器端获取的数据时执行以下escapeHTML()即可。
附:Javascript方法:
String.prototype.escapeHTML = function () {
return this.replace(//g, ‘’).replace(//g, ‘’).replace(/
大哥,在springMVC下防御xss漏洞。和sql注入的问题知道如何解决吗?
不知道你是想防哪种xss,存储型?反射型?Dom型?
sql注入预防在编程时机可以做到,不要使用字符串拼接的sql语句,就可以做到
Struct2+Spring 架构JavaWeb项目,出现xss跨站脚本攻击漏洞解决方案??
没用到富文本的话可以用spring里的HtmlUtils.htmlEscape(string str)来对parameter转码。是用filter还是其他方式都可以