Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

conocen alguna función en bash para ofuscar/ocultar contenido de variables?

840 views
Skip to first unread message

Flako

unread,
Aug 10, 2011, 8:30:02 PM8/10/11
to
  Hola
  Estoy haciendo un script en bash/awk/msdos y necesito ofuscar/ocultar un password que guardo en una variable, dicha variable la defino y asigno valor desde  un archivo plano (cosa no muy segura)
  
  Necesito que el password este en texto plano, por que lo uso para ejecutar ciertos programas, por lo que estoy pensado en encontrar alguna función (o hacerla) que ofusque y desofusque el password.
  Es decir, definir como:
      Pass='dsdsd dsdfsdfsdfert'  #definido como ofuscar('ElDiaDeHoy33')
 
  y luego usarlo como:
      comando  -U user -P  desofuscar($Pass)

   La verdad es que ya estoy pensado en hacerme la función.. cosa que no parece buena idea..
   Conocen alguna función/comando para ofuscar la variable? así me ahorro de hacer la función


   Gracias.

Fernando C. Estrada

unread,
Aug 11, 2011, 1:30:01 AM8/11/11
to
On Wed, Aug 10, 2011 at 09:24:58PM -0300, Flako wrote:
> Hola

Hola,

¿Para que necesitas escribir la variable en tu script?, se me ocurre que
si la variable de por si ya estará en tu archivo de texto ya que lo
utilizas para otras cosas y suponiendo aparezca de esta forma:

clave=secreto

..., en tu script únicamente asignes el valor a una variable e invoques
el comando con dicha variable, por ejemplo:

password=$(grep ^'clave=' ~/.topsecret | tr -d '\n''\r' | cut -d '=' -f 2)
comando -U user -P $password

Para el tema de ofuscar pues tendrías opciones infinitas ya que tu
establecerías el algoritmo, pero entre las cosas más simples puedes por
ejemplo pasar los valores a hexadecimal con algo así:

password=$(echo "secreto" | xxd)
echo $password | xxd -p -r

..., ó a base 64 por ejemplo de esta forma::

password=$(echo "secreto" | base64)
echo $password | base64 -d

Sin mayor información del problema a resolver espero esto te sea de
ayuda.

Saludos y buen día,

P.D. Jamás se me había ocurrido hacer un script combinando Bash, AWK y
¿MS-DOS? (imagino te refieres a la sintaxis de un archivo batch), esto
obviamente me tiene asombrado así que por favor cuando termines te
agradeceré me permitas conocer el resultado de tal hazaña ;-)
--
Fernando C. Estrada

Consejo 34 de Debian: Si quiere seguir Debian sid y tiene una conexión lenta
o una cuota de descarga pequeña, vea el paquete debdelta.


--
To UNSUBSCRIBE, email to debian-user-s...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listm...@lists.debian.org
Archive: http://lists.debian.org/20110811052...@camaleonina.octanux.com

Juan Sierra Pons

unread,
Aug 11, 2011, 2:00:02 AM8/11/11
to
Buenos días,

Como dice Fernando, nos ayudaria ( a ayudarte) mucho saber para que es
el password: un servidor ftp, samba, autentificación web, etc. Ya que
si por ejemplo fuera para logarse en un servidor remoto podrías usar
ssh + keychain sin necesidad de poner el password en claro en ningún
sitio.

Salu2
--------------------------------------------------------------------------------------------------------------
Juan Sierra Pons                               | ju...@elsotanillo.net
Usuario Linux Registrado: #257202   | http://www.elsotanillo.net
Key Fingerprint = DF53 7415 0936 244E 9B00  6E66 E934 3406 A110 F4FE
--------------------------------------------------------------------------------------------------------------

El día 11 de agosto de 2011 07:29, Fernando C. Estrada
<fces...@fcestrada.com> escribió:

Archive: http://lists.debian.org/CABSy9uUOS2doGnwvbObcXUft...@mail.gmail.com

Santiago Vila

unread,
Aug 11, 2011, 9:30:02 AM8/11/11
to
On Wed, 10 Aug 2011, Flako wrote:

>   Hola
>   Estoy haciendo un script en bash/awk/msdos y necesito ofuscar/ocultar un password que guardo
> en una variable, dicha variable la defino y asigno valor desde  un archivo plano (cosa no muy
> segura)
>   
>   Necesito que el password este en texto plano, por que lo uso para ejecutar ciertos programas,
> por lo que estoy pensado en encontrar alguna función (o hacerla) que ofusque y desofusque el
> password.

No queda claro qué es lo que quieres conseguir.

Si pones permisos restrictivos al script y a la contraseña, no
importará que esté en claro, porque nadie más podrá verlos.

Si no pones permisos restrictivos al script y la contraseña,
cualquiera que tenga acceso a ellos acabará sabiendo la contraseña
verdadera, por muy ofuscada que esté, con lo que no ganas gran cosa.

>   Es decir, definir como:
>       Pass='dsdsd dsdfsdfsdfert'  #definido como ofuscar('ElDiaDeHoy33')
>  
>   y luego usarlo como:
>       comando  -U user -P  desofuscar($Pass)

Y en ese preciso momento, cualquiera que haga "ps ax" sabrá cuál es la contraseña.
Tanto trabajo para nada. Recuerda que cuando se trata de seguridad, lo
que suele importar es el eslabón más débil de la cadena.


--
To UNSUBSCRIBE, email to debian-user-s...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listm...@lists.debian.org

Archive: http://lists.debian.org/alpine.DEB.2.00.1...@kolmogorov.unex.es

Flako

unread,
Aug 11, 2011, 10:50:01 AM8/11/11
to
Hola
Disculpen si no quedo claro..
La idea es correr un comando de vmware que los parámetro son: vmware-cmd.bat    -U administrador -P EsteEsMiPassword -mas parametros
Lo que hace necesario, colocar el password en texto plano y tenerlo un archivo plano (sin encriptacion).

Yo lo que quiero es ofuscar/ocultar  (no encriptar) a la vista de mirones la contraseña.. sumado a permisos de archivos no puedo hacer mucho mas. la idea es no hacérselas tan facil.

Lo que me dice  Fernando de  base64, es lo que ando buscando..  gracias
Anoche replanteando la busqueda tambien encontre http://sateliteguayana.com.ve/documentos/bash/ejemplos/c252.html que permite encriptar codigo, o textos.

Lo de "ps ax"  que dice santiago, es verdad.. se me habia escapado, igual el script es para iniciar/bajar VMWares sobre un server  windows, por lo que el script solo corre en el servidor de forma desatendida y ese caso seria de bajo el riesgo, en ese caso, solo se me ocurre usar cpau, pero habria que ver la seguridad.. para cpau no vi doc de como encripta.


Y por la ultima pregunta, el script es bash/awk/msdos porque corre sobre windows, es un script de bash/awk  (toda la logica con ellos), pero igual que en Linux, bash se queda corto y terminas corriendo comando del S.O, en este caso msdos/windows :)
Se logra GNUsear windows con http://gnuwin32.sourceforge.net/  y http://unxutils.sourceforge.net/  :)

Gracias a todos..
Encontre http://www.fourmilab.ch/webtools/base64/ para windows, cuando ofusque mis password les comento


Angel Claudio Alvarez

unread,
Aug 12, 2011, 6:10:02 PM8/12/11
to
y por que no usas perl o python ??


--
To UNSUBSCRIBE, email to debian-user-s...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listm...@lists.debian.org

Archive: http://lists.debian.org/1313186943....@gabita2.angel-alvarez.com.ar

Flako

unread,
Aug 12, 2011, 6:40:01 PM8/12/11
to
>
y por que no usas perl o python ??



Porque soy viejo.... y aprender cosas nuevas lleva esfuerzo y tiempo..
Y porque cuando comencé con Linux, perl ya estaba "muriendo", y python comenzando como bicho raro.. y principalmente mis revistas españolas que compraba tenían mas tutoriales de bash/awk :)
Y porque awk es hermoso para hacer filtros.. fue diseñado para eso :)
Y porque ...jajaj
En realidad es verdad que con bash te quedas aveces un poco corto  y es un poco tosco, pero cumple su función muy bien :)


SALUDOS

Carlos Zuniga

unread,
Aug 13, 2011, 11:50:02 AM8/13/11
to
2011/8/12 Flako <subf...@gmail.com>:


Bueno, si el programa que utilizas solo toma el password por la linea
de comandos, no importa que utilices, siempre va a ser visible.

Deberías ver si tiene otras opciones para obtenerlo.

Para guardar el password podrias usar gnome-keyring y este programa
que te permite usarlo desde consola:
http://www.gentoo-wiki.info/HOWTO_Use_gnome-keyring_to_store_SSH_passphrases

Así por lo menos no estarás guardando el password en texto plano...

Saludos
--
Linux Registered User # 386081
A menudo unas pocas horas de "Prueba y error" podrán ahorrarte minutos
de leer manuales.


--
To UNSUBSCRIBE, email to debian-user-s...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listm...@lists.debian.org

Archive: http://lists.debian.org/CAABYcjOrYftuzGWPT28d_Lda...@mail.gmail.com

Marc Aymerich

unread,
Aug 13, 2011, 12:30:01 PM8/13/11
to
2011/8/13 Carlos Zuniga <carlo...@gmail.com>:

> 2011/8/12 Flako <subf...@gmail.com>:
>>> >
>>> y por que no usas perl o python ??
>>>
>>>
>>
>> Porque soy viejo.... y aprender cosas nuevas lleva esfuerzo y tiempo..
>> Y porque cuando comencé con Linux, perl ya estaba "muriendo", y python
>> comenzando como bicho raro.. y principalmente mis revistas españolas que
>> compraba tenían mas tutoriales de bash/awk :)
>> Y porque awk es hermoso para hacer filtros.. fue diseñado para eso :)
>> Y porque ...jajaj
>> En realidad es verdad que con bash te quedas aveces un poco corto  y es un
>> poco tosco, pero cumple su función muy bien :)
>>
>
>
> Bueno, si el programa que utilizas solo toma el password por la linea
> de comandos, no importa que utilices, siempre va a ser visible.
>
> Deberías ver si tiene otras opciones para obtenerlo.
>
> Para guardar el password podrias usar gnome-keyring y este programa
> que te permite usarlo desde consola:
> http://www.gentoo-wiki.info/HOWTO_Use_gnome-keyring_to_store_SSH_passphrases
>
> Así por lo menos no estarás guardando el password en texto plano...
>

Pero hay que usar password para acceder al keyring, así que estaríamos
en las mismas :)

--
Marc


--
To UNSUBSCRIBE, email to debian-user-s...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listm...@lists.debian.org

Archive: http://lists.debian.org/CA+DCN_tLrX+TDMnTivLNg_F...@mail.gmail.com

Angel Claudio Alvarez

unread,
Aug 14, 2011, 7:20:01 PM8/14/11
to

perl esta "muriendo" desde hace 15 años. Pero nadie termina de matarlo
bash es "super amigable" sobre todo para trabajar con vectores o listas
Pone media pila y si leete algo de perl o la viborita que no te va a
costar mucho, si tenes idea de C y bash en 10 dias estas scripteando en
python o perl

>
> SALUDOS
>

--
To UNSUBSCRIBE, email to debian-user-s...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listm...@lists.debian.org

Archive: http://lists.debian.org/1313363452....@gabita2.angel-alvarez.com.ar

Fernando C. Estrada

unread,
Aug 14, 2011, 9:00:01 PM8/14/11
to
On Sun, Aug 14, 2011 at 08:10:52PM -0300, Angel Claudio Alvarez wrote:
> El vie, 12-08-2011 a las 19:36 -0300, Flako escribió:
> >
> > y por que no usas perl o python ??
> >
> > Porque soy viejo.... y aprender cosas nuevas lleva esfuerzo y tiempo..
> > Y porque cuando comencé con Linux, perl ya estaba "muriendo", y python
> > comenzando como bicho raro.. y principalmente mis revistas españolas
> > que compraba tenían mas tutoriales de bash/awk :)
> > Y porque awk es hermoso para hacer filtros.. fue diseñado para eso :)
> > Y porque ...jajaj
> > En realidad es verdad que con bash te quedas aveces un poco corto y
> > es un poco tosco, pero cumple su función muy bien :)
>
> perl esta "muriendo" desde hace 15 años. Pero nadie termina de matarlo
> bash es "super amigable" sobre todo para trabajar con vectores o listas
> Pone media pila y si leete algo de perl o la viborita que no te va a
> costar mucho, si tenes idea de C y bash en 10 dias estas scripteando en
> python o perl

Perl está tan vivo que Perl6 (aka rakudo) ya esta en Debian [1][2].

[1] http://packages.debian.org/rakudo
[2] http://ddumont.wordpress.com/2011/07/24/perl6-aka-rakudo-is-available-on-debian/
--
Fernando C. Estrada

<james> abuse me. I'm so lame I sent a bug report to debian-devel-changes
-- Seen on #Debian


--
To UNSUBSCRIBE, email to debian-user-s...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listm...@lists.debian.org

Archive: http://lists.debian.org/2011081500...@camaleonina.octanux.com

Flako

unread,
Aug 15, 2011, 6:20:02 PM8/15/11
to
>
> perl esta "muriendo" desde hace 15 años. Pero nadie termina de matarlo
> bash es "super amigable" sobre todo para trabajar con vectores o listas
> Pone media pila y si leete algo de perl o la viborita que no te va a
> costar mucho, si tenes idea de C y bash en 10 dias estas scripteando en
> python o perl

Perl está tan vivo que Perl6 (aka rakudo) ya esta en Debian [1][2].

[1] http://packages.debian.org/rakudo
[2] http://ddumont.wordpress.com/2011/07/24/perl6-aka-rakudo-is-available-on-debian/
--

       Solo como parara seguir el debate, creo que para comandos que piden el password por linea de comando, no hay mucho que se pueda hacer, son inseguros de por si.. lo correcto seria que usen certificados para la autenticación (similar a lo que hace sshd) imagino que debe haber algun programa que permita ocultar el password vía certificados.

    
      Y por lo de "perl ya estaba muriendo", fue en onda burla..., es un gran lenguaje,pero si me tengo que poner a aprender (de onda) un nuevo lenguaje de propósito general, aprendo uno nuevo como Python, o uno mas nuevo :)
      El tema es el esfuerzo  (reducción de mi tiempo libre) necesario, hoy no tengo ganas de  aprender solo por aprender  (sin objetivo)..   (extranio los tiempos de cuando si quería..)  :(

       Saludos.


Manuel Soto

unread,
Aug 26, 2011, 9:20:02 PM8/26/11
to


Amigo, si quieres soporte para programar scripts en Windows al menos
ten la decencia de colocar OFFTOPIC en el subject

>
> Y por la ultima pregunta, el script es bash/awk/msdos porque corre sobre
> windows, es un script de bash/awk  (toda la logica con ellos), pero igual
> que en Linux, bash se queda corto y terminas corriendo comando del S.O, en
> este caso msdos/windows :)
> Se logra GNUsear windows con http://gnuwin32.sourceforge.net/  y
> http://unxutils.sourceforge.net/  :)
>
> Gracias a todos..
> Encontre http://www.fourmilab.ch/webtools/base64/ para windows, cuando
> ofusque mis password les comento
>
>
>

--
To UNSUBSCRIBE, email to debian-user-s...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listm...@lists.debian.org

Archive: http://lists.debian.org/CAE_7eEOH2EJOX2QCBRRZO4df...@mail.gmail.com

Flako

unread,
Aug 26, 2011, 10:10:01 PM8/26/11
to
El día 26 de agosto de 2011 22:16, Manuel Soto <mrs...@yahoo.com> escribió:
>> Lo de "ps ax"  que dice santiago, es verdad.. se me habia escapado, igual el
>> script es para iniciar/bajar VMWares sobre un server  windows, por lo que el
>> script solo corre en el servidor de forma desatendida y ese caso seria de
>> bajo el riesgo, en ese caso, solo se me ocurre usar cpau, pero habria que
>> ver la seguridad.. para cpau no vi doc de como encripta.
>>
>
>
> Amigo, si quieres soporte para programar scripts en Windows al menos
> ten la decencia de colocar OFFTOPIC en el subject
>

Hola Manuel,
primero: gracias por leer el mail (realmente se agradece),
segundo: yo nunca pedí soporte para programar un script en windows, si
lees detenidamente mi primer mail yo hago una pregunta "conceptual"
de programación en bash (donde corro bash no va al caso) porque
necesitaba ideas de como solucionar una situación de programación en
bash, mi mail inicial ni siquiera dice windows.. dice msdos :)

Bueno solamente eso.. asumo que tengo derecho hacer una replica de lo
que escribiste. Luego quien tiene razón en el tema yo de mi parte se
lo dejo a los abogados.. yo paso en la discusión..
Saludos, Flako


--
To UNSUBSCRIBE, email to debian-user-s...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listm...@lists.debian.org

Archive: http://lists.debian.org/CADqxbRRMUwiRyKDsSJ4wKCH...@mail.gmail.com

0 new messages