Foros del Web » Programando para Internet » Javascript »

Seguridad

Estas en el tema de Seguridad en el foro de Javascript en Foros del Web. Hay alguna forma de evitar que la gente pueda ver los scripts para poder hacer cierto metodo de seguridad de una pagina determinada?...
  #1 (permalink)  
Antiguo 27/02/2009, 11:07
Avatar de Pinx0  
Fecha de Ingreso: agosto-2008
Ubicación: Valencia
Mensajes: 39
Antigüedad: 15 años, 8 meses
Puntos: 0
Seguridad

Hay alguna forma de evitar que la gente pueda ver los scripts para poder hacer cierto metodo de seguridad de una pagina determinada?
  #2 (permalink)  
Antiguo 27/02/2009, 11:08
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Respuesta: Seguridad

Hola Pinx0

No se puede. Hacer métodos de seguridad con JavaScript es muy inseguro.

Saludos,
  #3 (permalink)  
Antiguo 27/02/2009, 11:35
Avatar de SPAWN3000  
Fecha de Ingreso: marzo-2008
Ubicación: Bogota
Mensajes: 858
Antigüedad: 16 años, 1 mes
Puntos: 15
Respuesta: Seguridad

No funcional para expertos o usuarios avanzados, pero probablemente esta idea te pueda servir(No la he utilizado).

1. Claro, primero utilizar un ofuscador de código...así lo tornas casi ilegible y desanimas a quien desee leer tu código.

2. Podrías crear un script pequeño, que cargue tu código real que se encuentra en un archivo micodigo.js... simplemente ejecutas el primer script al iniciar la página, y mediante DOM creas nuevas etiquetas <script></script> y en el src="micodigo.js"... estas etiquetas deben crearse dentro de un div que tenga la propiedad style.display:none habilitada desde css.

Que sucede, cuando alguien desea ver tú código el navegador devuelve lo que está en memoría inicialmente(osea lo que se cargo al inicio, no lo que creas mediante javascript).

Ahora, si lo quieres complicar más, cárgalo dentro de un iframe con la propiedad display:none

- Problema: firefox trae la opción ver código seleccionado,esa podría ser la opción de ver el código...

Esto podría servir parcialmente para evitar el robo de código, pero no para una seguridad medianamente seria.

MUY NOTABLE: Nadie crea un sistema de seguridad basado en JS, por que sencillamente no es fiable...ya que javascript siempre se ejecuta del lado del cliente( por ello prevalece el sistema del servidor)-Nadie tomaría muy en serio tu seguridad si de Internet se trata. Lo otro sería AJAX, pero
siempre la validación del lado del servidor!
================================================== ======================
También debes bloquear desde el servidor el acceso a la carpeta donde están tus script... de lo contrario podría acceder desde url(apache .htaccess te permite asignar restricciones a carpetas con us y pass).

NOTA: Te aconsejo solo utilizar el punto uno:(el ofuscador), puedes usar el que utilizan librerias como prototype,dojo... y que ademas de optimizar(en la mayoría de los casos) y comprimir tu código lo hace difícil de entender...esto podría valer inicialmente.

Aquí hay uno:
http://dean.edwards.name/
- YUI Compressor,Dojo ShrinkSafe,Minify JS... y muchos mas.

Un saludo,

Última edición por SPAWN3000; 27/02/2009 a las 11:42
  #4 (permalink)  
Antiguo 27/02/2009, 17:01
Avatar de Pinx0  
Fecha de Ingreso: agosto-2008
Ubicación: Valencia
Mensajes: 39
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: Seguridad

claro si el problema que tengo es que me han pedido una web en un servidor que ni tiene php ni "na de ná" entonces... hay una seccion que es ver una camara web que quieren que sea con login, y que dentro se muestre esa webcam que no es mas que una direccion ip y un puerto...

eso es lo que me interesa ocultar realmente, amen de las contraseñas...

Vamos que seguro desde luego es imposible que sea, pero como los que lo van a ver teoricamente no tienen mucha idea de infórmatica... debería bastar para evitar que lo vean cuando no deben.

Probaré lo del ofuscador y el iframe oculto.
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.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:13.