Retroceder   Foros del Web > Programación para sitios web > ASP Clásico
Crea un nuevo usuario o inicia sesión utilizando tu cuenta de Facebook
Connect with Facebook

120 segundos en vivo - 2pm (México / Chile / Colombia / Perú), 1pm (Centroamérica), 3pm (Argentina) o 9pm (España).
Respuesta
 
Herramientas Desplegado
Antiguo 09-may-2008, 11:52   #1 (permalink)
RollerSky se está portando bien
 
Avatar de RollerSky
 
Fecha de Ingreso: marzo-2008
Mensajes: 93
RollerSky está desconectado
Seguridad Web

Hola.. de nuevo por aqui,
bueno antes que nada estoy haciendo una web donde se descarga contenido, pero ese contenido solo lo pueden descargar aquellos usuarios que esten logueados y tengan un codigo de seguridad, mi pregunta es.. ¿ como puedo proteger la carpeta donde se almacena este contenido privado, ya que facilmente podrian copiar la url de la carpeta y extraer el contenido,? he visto en varias paginas que si uno intenta ingresar a esa carpeta le pide un user o pass o simplemente da un error de url no encontrada.

Estuve leyendo un poco acerca de los "htaccess" los probe y funcionó me protegio la carpeta, el unico detalle era que no me dejaba entrar ponia el user y pass CORRECTOS y no podia acceder a la carpeta, si este metodo sirviera necesitaria que al loguearse un usuario pudiera ingresar sin colocar ningun user ni password es decir:

cuando un usuario se inicie sesion pueda hacer las descargas pero no pueda acceder a esa carpeta directamente digitando la URL asi mismo para los usuarios que no han iniciado sesion.

espero me ayuden si saben de algun metodo para proteger contenido o bien si me ayudan con el metodo de los "htaccess", lo necesito hacer todo en ASP


salu2
  Responder Citando
Antiguo 09-may-2008, 14:19   #2 (permalink)
Moderador
Myakire merece que le prestes tu nueva macbookMyakire merece que le prestes tu nueva macbookMyakire merece que le prestes tu nueva macbookMyakire merece que le prestes tu nueva macbookMyakire merece que le prestes tu nueva macbookMyakire merece que le prestes tu nueva macbookMyakire merece que le prestes tu nueva macbook
 
Avatar de Myakire
 
Fecha de Ingreso: noviembre-2002
Mensajes: 7.299
Myakire está desconectado
Re: Seguridad Web

Otra cosa que puedes hacer es poner un programa que con algunos parámetros no sensibles (nombre del archivo, tipo, etc) este sea el que mande el contenido al browser, así en la URL lo más que el usuario podría ver es la llamada a ese programa.
  Responder Citando
Antiguo 09-may-2008, 19:43   #3 (permalink)
i_e_s27 se está ganando tu confianza
 
Avatar de i_e_s27
 
Fecha de Ingreso: marzo-2008
Ubicación: En mi casa
Mensajes: 195
i_e_s27 está desconectado
Re: Seguridad Web

Crea una pagina que te redireccione al archivo que quiera bajar en cuestion.
Asignale a cada archivo un ID para identificarlos.

Entonces quedaria algo asi:

tracker.asp?id=001

y en esa pagina haces un Server.Transfer al archivo que quiera bajar. Por que Server.Transfer y no Response.Redirect? Porque mantiene la URL en el explorador, entonces es un poquito mas dificil de "robar"

__________________
Demasiado mayor para ser una joven promesa, demasiado joven para ser una vieja gloria
  Responder Citando
Antiguo 10-may-2008, 23:36   #4 (permalink)
RollerSky se está portando bien
 
Avatar de RollerSky
 
Fecha de Ingreso: marzo-2008
Mensajes: 93
RollerSky está desconectado
Re: Seguridad Web

mm interesantes esas opciones pero me gustaria escuchar mas opiuniones para ver cual aplico, agradezco a los que me han respondido

salu2
  Responder Citando
Antiguo 12-may-2008, 08:57   #5 (permalink)
RollerSky se está portando bien
 
Avatar de RollerSky
 
Fecha de Ingreso: marzo-2008
Mensajes: 93
RollerSky está desconectado
Re: Seguridad Web

mas ideas? :)
  Responder Citando
Antiguo 12-may-2008, 10:01   #6 (permalink)
Moderador
Myakire merece que le prestes tu nueva macbookMyakire merece que le prestes tu nueva macbookMyakire merece que le prestes tu nueva macbookMyakire merece que le prestes tu nueva macbookMyakire merece que le prestes tu nueva macbookMyakire merece que le prestes tu nueva macbookMyakire merece que le prestes tu nueva macbook
 
Avatar de Myakire
 
Fecha de Ingreso: noviembre-2002
Mensajes: 7.299
Myakire está desconectado
Re: Seguridad Web

Eso funciona, no ocupas más ideas para solo asegurar la descarga sin acceso directo por URL
  Responder Citando
Antiguo 14-may-2008, 04:16   #7 (permalink)
ivanargulo ha deshabilitado el karma
 
Fecha de Ingreso: marzo-2008
Mensajes: 12
ivanargulo está desconectado
Re: Seguridad Web

Añade un archivo Robots.txt para evitar que google indexe los contenidos de la carpeta que no quieres hacer pública.
  Responder Citando
Antiguo 14-may-2008, 09:45   #8 (permalink)
Colaborador
3pies merece que le prestes tu consola3pies merece que le prestes tu consola3pies merece que le prestes tu consola
 
Avatar de 3pies
 
Fecha de Ingreso: diciembre-2003
Ubicación: Desde una destilería
Mensajes: 2.038
3pies está desconectado
Re: Seguridad Web

Créate una carpeta al mismo nivel que tienes tu carpeta con datos (root), y le das permisos de lectura. De tal forma que tendrás 2 carpetas, una con todos tud ficheros asp y html, y otra con los documentos para descargar. La primera de las carpetas es accesible vía http, y la otra no.

Salu2
  Responder Citando
Antiguo 14-may-2008, 10:43   #9 (permalink)
Colaborador
Shiryu_Libra merece que le prestes tu nueva macbookShiryu_Libra merece que le prestes tu nueva macbookShiryu_Libra merece que le prestes tu nueva macbookShiryu_Libra merece que le prestes tu nueva macbookShiryu_Libra merece que le prestes tu nueva macbookShiryu_Libra merece que le prestes tu nueva macbookShiryu_Libra merece que le prestes tu nueva macbook
 
Avatar de Shiryu_Libra
 
Fecha de Ingreso: febrero-2007
Ubicación: Si preguntas por esto.... "Hay Tabla"... mientras en "En Kirafa Kaput"
Mensajes: 3.480
Enviar un mensaje por MSN a Shiryu_Libra Enviar un mensaje por Yahoo  a Shiryu_Libra Enviar un mensaje por Skype™ a Shiryu_Libra
Shiryu_Libra está desconectado
Re: Seguridad Web

Cita:
Iniciado por 3pies Ver Mensaje
Créate una carpeta al mismo nivel que tienes tu carpeta con datos (root), y le das permisos de lectura. De tal forma que tendrás 2 carpetas, una con todos tud ficheros asp y html, y otra con los documentos para descargar. La primera de las carpetas es accesible vía http, y la otra no.

Salu2
eso es interesante, si el usuario escribe directamente no podra descargar archivos? tendria que ser vinculado?

__________________
"Eres parte del problema, parte de la solucion o parte del paisaje"
Un Saludo desde Desierto de Altar, Sonora, MX.
Shiryu_libra
  Responder Citando
Antiguo 14-may-2008, 11:49   #10 (permalink)
Moderador
u_goldman merece que le prestes tu nueva macbooku_goldman merece que le prestes tu nueva macbooku_goldman merece que le prestes tu nueva macbooku_goldman merece que le prestes tu nueva macbooku_goldman merece que le prestes tu nueva macbooku_goldman merece que le prestes tu nueva macbooku_goldman merece que le prestes tu nueva macbook
 
Avatar de u_goldman
 
Fecha de Ingreso: noviembre-2002
Ubicación: LA
Mensajes: 7.650
u_goldman está desconectado
Re: Seguridad Web

Cita:
Iniciado por i_e_s27 Ver Mensaje
Crea una pagina que te redireccione al archivo que quiera bajar en cuestion.
Asignale a cada archivo un ID para identificarlos.

Entonces quedaria algo asi:

tracker.asp?id=001

y en esa pagina haces un Server.Transfer al archivo que quiera bajar. Por que Server.Transfer y no Response.Redirect? Porque mantiene la URL en el explorador, entonces es un poquito mas dificil de "robar"


Y de ser posible coloca el directorio fuera del sitio, de esa manera los archivos no pueden ser accesibles por URL.

Por lo del htaccess, eso es un tema de apache, no existe para IIS, aunque no dudo que existan herramientas que emulen esto.

Saludos
__________________
Es mejor prender una vela por pequeña que sea, que maldecir las tinieblas.
-Confucio-
  Responder Citando
Antiguo 15-may-2008, 08:43   #11 (permalink)
Colaborador
3pies merece que le prestes tu consola3pies merece que le prestes tu consola3pies merece que le prestes tu consola
 
Avatar de 3pies
 
Fecha de Ingreso: diciembre-2003
Ubicación: Desde una destilería
Mensajes: 2.038
3pies está desconectado
Re: Seguridad Web

Cita:
Iniciado por Shiryu_Libra Ver Mensaje
eso es interesante, si el usuario escribe directamente no podra descargar archivos? tendria que ser vinculado?

Exacto. Solo puedes descargar linkando a esa carpeta (la cual está oculta, y en principio nadie conoce, ni su nombre, ni el nombre de los archivos que hay dentro).
  Responder Citando
Antiguo 15-may-2008, 10:30   #12 (permalink)
Moderador
AlZuwaga es mas bueno que la perra LassieAlZuwaga es mas bueno que la perra LassieAlZuwaga es mas bueno que la perra LassieAlZuwaga es mas bueno que la perra LassieAlZuwaga es mas bueno que la perra LassieAlZuwaga es mas bueno que la perra LassieAlZuwaga es mas bueno que la perra LassieAlZuwaga es mas bueno que la perra LassieAlZuwaga es mas bueno que la perra Lassie
 
Avatar de AlZuwaga
 
Fecha de Ingreso: noviembre-2002
Ubicación: 34.517 S, 58.500 O
Mensajes: 12.897
AlZuwaga está desconectado
Re: Seguridad Web

Cita:
Iniciado por 3pies Ver Mensaje
Exacto. Solo puedes descargar linkando a esa carpeta (la cual está oculta, y en principio nadie conoce, ni su nombre, ni el nombre de los archivos que hay dentro).
Peroooo... si está por fuera del root (a su mismo nivel)... ¿cómo vas a acceder a los archivos?
__________________
Argentinos, "somos lo que somos"
  Responder Citando
Antiguo 15-may-2008, 11:03   #13 (permalink)
Colaborador
3pies merece que le prestes tu consola3pies merece que le prestes tu consola3pies merece que le prestes tu consola
 
Avatar de 3pies
 
Fecha de Ingreso: diciembre-2003
Ubicación: Desde una destilería
Mensajes: 2.038
3pies está desconectado
Re: Seguridad Web

Solo puedes acceder a ellos linkándolos desde una página (esta página evidentemente está dentro del root), ya que no son accesibles vía http (esto solo está reservado a los archivos que hay dentro del root).

Ejemplo de carpetas:

<root>
<descargas>

Ahora imagina que desde el index.asp que cuelga directamente del root, quieres descargar un fichero que hay en <descargas>. Pues simplemente montas un enlace del tipo:

<a href="../descargas/archivo.zip">descargar fichero</a>

Si tipeas en la barra de direcciones algo como esto: http://www.tuweb.com/descargas/archivo.zip daría error, porque no se econtraría el documento, ya que tuweb.com apunta al root, y dentro del root no hay una carpeta llamada descargas, sino que está fuera, a su mismo nivel (habrá que darle permisos a esa carpeta, si deseas subir ficheros, si deseas permitir la descarga, y demás).

Salu2
  Responder Citando
Antiguo 15-may-2008, 12:00   #14 (permalink)
Moderador
AlZuwaga es mas bueno que la perra LassieAlZuwaga es mas bueno que la perra LassieAlZuwaga es mas bueno que la perra LassieAlZuwaga es mas bueno que la perra LassieAlZuwaga es mas bueno que la perra LassieAlZuwaga es mas bueno que la perra LassieAlZuwaga es mas bueno que la perra LassieAlZuwaga es mas bueno que la perra LassieAlZuwaga es mas bueno que la perra Lassie
 
Avatar de AlZuwaga
 
Fecha de Ingreso: noviembre-2002
Ubicación: 34.517 S, 58.500 O
Mensajes: 12.897
AlZuwaga está desconectado
Re: Seguridad Web



Lo acabo de intentar con IIS y Apache y en ambos el enlace a <a href="../carpeta/archivo.doc">descargar</a> me lleva a http://localhost/carpeta/archivo.doc. Claro que esa ruta no existe, por tanto me da un error 404.

¿Estaré haciendo algo mal?
__________________
Argentinos, "somos lo que somos"
  Responder Citando
Antiguo 15-may-2008, 12:13   #15 (permalink)
Colaborador
3pies merece que le prestes tu consola3pies merece que le prestes tu consola3pies merece que le prestes tu consola
 
Avatar de 3pies
 
Fecha de Ingreso: diciembre-2003
Ubicación: Desde una destilería
Mensajes: 2.038
3pies está desconectado
Re: Seguridad Web

Te tiene que funcionar, porque las descargas de la web de mi firma funcionan así (con alguna cosilla adicional, como renombrar el fichero, por ejemplo).

EDITADO: Es que me había dado cuenta que había dicho una sandez.

Última edición por 3pies; 15-may-2008 a las 12:33
  Responder Citando
Antiguo 15-may-2008, 12:54   #16 (permalink)
Moderador
AlZuwaga es mas bueno que la perra LassieAlZuwaga es mas bueno que la perra LassieAlZuwaga es mas bueno que la perra LassieAlZuwaga es mas bueno que la perra LassieAlZuwaga es mas bueno que la perra LassieAlZuwaga es mas bueno que la perra LassieAlZuwaga es mas bueno que la perra LassieAlZuwaga es mas bueno que la perra LassieAlZuwaga es mas bueno que la perra Lassie
 
Avatar de AlZuwaga
 
Fecha de Ingreso: noviembre-2002
Ubicación: 34.517 S, 58.500 O
Mensajes: 12.897
AlZuwaga está desconectado
Re: Seguridad Web

En la sección de descargas de tu sitio (http://con2huevos.com/con2huevos/descargas/descargas.asp) veo por ejemplo este enlace:

Código:
http://con2huevos.com/con2huevos/general/download.asp?archivo=con2huevos-calculadoradelimc.zip&Fichero=../../../download/con2huevos-calculadoradelimc.zip&Nombre=con2huevos-1.zip&Tamanio=11144
Supongo yo que la carpeta download está al mismo nivel que el root de tu sitio. Pero no es el enlace html quien accede al archivo ubicado en esa carpeta sino el script que tenés en download.asp. Creo que con esto quedaría demostrado que el <a href="../carpeta_al_mismo_nivel_del_root/archivo.ext"> no funciona

Ahora bien, te vuelvo a citar:

Cita:
Exacto. Solo puedes descargar linkando a esa carpeta (la cual está oculta, y en principio nadie conoce, ni su nombre, ni el nombre de los archivos que hay dentro).
Si le paso por mail a un amigo esa dirección (que contiene un documento supersecreto que sólo debe ser descargado desde tu sitio) lo podrá bajar haciendo click en el enlace o copiando y pegándolo en la barra de direcciones de su browser. Se me ocurre que deberías verificar que el referer no sea nulo ni distinto a tu dominio para asegurar la cosa.
__________________
Argentinos, "somos lo que somos"
  Responder Citando
Antiguo 16-may-2008, 02:48   #17 (permalink)
Colaborador
3pies merece que le prestes tu consola3pies merece que le prestes tu consola3pies merece que le prestes tu consola
 
Avatar de 3pies
 
Fecha de Ingreso: diciembre-2003
Ubicación: Desde una destilería
Mensajes: 2.038
3pies está desconectado
Respuesta: Re: Seguridad Web

Cita:
Iniciado por Al Zuwaga Ver Mensaje
Supongo yo que la carpeta download está al mismo nivel que el root de tu sitio. Pero no es el enlace html quien accede al archivo ubicado en esa carpeta sino el script que tenés en download.asp. Creo que con esto quedaría demostrado que el <a href="carpeta_al_mismo_nivel_del_root/archivo.ext"> no funciona
Efectivamente, la carpeta download está al mismo nivel que el root. Hace 2 años que lo monté y la verdad es que no recordaba si era link directo o no. Y efectivamente, no es un link directo. Se accede al fichero a través de ese script que hay en download.asp, y el cual fuerza la descarga del fichero (al menos muestra la ventana de abrir/descargar, para que el usuario elija, e impedir que se cargue directamente en pantalla el fichero, si se trata por ejemplo de una imagen, un pdf, o un doc, por poner tres ejemplos).

Acabo de revisar todo, y he probado con otro ejemplo más sencillo. Créate una carpeta llamada <descargas>, al mismo nivel de tu root, y mete dentro un fichero llamado ejemplo.zip

Ahora en una página llamada prueba.html, y que cuelga del root directamente pones solo este link a otro fichero llamado bajarficheros.asp:
Código:
<a href="bajarficheros.asp?fichero=../descargas/ejemplo.zip&Nombre=Al-Zuwaga.zip&Tamanio=20000">descargar</a>
Explicación de las variables:

fichero = nombre original del archivo.
nombre = nuevo nombre con el que queremos descargar el fichero.
tamanio = tamaño del fichero (para informar en la ventana cuando se descarga, y saber el tiempo estimado de la descarga).

Ahora en el fichero llamado bajarficheros.asp, que está en el root colgando directamente de él, coloca este código:
Código:
<%
Response.Buffer=True
Dim strFilePath, strFileSize, strFileName
Const adTypeBinary = 1
strFilePath = Request.QueryString("Fichero")
strFileSize = Request.QueryString("Tamanio")
strFileName = Request.QueryString("Nombre")
Response.Clear
'*******************************
' Requiere MDAC 2.5 o superior
'*******************************
Set objStream = Server.CreateObject("ADODB.Stream")
objStream.Open
objStream.Type = adTypeBinary
objStream.LoadFromFile Server.MapPath(strFilePath)
strFileType = lcase(Right(strFileName, 4))
'Se pueden añadir otros Content-Types de ficheros, aquí
Select Case strFileType
Case ".asf"
ContentType = "video/x-ms-asf"
Case ".avi"
ContentType = "video/avi"
Case ".doc"
ContentType = "application/msword"
Case ".zip"
ContentType = "application/zip"
Case ".xls"
ContentType = "application/vnd.ms-excel"
Case ".gif"
ContentType = "image/gif"
Case ".jpg", "jpeg"
ContentType = "image/jpeg"
Case ".wav"
ContentType = "audio/wav"
Case ".mp3"
ContentType = "audio/mpeg3"
Case ".mpg", "mpeg"
ContentType = "video/mpeg"
Case ".rtf"
ContentType = "application/rtf"
Case ".htm", "html"
ContentType = "text/html"
Case ".asp"
ContentType = "text/asp"
Case Else
'Otros ficheros
ContentType = "application/octet-stream"
End Select
Response.AddHeader "Content-Disposition", "attachment; filename=" & strFileName
Response.AddHeader "Content-Length", strFileSize
Response.Charset = "UTF-8"
Response.ContentType = ContentType
Response.BinaryWrite objStream.Read
Response.Flush
objStream.Close
Set objStream = Nothing
%>
Luego cliquea en el enlace, y te forzará la descarga del fichero que tienes en la carpeta <descargas>, y al que le cambiará el nombre, poniéndole Al-Zuwaga.zip (pese a llamarse realmente ejemplo.zip).
Cita:
Iniciado por Al Zuwaga Ver Mensaje
Si le paso por mail a un amigo esa dirección (que contiene un documento supersecreto que sólo debe ser descargado desde tu sitio) lo podrá bajar haciendo click en el enlace o copiando y pegándolo en la barra de direcciones de su browser. Se me ocurre que deberías verificar que el referer no sea nulo ni distinto a tu dominio para asegurar la cosa.
Sí, claro que podrá descargarlo, porque son ficheros públicos, y de secreto tienen poco .

Si no quieres que tu amigo se los baje, simplemente en el fichero bajarficheros.asp, antes de ese código, controlas si tiene su sesión como usuario validado (o su cookie, si lo prefieres) -para el caso de que sea un usuario registrado/validado quien solo pueda bajarse el fichero-, y si no lo tiene, pues no ejecutas el código, y lo redireccionas al index, por ejemplo:
Código:
<%if session("usuariovalidado") = true then
      'aquí viene el código anterior para forzar la descarga del fichero
else
      response.redirect "index.asp"
end if
%>
Salu2 master.

PD1: Edito para comentar, que si no quieres pasar por el querystring el nombre de la carpeta (en el ejemplo: descargas), puedes omitirlo, pasando solo el nombre del fichero (ejemplo.zip). En este caso, en la página bajarficheros.asp, solo tienes que concatenar el nombre de la ruta y el fichero así:

strFilePath = "../descargas/" & request.querystring("fichero")

Y así ya tienes la carpeta oculta ocultísima, y aunque se vea el nombre del fichero en el enlace, da igual, porque nadie sabe en qué carpeta está (y si a la carpeta la llamas "laabuelafumamaria", seguro que nadie da con ella ).

PD2: En el fichero bajarficheros.asp, puedes implemenetar más cosas, como sumar 1 hit a las descargas que haya, etc.

Última edición por 3pies; 16-may-2008 a las 04:16
  Responder Citando
Antiguo 16-may-2008, 09:03   #18 (permalink)
Moderador
AlZuwaga es mas bueno que la perra LassieAlZuwaga es mas bueno que la perra LassieAlZuwaga es mas bueno que la perra LassieAlZuwaga es mas bueno que la perra LassieAlZuwaga es mas bueno que la perra LassieAlZuwaga es mas bueno que la perra LassieAlZuwaga es mas bueno que la perra LassieAlZuwaga es mas bueno que la perra LassieAlZuwaga es mas bueno que la perra Lassie
 
Avatar de AlZuwaga
 
Fecha de Ingreso: noviembre-2002
Ubicación: 34.517 S, 58.500 O
Mensajes: 12.897
AlZuwaga está desconectado
Respuesta: Seguridad Web

Ahora si estamos, y creo que esto resuelve definitivamente la duda de RollerSky.
Un saludo!
__________________
Argentinos, "somos lo que somos"
  Responder Citando
Respuesta
No hay votos aún.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.

Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code está Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado
Trackbacks está Desactivado
Pingbacks está Desactivado
Refbacks está Desactivado



La zona horaria es GMT -6. Ahora son las 14:45.
Políticas de Uso de Foros del Web


Message Board Statistics

SEO by vBSEO 3.3.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100