none
.Net Framework的重大漏洞 RRS feed

  • 问题

  • 昨天发现一个asp.net Forms验证的重大漏洞,请求各位共同测试。

    环境:visual studio 2008,IIS6

    1.新建一个Web项目。新建一目录upload,拷贝book3.xls到upload

    2.新建login.aspx页面。

    3.修改web.config

    <authentication mode="Forms">
    
     <forms loginUrl="login.aspx" name=".mdcookie" defaultUrl="default.aspx"/>
    
    </authentication>
    
    <authorization>
    
     <deny users="?"/>
    
    </authorization>
    
    

    4.运行项目,访问http://localhost:57291/upload/book3.xls,这时自动转向到http://localhost:57291/login.aspx?ReturnUrl=%2fupload%2fbook3.xls

    5.好了,以上都是本地运行,和我们预期的效果一样。

    6.把项目发布到你的服务器,我的IIS是6.0,服务器ip是192.168.2.2

    7.这时访问http://192.168.2.2/upload/book3.xls,这时问题出现了,浏览器竟然没有转到登陆页面,而是弹出下载的对话框,也就是说发布到IIS后forms验证失效了。请各位同仁测试。如果是这样的话,服务器会有很大的安全隐患。

    2010年9月27日 1:22

答案

  • iis 6 的非asp.net 文件默认没有经过  asp.net 的handler,而是直接用isapi走iis 本身的权限 所以 form验证没有办法起作用

    你可能需要把  xls等文件的 isapi 映射到asp.net 的处理程序。

     

     


    入了ipad,最近用ipad上论坛
    2010年9月29日 2:13

全部回复