• Publicidad

Cómo ocultar información confidencial (password) en script

¿Apenas comienzas con Perl? En este foro podrás encontrar y hacer preguntas básicas de Perl con respuestas aptas a tu nivel.

Cómo ocultar información confidencial (password) en script

Notapor fgalves » 2008-04-24 06:50 @326

Hola a todos,

El caso es que tengo un script Perl que se conecta por medio de los módulos SFTP y SSH a entornos remotos. En dicho script, actualmente guardo la información necesaria para realizar dicha conexión (user, password, hostname) en sendas variables: $user, $password y $hostname respectivamente.

El caso es que me gustaría ocultar dicha información, de manera que no sea visible (o entendible) a usuarios externos que eventualmente pudieran interesarse por el código de dicho script.

Me gustaría saber si es posible realizar algún tipo de encriptado sobre dichos datos, y en caso afirmativo, que mecanismo/módulo me recomendáis para llevarlo a cabo.

¡Gracias por adelantado!
Felipe
fgalves
Perlero nuevo
Perlero nuevo
 
Mensajes: 210
Registrado: 2006-09-25 13:54 @621

Publicidad

Notapor explorer » 2008-04-24 07:51 @368

Una primera medida sería dejar permisos de lectura y ejecución del script solo a los usuarios y/o programas que lo tengan que ejecutar.

Otra opción sería tener el usuario y contraseña codificados de una cierta manera, inventada por ti, y que una subrutina dentro del programa se encargase de extraerla. Luego, proteger la modificación del fichero contra modificaciones. Lo malo es que no podrás evitar la ejecución en modo depuración.

Puedes usar algún módulo para 'ocultar' el código, como el Acme::Bleach (eso sí, guardate una copia del original antes de ejecutarlo por primera vez. Quedas avisado). Esta es una solución muy divertida y alejará a los ilusos.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor monoswim » 2008-04-24 07:58 @373

Podrías encriptar la contraseña con la función crypt().

Y hacer como se hace con las contraseñas de Linux, para chequear la contraseña debes encriptar ambas y compararlas... creo que era crypt($oldpass, $newpass).

Saludos
MonoSwim
Perl Programming Language
Avatar de Usuario
monoswim
Perlero nuevo
Perlero nuevo
 
Mensajes: 452
Registrado: 2003-11-18 16:13 @717
Ubicación: Buenos Aires


Volver a Básico

¿Quién está conectado?

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