为了我们交作业方便,老师架设了一个Web服务器,交作业的地址是http://***.***.***.***/upload/
访问这个地址就出现一个上传页面,提交到/upload/upload2.aspx把上传的文件保存到/upload/
由于一些原因,我把一个ASP后门命名upload2.asp成功上传上去了,访问/upload/upload2.asp进入后门才发现:
我无论是试图修改文件还是删除文件就出现“500服务器内部错误”,具体提示就是说没有权限,如下
错误类型:
Microsoft VBScript 运行时错误 (0x800A0046)
没有权限
/upload/upload2.asp, 第 868 行
浏览器类型:
Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1) 网页:
POST 44 ??? /upload/upload2.aspPOST Data:
filestuff=&NewFileName=&filename=upload2.asp 
但是为什么我通过老师的访问地址却能覆盖上传文件呢?我通过后门文件察看过/upload/upload2.aspx的代码如下:
<html>
<title>文件上传</title><body>
<form enctype="multipart/form-data" runat=server>
<Input type=file id=fileup runat=server size="20"><p>
<asp:button id=upload_button onclick=uploadfile text="上传" runat=server/>
</form>
<p>
<asp:label id=uptype runat=server/>
</body>
</html>
<script language=VB runat=server>
Sub uploadfile(sender as object,e as eventargs)
If fileup.postedfile.contentlength=0 Then
uptype.text="你还没有选择需要上传的文件!"
Else
Dim filesplit() as string=split(fileup.postedfile.filename,"\")
Dim filename as string=filesplit(filesplit.length-1)
fileup.postedfile.saveas(server.mappath(".")&"\"&filename)
uptype.text="文件名称:"&fileup.postedfile.filename &"<br>"& _
"文件大小:"&fileup.postedfile.contenttype &"<br>"& _
"文件类型:"&fileup.postedfile.contentlength
End IfEnd Sub
</script> 
我想,假如/upload/目录没有修改和删除文件的权限的话,那应该也不可能可以覆盖文件啊?
而且我发现更奇怪的现象是/upload/目录里根本没有形如index.aspx之类的文件,但是却能访问http://***.***.***.***/upload/
我现在想做的事就是把我这后门文件upload2.asp删除掉,这样就可以不引起警觉
按照这样的权限状况,如果我上传一个Asp.Net的后门是否能实现呢?希望有高手分析一下

解决方案 »

  1.   

    你可以上传一个aspx文件,打印一下(vb.net)   server.mappath("./upload2.asp")到底产生是个什么结果。你的删除功能的代码中,又是怎样产生文件路径的呢?
      

  2.   

    后门文件不知道是啥?
    HTTPWATHCH么?
      

  3.   

    To 1 楼:
    这个后门程序本身生成的路径肯定是没问题的,它是个现成的程序,我用了很久在其他场合都能正常用啊
    而且,假如路径有错,那么不应该能够读取到文件内容,能读取但是不能修改删除,说明是权限原因
    而且这个出错提示上也是赫然写着“Microsoft VBScript 运行时错误 (0x800A0046)没有权限”
    所以我想问为什么那个Asp.Net的上传程序能覆盖文件,而我的Asp后门却不能修改或删除文件To 2 楼:
    其实这个所谓后门,就是个在线管理空间上的文件的程序,但是老师的Web服务器我显然没有控制权
      

  4.   

    我想是不是Asp.Net的实现机制可能和Asp有不一样呢?
    比如是不是它们用的是两套不同的权限系统?
      

  5.   

    呵呵,这个麻烦我以一个很特别的方式解决了
    我上传一个知名的asp木马——桂林老兵去覆盖了那个文件
    然后服务器上的杀毒软件就帮我把那个文件干掉了,而我的目的正是把那个文件删除掉