门户网站漏洞处理v1.1.0(补充) 

导读:网站安全漏洞处理办法总结,网站安全漏洞处理办法总结............................,怎么办?....................................,但为什么还会报有漏洞呢?............................,还是报错有漏洞?................................,常见的网站安全漏洞问题,一般网站涉及到有接

门户网站漏洞处理v1.1.0(补充) 

网站安全漏洞处理办法总结

网站安全漏洞处理办法总结.................................................................................... 1 常见的网站安全漏洞问题 ........................................................................................ 2 客户端 ....................................................................................................................... 2 服务器端................................................................................................................... 2 案例分享(Q&A)...................................................................................................... 4 网站出现漏洞,怎么办? .................................................................................... 4 网站参数已经是POST,但为什么还会报有漏洞呢? ................................... 4 对数据进行了多重检验、限制,还是报错有漏洞? .................................... 4 客户端处理 .............................................................................................................. 5 代码过滤 ...................................................................................................................... 5 PHP的htmlspecialchars()将特殊字符转成HTML的字符串格式 ................ 5 ASP的Server.HtmlEncode()方法对指定的字符串应用HTML编码 ............. 5 JSP可用如下函数 ................................................................................................... 5 漏洞描述与解决方法................................................................................................. 6 发现数据库错误模式 ................................................................................................... 6 会话标识未更新 .......................................................................................................... 6 跨站点请求伪造 .......................................................................................................... 6 不充分帐户封锁 .......................................................................................................... 9 跨站点脚本编制 .......................................................................................................... 9 SQL 盲注 ..................................................................................................................... 9 已解密的登录请求....................................................................................................... 9 链接注入 ................................................................................................................... 10 通过框架钓鱼 ............................................................................................................ 10 启用了不安全的http方法......................................................................................... 11 危险代码过滤器 ........................................................................................................ 11

常见的网站安全漏洞问题

客户端

参数没有进行过滤

一般网站涉及到有接收参数和数据交互的地方,都需要在客户端对数据进行过滤,例如:用JS检验参数的类型是否正确、检查参数是否包含特殊字符、参数的长度最大限制等

网站页面动态化

一般网站页面都有静态(没有数据交互)和动态(有数据交互)两类,对于不需要交互的页面,尽量不要在页面上隐藏表单信息和文本框,因为很多时候扫描工具都会随机性的伪造这些隐藏表单或文本框字段数据进行请求。

验证码识别

在注册或者提交参数的表单加上图形验证码。对于简单的破解,图形验证码识别比较有效。

服务器端

参数没有进行过滤

在有需要接收数据的地方,尽量对接收的参数进行验证,例如:用正则表达式对参数进行长度还有类型的检查;对参数或内容进行特殊字段的过滤,也可以写过滤器对网站所有的接收的数据进行过滤。

提交方法过滤

判断提交参数的表单或者页面采取的提交方式是POST还是GET,一般情况下都要在有数据交互的方法体或者类中都要对提交方法进行过滤,尽量阻止GET方式的提交。

代码里用js方式提示错误并进行跳转

如果在代码里面是通过弹出一个js警告窗口来提示出错,并跳转到错误页面时,尽量将js警告窗口给去掉,因为在一般情况下,用js警告窗口提示错误会被扫描软件误认是有数据返回,会引起不必要的误报漏洞问题。

POST提交返回的页面跟GET返回的页面是相同

在对提交方法过滤的情况下,如果只允许POST方式提交,当GET提交时会跳到ERROR页面时,在POST方法里对数据验证不对时,应该跳到ERROR2页面,而不是跳到ERROR页面,因为如果跳到ERROR页面时,会给扫描软件误认是POST跟GET方法提交时返回内容相同而导致误报漏洞问题。

地址没有验证

对提交参数的地址进行验证,例如:提交地址是不是包含?或者&这些GET提交方式的特殊字符。

对提交参数的地址进行REFERER验证,验证提交地址来源地

址是不是空还是否非本网域名。

没有防止SQL注入

对参数的内容进入SQL关键字进行过滤。

cookies过期时间未设置(会话标识未更新)

cookies过期时间未设置,可能会引发一些cookies欺骗攻击。 代码:

Cookie cookie = request.getCookies()[0];//获取cookie cookie.setMaxAge(0);//让cookie过期

案例分享(Q&A)

网站出现漏洞,怎么办?

首先检查出现漏洞的请求是否有参数交互; 参数提交是以POST方式还是GET方式(如果是GET,就改成POST);

网站参数已经是POST,但为什么还会报有漏洞呢?

来源地址是否为空还是非本域名下的地址;

请求URL是否包含?或&这些特殊字符;(http://xxx.do?xx&dd) 内容特殊字符过滤、转义;(过滤&、<、>、”、’)

请求页面是否在客户端做数据检验;(例如JS检验等)

服务端是否在数据长度方面做了检验(对数据的类型、长度进行较严格检验、限制)

对数据进行了多重检验、限制,还是报错有漏洞?

服务器端是否做了错误提示窗口,删除提示窗口;(删除js提示窗

口,直接跳转)

过滤GET方式提交时跳转是否跟数据检验错误跳转的页面一致;(过滤GET方式提交时跳转的错误页面是error,数据检验错误跳转的页面应该是error2,而不要error)

客户端处理

基于大部分过滤扫描工具原理都是如果GET或POST返回的页面都是同一个页面就当存在漏洞的原因,可以在客户端做相对应处理以应对。

例如:可以为每个页面修改不同的标题;

可以用一个javascript来生成一个随机数,当每次进入这个页面的时候就生成一个随机数来。

代码过滤

PHP的htmlspecialchars()将特殊字符转成HTML的字符串格式

echo htmlspecialchars($_GET[“name”])//过滤get方式传过来的name值 >

ASP的Server.HtmlEncode()方法对指定的字符串应用HTML编码

Var = Server.HtmlEncode(Trim(Request(“id”)))

JSP可用如下函数

Public static String transform(String Contentnew)

博泰典藏网btdcw.com包含总结汇报、自然科学、经管营销、表格模板、初中教育、计划方案、医药卫生、高中教育、高等教育以及门户网站漏洞处理v1.1.0(补充) 等内容。

本文共5页12345