• Publicidad

Ejecutar comandos internos del SO con Javascript

Discute todo acerca de JavaScript así como DHTML o la tecnología AJAX.

Ejecutar comandos internos del SO con Javascript

Notapor andydavid » 2006-05-26 14:14 @635

:?: :?: :? Compañeros me pregunto si en JavaScript existe alguna función similar a system de Perl que me permita ejecutar comandos en el sistema operativo del cliente, por ejemplo, crear una carpeta en el escritorio o ejecutar la calculadora.
ESTUDIO CARACAS1348
Avatar de Usuario
andydavid
Perlero nuevo
Perlero nuevo
 
Mensajes: 20
Registrado: 2005-05-27 08:47 @408
Ubicación: RB_VENEZUELA

Publicidad

Notapor kidd » 2006-05-26 19:49 @867

Hola:

Por motivos de seguridad esto no se permite. Normalmente se necesitan hacer exploits de hoyos de seguridad del navegador para lograr esto, sin embargo, está prohibido.

Saludos
Uriel Lizama Perl programmer fundador de Perl en Español
Perl Programming Language
Avatar de Usuario
kidd
Creador de Perl en Español
Creador de Perl en Español
 
Mensajes: 1166
Registrado: 2003-10-15 16:52 @744
Ubicación: México

Notapor explorer » 2006-05-27 03:53 @203

Se podría hacer con ActiveX, pero a) sólo funciona en windows y con el Internet Explorer, y b) esta tecnología a dado tantos problemas de seguridad que la propia Micro$oft se ha planteado quitarla definitivamente.

Se puede hacer de la siguiente manera. Como no se puede arrancar un ejecutable desde JavaScript, se puede al menos, tener un ejecutable ya instalado en el ordenador del cliente, que esté arrancado y escuchando en un determinado puerto (puede estar instalado como servicio de windows). Lo más normal ho en día es tener un Apache o un Tomcat.

Desde JavaScript, y por orden del cliente, para 'arrancar' el programa, realmente lo que estaríamos haciendo es una petición http al programa que está escuchando. Por ejemplo, el usuario puede pulsar en la página html un enlace de este tipo: http://127.0.0.1:8086/?cmd=dir&arg1=camino.

De esta forma, el programa que está en el propio ordenador del cliente (127.0.0.1), está escuchando por el puerto 8086 y recibe los argumentos que debe ejecutar.

Naturalmente, la seguridad deberá ser máxima:
1.- el programa que recibe la llamada DEBE comprobar que el comando a ejecutar está en su lista de comandos permitidos.
2.- los argumentos están dentro de los rangos de valores permitidos.

Esta es la solución que yo he visto más frecuentemente para poder interactuar una máquina desde una página web.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14486
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España


Volver a JavaScript

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 invitados