asp.net – 如何确保使用后无法恢复上传的文件内容?
我想使用上传到Web服务器的文件内容不可恢复.我担心的是:
>上载文件时,是否存储在临时目录(例如Windows Temp目录)中,如何清除其中的所有跟踪? 注:这是一个ASP.NET Web应用程序. 编辑:感谢djeeg’s指出如何将临时上传目录重新定位到更可控的东西的链接. 关于其他要点的任何反馈? 解决方法
磁盘安全性
您可以让擦除实用程序为您完成工作. 如果在Mono / Linux上运行ASP.NET,则可以通过Process类使用擦除命令(确保已安装擦除包). 如果您运行Windows,方法是相同的.使用wipe.exe实用程序,在需要安全地处理文件时执行硬清理. 我喜欢this网站,它发布了一个免费的wipe.exe,它不包含在Windows标准安装中(太糟糕了). 第二种方式是实现Guttman algorithm,但我认为使用别人的代码更便宜. 请记住,擦除非常耗费I / O,不要等待它完成,否则您可能会大大降低应用程序的速度.此外,在高负载的网站上,您可能会遇到明显的减速. 内存安全 SecureString类可以帮助您在内存中不留下任何字符串的痕迹.但是当你使用文件时,你实际上使用流.我不确定是否担心易失性内存的内容(即使您处理维基解密文档). 您必须首先执行威胁分析,告诉您对内存的主要威胁是什么.以下是一些问题: >有人可以使用具有执行内存转储功能的管理员/ root帐户访问服务器吗? (普通用户无法读取内存,.NET因为指针未被使用而阻止缓冲区溢出) 如果答案不是肯定的,那么您不必担心内存安全问题 交换空间安全 即使你在Windows上运行,让我调用“交换”页面文件,或虚拟内存文件,或其他什么.您可能会考虑禁用它(确保您有足够的RAM),否则,您可能会考虑对其进行加密(但会导致性能下降). 但同样,为了让某人在运行时扫描您的交换文件,他必须是root用户,或者具有对关闭服务器的物理访问权限. 如果数据太敏感,我会去禁用交换. [添加]我确定您已经使用SSL上传文件,以防您忘记了一些原则…… (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net – 创建希腊数据
- asp.net-mvc – F#Global.asax – 语言不受支持?
- asp.net-mvc – 如何对我的ASP.NET MVC网站进行性能测试?
- asp.net-mvc – 如何在Visual Studio 2008和ASP.Net MVC中编
- asp.net-mvc – 如何为MVC4配置Ninject并提供自定义成员资格
- .net – IIS 6.0和ASPX中的404自定义错误不起作用
- asp.net-mvc-4 – 后退点击刷新页面 – MVC 4
- asp.net-mvc – Mvc http post方法给我“资源无法找到. ”
- asp.net-core – .Net 5中的调试设置
- asp.net-mvc – 如何在Razor View中格式化lambda表达式中的
- asp.net-mvc – ASP.NET MVC控制器中的构造函数依
- asp.net – 将ViewState移出页面?
- ASP.NET MVC 3远程验证
- asp.net-core – ASPX.NET核心 – IIS服务器上的
- asp.net-mvc-4 – 为什么MVC4捆绑和缩小使我的文
- asp.net – 关于webcal URI方案的ics文件
- asp.net – 将JSON数据解析为.NET对象的最佳方式
- ASP.NET linkbutton两次提高onBeforeUnload事件
- asp.net – 冻结标题,滚动GridView
- asp.net – 单点登录SignOut问题:FormsAuthenti