[opinion] Ejecucion sudo para "proteger" aplicaciones

Como estan todos, feliz navidad y año nuevo para todos desde Venezuela ;)...... Este tema lo hago mas que todo como opinion a ver que piensan ustedes y sus sugerencias.

Estuve buscando alguna aplicacion para proteger mi navegador con contraseña para su ejecucion, uso Opera (no hare propaganda a Opera, no en este topic xD). Como en mi navegador tengo mis contraseñas guardadas, autologins, extensiones y demas, dije no mejor lo protejo con contraseña de ejecucion, ya que yo presto mucho mi minilaptop a amigos y demas....

La cuestion que no quise instalar ninguna aplicacion como tal que me consuma recursos y demas, como en windows que instalas algo para proteger otra ***** pero te quita un poco de recuros ¬¬.....lo que hice fue cambiar los permisos al ejecutable le puse que no pueda ser accedido por otros usuarios y lectura y acceso solo a root, de este modo hay que ejecutarlo como "sudo" en consola o con el "gksu" con ALT+F2. De este modo pedira la clave de super usuario para poder ejecutarlo, lo obvio es que se ejecuta como super usuario.

Lo que me gustaria que opinaran es si creen que es seguro hacer esto, ya que el navegador al estar con permisos de super usuario no se si este creando algun agujero de seguridad por alli que pueda ser aprovechado de alguna forma....

Si es asi leo sugerencias de otra forma de proteger mi navegador con contraseña para su ejecucion, aunque Opera como tal cuenta con un sistema que puede pedir una contraseña maestra cada ves que inicia, pero quiero que ni pueda ejecutarlo.

¿Y si creas un nuevo usuario " amigos" de tal modo que cuando prestes tu pc, lo haces iniciando sesión con tal usuario y listo .No es alto nivel de seguridad ,pero ,fácil, rápido y a prueba de simples manipulaciones de extraños.

Hombre, si te metes en Internet como superusuario y te atacan con un exploit que permita la ejecución de código malicioso, el alcance del ataque será mayor.

Probablemente, sería mejor seguir la recomendación de Caliban. Puedes crear un usuario para los invitados y asegurarte de que no tiene acceso al navegador web. Si te pones a ello, también puedes crear un usuario llamado "navegador" y asegurarte de que sólo él tiene permiso para utilizar Opera... y de que sólo tú conoces su contraseña.

En todo caso, nada impide (en principio) que alguien ejecute un navegador propio aunque el del sistema esté protegido. Por ejemplo, pude llevar una versión precompilada de firefox y ejecutarla en el directorio $HOME. Evitar este tipo de incidentes ya requiere un poco más de coco.

si eso lo imagine que en cualquier ataque podrian ***** mas....otra cuenta de usuario tambien podria ser, pero no para "amigos" xq siempre tengo mi minilaptop o mi pc abierta hay normal. Por que yo puedo bloquear el opera y que los demas usen firefoxo chrome.

Pero sera que puedo crear un usuario como dices arriba, llamado "navegador" por ejemplo, y que solo el tenga permiso de ejecucion del Opera (aunque esto podria servir para cualquier aplicaicon), pero en ese caso por ejemplo si yo estoy logueado com mi usuario normal llamado "javier" como haria para ejecutar el opera como el otro usuario. Por que tambien lo que quiero hacer es que la configuracion del opera y todos los demas datos esten guardados en una ubicacion que si alguien en un momento dado esta en mi cuenta de "javier" no pueda acceder a los datos de Opera, que en este caso si se ejecuta como "navegador" estarian en /home/navegador/.opera

Es interesante la cuestion, xq asi se podria restringir el acceso a una aplicacion solo creando un usuario habria algo mas de seguridad no, si alguien entra a tu pc por que te descuidaste, igual no puede acceder a "x" aplicacion sin la contraseña del usuario indicado.

Creo que postgresql hace algo parecido, tu para autenticarte debes hacerlo como usuario postgresql con su clave....o sea que si se puede, si mal no recuerdo trabaja asi.

porque no haces un script para mover el perfil del programa que uses,
algo como visitas si alguna condicion : cierre el navegador ;mueva el perfil; abra el navegador

Listo, mas facil de lo que pense :P.....

Cree un usuario llamado "opera", movi mi directorio ".opera" de la configuracion al home del nuevo usuario, les cambie permiso dandole propietarios y grupo "opera" a todos los archivos y denegado para todos los demas. Luego me fui a /usr/bin cambie permiso del ejecutable de que solo ejecute el usuario "opera" y finalmente cambie los lanzadores y lo ejecuto con gksu "gksu -u opera /usr/bin/opera" pide la contraseña y abre.....Excelente, tal cual lo queria...

Por eso sigo amando Linux :P....no lo habia pensado asi para otras aplicaciones, quieren bloquear distintas aplicaciones con usuarios aparte pero que todos entren a la misma sesion, puedes tener una sesion grafica para todo el mundo que use la pc, pero determinadas aplicaciones la restringen de esa forma...

saludos y feliz año gente ;)

yo lo hubiese echo asi

#!/bin/bash

kill -9 $(ps aux | grep /usr/lib/opera/opera | grep -v grep| awk ' {print $2}')

if [ -d "$HOME/.mio" ]
            then
                mv -f $HOME/.mio/* $HOME/.opera 
rm -fr $HOME/.mio
        else
            mkdir $HOME/.mio
mv -f $HOME/.opera/*  $HOME/.mio/
   fi

podes llegar a encriptar o lo que se te ocurra

mmm interesante, si pense un script, pero no es tan necesario (en este caso claro), solo con lo que se hice quedo fino, por que la carpeta y los archivos tienen como propietario opera y grupo opera tambien, mas nadie puede acceder ni leer ni nada, solo opera y root obvio. Encriptarlos como tal seria bueno pero solo aquel que guarda mis contraseñas, aunque imagino que eso opera debe tenerlo encriptado tambien, deberia :S .... ya reviso eso :S

Puedes cifrar el directorio en cuestión si quieres.

PASO 1: Crea un sistema de ficheros cifrado contenido en un archivo.

dd if=/dev/urandom of=contenedor.fs bs=1024 count=el_tamaño_que_quieras

losetup /dev/loop1 contenedor.fs

cryptsetup luksFormat /dev/loop1

cryptsetup luksOpen /dev/loop1 nuevo

mkfs.ext2 /dev/mapper/nuevo

PASO 2: Copia los contenidos de la carpeta de configuración al sistema de ficheros cifrado.

mount /dev/mapper/nuevo /mnt/donde_quieras

cp $los_archivos_que_sean /mnt/donde_quieras

PASO 3: Ciérralo todo.

umount /dev/mapper/nuevo

cryptsetup luksClose nuevo

losetup -d /dev/loop1

PASO 4: Cuando quieras abrir el contenedor cifrado, lo montas en el la carpeta donde tuvieses los archivos de configuración.

losetup /dev/loop1 contenedor.fs

cryptsetup luksOpen /dev/loop1 nuevo

mount /dev/mapper/nuevo $HOME/.opera

Acuérdate de borrar los archivos originales para no dejar copias no cifradas por ahí. Quizá quieras crear un juego de scripts para que te gestionen la carpeta de forma automática. NO TECLEES NADA SIN HABERTE LEÍDO LOS RESPECTIVOS MANUALES Y SABER QUÉ NARICES ESTÁS HACIENDO.

Pon el icono de cualquier otro navegador en el escritorio y quita el de Opera. El 90% de las veces no se necesita nada más.
(Y si quitas los iconos de Opera para iniciarlo por terminal o Alt+F2 ya ni te cuento).

¿Porqué Opera tiene que ser privativo? cry
A fin de cuentas son sólo unos mogollones de servidores por ahí comprimiendo cosas como locos. Aún así chrome es más rápido.
Pero no lo tengo en gentoo así que a aguantarse con firefox -que, todo hay que decirlo, en velocidad ha mejorado bastante-.

Puedes usar links, links2 o w3m. Nadie tendrá ni puñetera idea de manejarlos así que tu seguridad no se verá comprometida. XDDD.