点击这里给我发消息 点击这里给我发消息

Web开发常见的几个漏洞解决方法2

添加时间:2013-12-7
    相关阅读: 软件 开发 页面 网络 SQL 网站 系统
 
  1. /// <summary> 
  2.     /// BasePage 集成自权限基础抽象类FPage,其他页面则集成自BasePage  
  3.     /// </summary> 
  4.     public class BasePage : FPage  
  5.     {  
  6.         /// <summary> 
  7.         /// 默认构造函数  
  8.         /// </summary> 
  9.         public BasePage()  
  10.         {  
  11.             this.IsFunctionControl = true;//默认页面启动权限认证  
  12.         }  
  13.  
  14.         /// <summary> 
  15.         /// 检查用户是否登录  
  16.         /// </summary> 
  17.         private void CheckLogin()  
  18.         {  
  19.             if (string.IsNullOrEmpty(Permission.Identity))  
  20.             {  
  21.                 string url = string.Format("{0}/Pages/CommonPage/Login.aspx?userRequest={1}",  
  22.                     Request.ApplicationPath.TrimEnd('/'), HttpUtility.UrlEncode(Request.Url.ToString()));  
  23.                 Response.Redirect(url);  
  24.             }  
  25.         }  
  26.  
  27.         /// <summary> 
  28.         /// 覆盖HasFunction方法以使权限类判断是否具有某功能点的权限  
  29.         /// </summary> 
  30.         /// <param name="functionId"></param> 
  31.         /// <returns></returns> 
  32.         protected override bool HasFunction(string functionId)  
  33.         {  
  34.             CheckLogin();  
  35.  
  36.             bool breturn = false;  
  37.             try  
  38.             {  
  39.                 breturn = Permission.HasFunction(functionId);  
  40.             }  
  41.             catch (Exception)  
  42.             {  
  43.                 Helper.Alerts(this, "BasePage调用权限系统的HasFunction函数出错");  
  44.             }  
  45.             return breturn;  
  46.         }  
  47.  
  48.         protected override void OnInit(EventArgs e)  
  49.         {  
  50.             Response.Cache.SetNoStore(); //清除缓存  
  51.             base.OnInit(e);  
  52.  
  53.             CheckLogin();  
  54.         } 

否则可能会受到攻击,并通过抓包软件发现页面数据,获得一些重要的用户名或者相关信息。

还有一个值得注意的地方,就是一般这种不是很安全的网络,最好要求输入比较复杂一点的密码(强制要求),例如不能全部是数字密码或者不能是纯字符,对位数也要求多一点,因为很多人输入12345678,123456,123这样的密码,很容易被猜出来并登录系统,造成不必要的损失。

6、总结性建议

针对上面发现的问题,提出下面几条建议。

1)在服务器与网络的接口处配置防火墙,用于阻断外界用户对服务器的扫描和探测。

2)限制网站后台访问权限,如:禁止公网IP访问后台;禁止服务员使用弱口令。

3)对用户输入的数据进行全面安全检查或过滤,尤其注意检查是否包含SQL 或XSS特殊字符。这些检查或过滤必须在服务器端完成。

4)关闭windows的8.3格式功能。

5)限制敏感页面或目录的访问权限。 

咨询热线:020-85648757 85648755 85648616 0755-27912581 客服:020-85648756 0755-27912581 业务传真:020-32579052
广州市网景网络科技有限公司 Copyright◎2003-2008 Veelink.com. All Rights Reserved.
广州商务地址:广东省广州市黄埔大道中203号(海景园区)海景花园C栋501室
= 深圳商务地址:深圳市宝源路华丰宝源大厦606
研发中心:广东广州市天河软件园海景园区 粤ICP备05103322号 工商注册