none
网站的虚拟路径后面多了不明字符串,是被攻击了吗? RRS feed

  • 问题

  • 本来网站挺正常的,突然发现虚拟路径后面多了不明字符串,要重启IIS网站才可以重新运行

    正常应该是这样的:

    http://xxx.com/Apps/RegionExchangeRate/ListRegion

    变了这样:

    http://xxx.com/Apps/(F(fHVtRtRmivka4aHDKJqk1hR3B4JIqIBLTZY_Allddq3xz8Td2tMF9V1zX0saUpZx_ebWtiVEPrITB4uhew8nB2Za1qL4krQZf80UagG2XR7iOEvJdrbagYqVcgMPscYX97rHcQY2fHAXW6LorW3qZlBDo5xkPDnCFC7lrdHOjYizqN_iXqiPV6fOZJLDqeBk0))/RegionExchangeRate/ListRegion

    Apps是IIS的虚拟路径,RegionExchangeRate是Controller

    多了==> (F(XXX)), 貌似是执行F这个方法?

    我这个是Asp.Net Mvc3的网站,感觉Mvc上面的代码无论怎么写也不会把路径变成这样,各位有什么看法?是被攻击了吗?

    2013年5月3日 10:35

答案

  • 找到原因了,不是<sessionState cookieless="UseUri" />,而是<forms  loginUrl="~/Authorize/Index" timeout="2880" />这里引起的,添加cookieless="UseCookies",即设为<forms cookieless="UseCookies" loginUrl="~/xxxxxx" timeout="2880" />可解决问题.但感觉还是没有找个问题的根本原因,不过也只能到这里了.

    • 已标记为答案 喵飞侠 2013年5月6日 5:02
    2013年5月6日 5:00

全部回复

  • 不一定,我估计你是把Cookie那个值设置成Auto了(在web.config中):

    <configuration>
        <system.web>
          <sessionState cookieless="UseUri"></sessionState>
          <compilation debug="true" strict="false" explicit="true" targetFramework="4.0" />
        </system.web>
    </configuration>

    注意上面划线部分。如果设置成AutoDetect或者UseUri,意味着如果你禁用Cookie,那么Cookie自动包含在Url中。


    If you think one reply solves your problem, please mark it as An Answer, if you think someone's reply helps you, please mark it as a Proposed Answer

    Help by clicking:
    Click here to donate your rice to the poor
    Click to Donate
    Click to feed Dogs & Cats


    Found any spamming-senders? Please report at: Spam Report

    2013年5月4日 11:44
  • 你说的我考虑过,但是那字符串怎么看也不像是Cookie啊.而且我的配置文件里没有配置sessionState,网站一直是正常的,只是突然多了那字符串(发生过几次).
    2013年5月6日 1:32
  • 找到原因了,不是<sessionState cookieless="UseUri" />,而是<forms  loginUrl="~/Authorize/Index" timeout="2880" />这里引起的,添加cookieless="UseCookies",即设为<forms cookieless="UseCookies" loginUrl="~/xxxxxx" timeout="2880" />可解决问题.但感觉还是没有找个问题的根本原因,不过也只能到这里了.

    • 已标记为答案 喵飞侠 2013年5月6日 5:02
    2013年5月6日 5:00
  • 首先我没有正确回答你的问题,你可以标记自己的为答案。请取消标记我的。

    其次,就你说的情况,大概是客户端禁用了Cookie,而且默认情况下<form>标签会自动判断是否禁用Cookie——如果禁用,那么自动把Cookie嵌套到Url中。


    If you think one reply solves your problem, please mark it as An Answer, if you think someone's reply helps you, please mark it as a Proposed Answer

    Help by clicking:
    Click here to donate your rice to the poor
    Click to Donate
    Click to feed Dogs & Cats


    Found any spamming-senders? Please report at: Spam Report

    2013年5月6日 5:04