使用ajax请求数据的安全性问题讨论

作者: 云计算机网 分类: 云安全 发布时间: 2015-03-06 15:46
日咱们来讨论一下ajax恳求的安全性,我信任各位在体系开发过程中肯定会费尽心机的想如何能够尽量少的避免假造ajax恳求进行进犯,尤其是开 发跟用户交互比较多的互联网体系。那么就请咱们来共享讨论一下你在开发过程中如何思考ajax安全及避免ajax恳求进犯的疑问。我也是一个新手,就先抛 砖引玉了,写的不对的当地期待批评指正。

我先上两段网摘:

Ajax安全防备的办法:

    判别request的来源地址。这样的办法不引荐,由于黑客能够更改http包头,然后绕过检测。选用验证码。也不引荐,请各位大大想一下用户的感触,刚输入用户名就让我输入注册码?这样Ajax含义安在?给一个IP在一个小时内,分配一些比例,比方500个(思考到网吧等等多台机器一个IP,运用NAT的当地)。

Ajax 安全性经验规律:

    若是你运用身份验证, 断定你在恳求页上检查!为 SQL 写入检查。为 JavaScript 写入检查。保存商务逻辑在服务器上!不要假定每个恳求是真实的!承认检查数据!检查恳求的数据并且断定它是正确的。

目前为止我做的最多的避免ajax恳求进犯的即是增加验证码、增加随机Token,约束同一恳求在规则时间内的最大恳求数量、服务器端校验数据正确性、尽量运用POST办法。

下面我写一个在ajax恳求的http头中增加一个随机Token来增加ajax恳求的安全性。

1、运用 $.ajaxSetup和setRequestHeader办法为一切的ajax恳求的Http头增加一个随机Token值

$.ajaxSetup({                beforeSend: function (xhr) {                    xhr.setRequestHeader("token", "token随机值");                }            });

这段js代码能够放在母板页中,token值跟着页面的加载生成并放在session中,这样页面中的其他ajax进行恳求时就会在Http头中添 加token:XXXXXXX的键值对。咱们就能够在后台获取该token值并与session中的值比照,持平则为合法的恳求。

2、Token生成。


string Token = new Random().NextDouble().ToString();            Session["token"] = Token;            System.Web.UI.HtmlControls.HtmlGenericControl script = new System.Web.UI.HtmlControls.HtmlGenericControl("script");            script.Attributes.Add("type", "text/javascript");            script.InnerHtml = @" $.ajaxSetup({                beforeSend: function (xhr) {                    xhr.setRequestHeader(""token"", """ + Token + @""");                }            }); ";            Page.Header.Controls.Add(script);

3、新建DataService.ashx


public void ProcessRequest(HttpContext context)        {            context.Response.ContentType = "text/plain"; string Token = context.Request.Headers["token"]; if (string.IsNullOrWhiteSpace(Token) || context.Session["token"] == null)            {                context.Response.Write("恳求不合法");            } else if (Token != context.Session["token"].ToString())            {                context.Response.Write("恳求不合法");            } else {                context.Response.Write("恳求合法§");            }        } 
  • 使用IIS5.0 架设的FTP服务器真的安全吗?它的默认设置其实存在很多安全隐患,很容易成为黑客们的攻击目标。如何让FTP服务器更加安全,只要稍加改造,就能做到。

    使用IIS5.0 架设的FTP服务器真的安全吗?它的默认设置其实存在很多安全隐患,很容易成为黑客们的攻击目标。如何让FTP服务器更加安全,只要稍加改造,就能做到。

      一 取消匿名访问功能

      默认情况下,Windows2000系统的FTP服务器是允许匿名访问的,虽然匿名访问为用户上传、下载文件提供方便,但却存在极大的安全隐患。用户不需要申请合法的账号,就能访问FTP服务器,甚至还可以上传、下载文件,特别对于一些存储重要资料的FTP服务器,很容易出现泄密的情况,因此建议用户取消匿名访问功能。

      在Windows2000系统中,点击“开始→程序→管理工具→Internet服务管理器”,弹出管理控制台窗口。然后展开窗口左侧的本地计算机选项,就能看到IIS5.0自带的FTP服务器,下面笔者以默认FTP站点为例,介绍如何取消匿名访问功能。

      右键点击“默认FTP站点”项,在右键菜单中选择“属性”,接着弹出默认FTP站点属性对话框,切换到“安全账号”标签页,取消“允许匿名连接”前的勾选,最后点击“确定”按钮,这样用户就不能使用匿名账号访问FTP服务器了,必须拥有合法账号。

      二 启用日志记录

      Windows日志记录着系统运行的一切信息,但很多管理员对日志记录功能不够重视,为了节省服务器资源,禁用了FTP服务器日志记录功能,这是万万要不得的。FTP服务器日志记录着所有用户的访问信息,如访问时间、客户机IP地址、使用的登录账号等,这些信息对于FTP服务器的稳定运行具有很重要的意义,一旦服务器出现问题,就可以查看FTP日志,找到故障所在,及时排除。因此一定要启用FTP日志记录。

      在默认FTP站点属性对话框中,切换到“FTP站点”标签页,一定要确保“启用日志记录”选项被选中,这样就可以在“事件查看器”中查看FTP日志记录了。

      三 正确设置用户访问权限

      每个FTP用户账号都具有一定的访问权限,但对用户权限的不合理设置,也能导致FTP服务器出现安全隐患。如服务器中的CCE文件夹,只允许 CCEUSER账号对它有读、写、修改、列表的权限,禁止其他用户访问,但系统默认设置,还是允许其他用户对CCE文件夹有读和列表的权限,因此必须重新设置该文件夹的用户访问权限。

      右键点击CCE文件夹,在弹出菜单中选择“属性”,然后切换到“安全”标签页,首先删除Everyone用户账号,接着点击“添加”按钮,将 CCEUSER账号添加到名称列表框中,然后在“权限”列表框中选中修改、读取及运行、列出文件夹目录、读取和写入选项,最后点击“确定”按钮。这样一来,CCE文件夹只有CCEUSER用户才能访问。#p#分页标题#e#

      四 启用磁盘配额

      FTP服务器磁盘空间资源是宝贵的,无限制的让用户使用,势必造成巨大的浪费,因此要对每位FTP用户使用的磁盘空间进行限制。下面笔者以CCEUSER用户为例,将其限制为只能使用100M磁盘空间。

      在资源管理器窗口中,右键点击CCE文件夹所在的硬盘盘符,在弹出的菜单中选择“属性”,接着切换到“配额”标签页,选中“启用配额管理”复选框,激活“配额”标签页中的所有配额设置选项,为了不让某些FTP用户占用过多的服务器磁盘空间,一定要选中“拒绝将磁盘空间给超过配额限制的用户”复选框。

      然后在“为该卷上的新用户选择默认配额限制”框中选择“将磁盘空间限制为”单选项,接着在后面的栏中输入100,磁盘容量单位选择为“MB”,然后进行警告等级设置,在“将警告等级设置为”栏中输入“96”,容量单位也选择为“MB”,这样就完成了默认配额设置。此外,还要选中“用户超出配额限制时记录事件”和“用户超过警告等级时记录事件”复选框,以便将配额告警事件记录到Windows日志中。

      点击配额标签页下方的“配额项”按钮,打开磁盘配额项目对话框,接着点击“配额→新建配额项”,弹出选择用户对话框,选中CCEUSER用户后,点击“确定”按钮,接着在“添加新配额项”对话框中为CCEUSER用户设置配额参数,选择“将磁盘空间限制为”单选项,在后面的栏中输入 “100”,接着在“将警告等级设置为”栏中输入“96”,它们的磁盘容量单位为“MB”,最后点击“确定”按钮,完成磁盘配额设置,这样CCEUSER 用户就只能使用100MB磁盘空间,超过96MB就会发出警告。

      五 TCP/IP访问限制

      为了保证FTP服务器的安全,还可以拒绝某些IP地址的访问。在默认FTP站点属性对话框中,切换到“目录安全性”标签页,选中“授权访问”单选项,然后在“以下所列除外”框中点击“添加”按钮,弹出“拒绝以下访问”对话框,这里可以拒绝单个IP地址或一组IP地址访问,以单个IP地址为例,选中“单机”选项,然后在“IP地址”栏中输入该机器的IP地址,最后点击“确定”按钮。这样添加到列表中的IP地址都不能访问FTP服务器了。

      六 合理设置组策略

      通过对组策略项目的修改,也可以增强FTP服务器的安全性。在Windows2000系统中,进入到“控制面板→管理工具”,运行本地安全策略工具。

      1. 审核账户登录事件

      在本地安全设置窗口中,依次展开“安全设置→本地策略→审核策略”,然后在右侧的框体中找到“审核账户登录事件”项目,双击打开该项目,在设置对话框中选中“成功”和“失败”这两项,最后点击“确定”按钮。该策略生效后,FTP用户的每次登录都会被记录到日志中。#p#分页标题#e#

      2. 增强账号密码的复杂性

      一些FTP账号的密码设置的过于简单,就有可能被“不法之徒”所破解。为了提高FTP服务器的安全性,必须强制用户设置复杂的账号密码。

      在本地安全设置窗口中,依次展开“安全设置→账户策略→密码策略”,在右侧框体中找到“密码必须符合复杂性要求”项,双击打开后,选中“已启用”单选项,最后点击“确定”按钮。

      然后,打开“密码长度最小值”项,为FTP账号密码设置最短字符限制。这样以来,密码的安全性就大大增强了。

      3. 账号登录限制

      有些非法用户使用黑客工具,反复登录FTP服务器,来猜测账号密码。这是非常危险的,因此建议大家对账号登录次数进行限制。

      依次展开“安全设置→账户策略→账户锁定策略”,在右侧框体中找到“账户锁定阈值”项,双击打开后,设置账号登录的最大次数,如果超过此数值,账号会被自动锁定。接着打开“账户锁定时间”项,设置FTP账号被锁定的时间,账号一旦被锁定,超过这个时间值,才能重新使用。

      通过以上几步设置后,用户的FTP服务器就会更加安全,再也不用怕被非法入侵了。

  • 相关推荐:

  • 如何让FTP服务器更加安全
  • 如何在中小企业中使用企
  • 六大方法提升WiFi使用安
  • WinRAR密码操作技巧四点常
  • 让你的WindowsXP实现急速关
  • 上网也低碳使用电脑省电
  • 笔记本电池保养与使用指
  • 教你轻松使用繁体字输入
  • 笔记本电脑电池续航技巧
  • 隐藏文件四个小技巧
  • 网站内容禁止违规转载,转载授权联系中国云计算网