加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

将在公共计算机或自助服务终端上使用的ASP.Net Web应用程序的安

发布时间:2020-12-16 09:33:33 所属栏目:asp.Net 来源:网络整理
导读:我有一个应用程序,无需身份验证即可在公共场所的计算机上使用.这是一个简单的四页应用程序,允许用户申请结婚许可证.一些办公室将有一个公共电脑亭,申请人可以在前往办事员之前填写自己的信息.在访问办公室之前,他们也可以在家里这样做.我应该考虑哪些因素来
我有一个应用程序,无需身份验证即可在公共场所的计算机上使用.这是一个简单的四页应用程序,允许用户申请结婚许可证.一些办公室将有一个公共电脑亭,申请人可以在前往办事员之前填写自己的信息.在访问办公室之前,他们也可以在家里这样做.我应该考虑哪些因素来确保用户无法访问之前用户的输入?某些表单数据将包含敏感信息,如DOB,SSN和Mother的Maiden Name.

1.禁用自动完成功能

到目前为止,我已在主页面表单标记中设置了autocomplete = false.

<form id="frmMain" runat="server" autocomplete="false">

2.禁用页面缓存

我也能够在IE和FF中禁用页面缓存,但在Safari和Chrome中不能这样做.有人知道这个伎俩吗?点击后退按钮仍会在Safari和Chrome中显示表单填充的数据.

// Disables page-caching in IE
Response.Cache.SetAllowResponseInBrowserHistory(false);
Response.Cache.SetCacheability(HttpCacheability.NoCache);
Response.Cache.SetNoStore();
Response.Expires = 0;

// HACK: fixes Firefoxes cache issue
Response.AddHeader("ETag",new Random().Next(2222211,9999999).ToString());

3.管理会话

我还在每个页面上实现了一个计时器,它将在n分钟后终止会话.会话保存当前应用程序ID,页面用于加载先前输入的数据.他们可以通过点击按钮获得更多时间.当计时器启动时,它会重定向回主页面,我在Page_Load中终止会话.当用户单击“完成/提交”按钮时,我也会重定向到此页面.会话被终止后,通过URL导航到页面将永远不会加载以前的应用程序.它将被视为一个新的.

protected void Page_Load(object sender,EventArgs e)
{
   if (!IsPostBack)
     Session.Abandon();
}

我该怎么办?

Your awesome suggestions/tips here

解决方法

我认为你有正确的想法.在“完成/提交”中杀死会话就是我推荐的内容.仍然阅读 owasp top 10并记住你常见的漏洞.

1)确保使用HTTPS.

2)在推出之前,始终始终测试应用程序的漏洞.我建议使用Wapiti(免费),Acunetix($)或NTOSpider($$$$).

3)使您的服务器保持最新,确保运行OpenVAS以确保您的服务器是安全的.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读