小编Nei*_*eil的帖子

文件上传安全关注

我有一个公开的网络表单,具有文件上传功能.现在,文件要么保存在Web服务器上,要么作为附件发送到电子邮件中.我们对大小有限制,即15MB和上传文件的扩展名.我们的SMTP服务器位于同一Web服务器上.我担心安全问题,因为任何人都可以上传恶意文件并对我们的生产Web服务器产生影响.

公众可以通过这种文件上传控制获得的风险是什么?无论如何,有人可以通过上传恶意文件在Web服务器上执行恶意脚本.

我做了一些研究,发现了以下几点

  1. 如果我在电子邮件中将文件作为附件发送,则此文件将临时存储在Temporary ASP .Net文件夹中,一旦发送电子邮件,该文件将被删除.
  2. 您可以在将文件保存到文件系统之前重命名该文件.
  3. 您可以将文件保存在您的网站的不同位置
  4. 您可以进行某种实时病毒检查.我不知道你怎么能这样做.我正在阅读一些命令行病毒扫描.但不确定我是否真的需要它.

这些只是几点,但我想知道文件上传中的任何盲点.

c# asp.net security file-upload

11
推荐指数
1
解决办法
9271
查看次数

ASP .Net文件上载超出最大请求长度错误

我在页面上有一个简单的ASP .Net文件上传控件.我有以下web.config设置

<system.webServer>
      <security>
      <requestFiltering>
        <requestLimits maxAllowedContentLength="524288000" />
      </requestFiltering>
    </security>
 </system.webServer>

    <system.web>
      <httpRuntime maxRequestLength="524288" executionTimeout="120000" />
    </system.web>
Run Code Online (Sandbox Code Playgroud)

我在我的开发盒上使用IIS 7.5,在Web服务器上使用IIS 7.

如果我上传大小为7MB的文件,它工作正常.

但是当我上传10MB的文件时,它会抛出以下异常

我在页面上有一个简单的ASP .Net文件上传控件.我有以下web.config设置

Exception Details: System.Web.HttpException: Maximum request length exceeded.

Stack Trace:     

[HttpException (0x80004005): Maximum request length exceeded.]
   System.Web.HttpRequest.GetEntireRawContent() +8772610
   System.Web.HttpRequest.GetMultipartContent() +62
   System.Web.HttpRequest.FillInFormCollection() +168
   System.Web.HttpRequest.get_Form() +68
   System.Web.TraceContext.InitRequest() +910
   System.Web.TraceContext.VerifyStart() +143
   System.Web.HttpApplication.AssignContext(HttpContext context) +118
   System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context) +464
Run Code Online (Sandbox Code Playgroud)

任何帮助将受到高度赞赏.我知道这个问题已被多次询问过,但这些解决方案都不适合我.

我们正在使用Sitecore内容管理系统.

asp.net iis-7 file-upload sitecore sitecore6

8
推荐指数
2
解决办法
3万
查看次数

Sitecore Media上传创建新用户sesssion

我们限制并发sitecore用户数.我们面临一个独特的问题,当用户尝试从Medial Library上传图像时,sitecore正在创建一个新会话.因此,我们很快就达到了许可限制,并且有人必须使用sitecore/shell/Applications/Login/Users/kick.aspx页面手动启动用户会话.

任何帮助将受到高度赞赏.

我们正在使用Sitecore 6.4.1

谢谢,

.net asp.net sitecore

1
推荐指数
1
解决办法
500
查看次数

具有 ssl 证书的域名的 Cname 或 A 记录 www.mydomain.com

我们有两条A记录指向相同的公共 IP 地址:

  • www.example.com IN A 192.*.*.*
  • example.com IN A 192.*.*.*

我们有 Verisign 颁发的证书www.example.com。现在,当用户输入 时https://www.example.com/xyz,一切都按预期正常工作。

但是当我们使用 时https://example.com/xyz,浏览器会抛出错误:

“该网站的安全证书有问题”

并要求用户做出是否信任并想要继续的决定。

现在这里的最佳实践应该是什么:

  1. 更改证书并获取通配符证书*.example.com
  2. 在 DNS 中使用以下设置:

    • www.example.com IN A 192.*.*.*
    • example.com IN CNAME www.example.com
  3. 在 .Net 管道中编写一个 HTTP 模块,以便在用户键入 .Net 时重定向example.com/xyz用户www.example.com/xyz。我知道不建议这样做。

我们想做一些像chase.com正在做的事情。如果您输入,chase.com它会将您带到https://www.chase.com/.

iis dns cname ssl-certificate a-records

1
推荐指数
1
解决办法
2万
查看次数