ShellShock.- Vulnerabilidad importante

La shell de bash y sh son vulnerables. Ya estan saliendo los parches, hay que actualizar el sistema.

Para saber tienen el problema ejecuten en una shell sin permisos de root:

Para bash:

env x='() { :;}; echo vulnerable' bash -c "echo this is a test"

Es vulnerable (si ejecuta el primer comando echo, el que está dentro de la variable x) si les devuelve algo así como:

vulnerable
this is a test

Para sh:

rm -f echo
env X='() { (a)=>\' sh -c "echo date"; cat echo

Es vulnerable si (ejecuta el comando date):

sh: X: line 1: syntax error near unexpected token `=’
sh: X: line 1: `’
sh: error importing function definition for `X’
Thu 25 Sep 2014 08:50:18 BST

 

 

 

Para más información:
https://lists.debian.org/debian-security-announce/2014/msg00220.html
http://barrapunto.com/articles/14/09/24/2114240.shtml
http://apple.stackexchange.com/questions/146849/how-do-i-recompile-bash-to-avoid-shellshock-the-remote-exploit-cve-2014-6271-an
https://es-us.noticias.yahoo.com/descubren-vulnerabilidad-seguridad-que-podr%C3%ADa-ser-m%C3%A1s-grande-235300902.html

Anuncios

Comando.- xdg-mime

Comando.- xdg-mime

 

El comando xdg-mime sirve para vincular un programa a un tipo de archivo (mime).

 

Ayuda:

xdg-mime --help

xdg-mime --manual

man xdg-mime

 

Ver cual es el tipo mime de un fichero

xdg-mime query filetype 'FICHERO'

Devuelve:

MIME

Ej., ver cual es el mime de un GIF:

xdg-mime query filetype 'imagen.gif'

Devuelve:

image/gif

El mime de las carpetas:

xdg-mime query filetype /home

Devuelve:

inode/directory

Estos son los tipos que me arroja ejecutando xdg-mime query filetype:

gif ==> image/gif
png ==> image/png
bmp ==> image/bmp
jpg/jpeg ==> image/jpeg
avi ==> video/x-msvideo (en proinf.net dicen que es video/avi)
mkv ==> video/x-matroska
flv ==> video/x-flv
webm ==> video/webm
mp4 ==> video/mp4
srt ==> application/x-subrip
txt ==> text/plain
rar ==> application/x-rar
zip ==> application/zip
html ==> text/html
xcf ==> image/x-xcf
oga ==> audio/x-vorbis+ogg
directorios ==> inode/directory
pdf ==> application/pdf
Administrador de archivos ==> inode/directory

 

Ver el tipo mime asociado a un programa. También sirve para comprobar si el cambio de tipo mime a otro tipo de llevo a cabo.

xdg-mime query default MIME

Devuelve:

PROGRAMA

Ejemplos:

xdg-mime query default image/gif

Devuelve:

gpicview.desktop

xdg-mime query default inode/directory

Devuelve:

nautilus.desktop

 

Cambiar el programa asociado a un tipo mime:

xdg-mime default PROGRAMA MIME

Ejemplos:

xdg-mime default gpicview.desktop image/gif

xdg-mime default pcmanfm.desktop inode/directory

Algunos ejemplos de programas:

vlc ==> vlc.desktop
GNOME Mplayer ==> totem.desktop
The Gimp ==> gimp.desktop
SubtitleEditor ==> subtitleeditor.desktop
GpicView ==> gpicview.desktop
evince ==> evince.desktop
FBreader ==> FBReader.desktop
pcmanfm ==> pcmanfm.desktop
nautilus ==> nautilus.desktop

 

 

 

http://proinf.net/permalink/comando_linux_para_asociar_un_programa_a_un_tipo_de_archivo
http://linux.ues.edu.sv/node/627

 

 

 

Comandos.- /etc/shells

En el fichero de texto /etc/shells esta la lista de todas las shells que dispone la máquina con la ruta completa de los logins validos de las shells.

Se puede ver el contenido ejecutando en la terminal:

cat /etc/shells

Me devuelve:

# /etc/shells: valid login shells
/bin/csh
/bin/sh
/usr/bin/es
/usr/bin/ksh
/bin/ksh
/usr/bin/rc
/usr/bin/tcsh
/bin/tcsh
/usr/bin/esh
/bin/dash
/bin/bash
/bin/rbash

Esas son las shells de las que dispongo junto con sus rutas completas.

 

http://man.he.net/man5/shells

 

 

 

Manuales de Linux, redes, programación para descargarse por P2P

Gracias a cuelgame.net encontré unos manuales de GNU/Linux con muy buena pinta, para descargar por P2P. Les dejo el enlace magnético:

magnet:?xt=urn:btih:7628b235a486abc87b287b3ed19f48eb54affeba&dn=Manuales%3ALinux,redes,programacion&tr=http%3A%2F%2Ftracker.thepiratebay.org%2Fannounce&tr=udp%3A%2F%2Ftracker.openbittorrent.com%3A80&tr=udp%3A%2F%2Ftracker.ccc.de%3A80&tr=udp%3A%2F%2Ft

Nota: Si da error el enlace magnético como lo puse, lo encuentran en la entrada de cuelgame.net que enlace más arriba.

 

Contenido:

  • Administración avanzada de GNU-Linux.pdf
  • Administración de una red local basada en Internet.pdf
  • Aitken Peter - Aprendiendo C En 21 Dias.PDF
  • Análisis de seguridad de los protocolos TCP-IP.pdf
  • Anaya.La Biblia de C.pdf
  • Apuntes C.pdf
  • Aspectos avanzados de seguridad en Redes.pdf
  • Curso C.pdf
  • Curso completo de HTML.pdf
  • El shell Bash.pdf
  • GNULinux-Programacion de sistemas.pdf
  • Guia de administración de redes con Linux.pdf
  • Guía de Linux para el usuario.pdf
  • Guía de redes.pdf
  • Guia de seguridad del administrador de Linux.pdf
  • Guía Linux de programación(GULP).pdf
  • Introduction to the Command Line.pdf
  • La Guía del enROOTador para Linux.pdf
  • Lenguaje ensamblador para PC.pdf
  • Linux 2.4 Filtrado de paquetes.COMO.pdf
  • Linux from scratch.pdf
  • Manuales de programacion en Linux.pdf
  • Más allá de Linux from scratch.pdf
  • Prentice Hall - Linux Maxima Seguridad - Edicion Especial.PDF
  • Programación avanzada en shell.pdf
  • Programación de socket Linux (Sean Walton).pdf
  • Programación en C.pdf
  • Python.pdf
  • Redes de área local.Aplicaciones y servicios Linux.pdf
  • Redes de computadoras.pdf
  • Redes de computadoras (A. Tanenbaum.4ª Edición).pdf
  • Redes Linux con TCP-IP.pdf
  • Redes tcp-ip.pdf
  • Seguridad en Unix y redes.pdf
  • Tanenbaum Andrew - Sistemas Operativos Modernos.PDF
  • Tutorial de IPtables (O. Andreasson).pdf
  • Tutorial de Python..pdf
  • XHTML+CSS.pdf

 

 

 

Firefox.- Guardar los marcadores utilizando la terminal en un archivo de texto plano

En snarves.com.ar encontré como guardar los marcadores (favoritos o bookmarks) de Firefox a un archivo de texto plano y desde la terminal. El tutorial sigue vigente, el lo hizo en un Firefox 3 y yo en un Firefox 20.0 sin que se me presentaran problemas.

Para pedir ayuda para sqlite3; dentro de su shell escribimos .help. Y salimos de ella con .quit.

Estos fueron los pasos que seguí.

Paso 1.-

Como carecía de sqlite, tuve que instalarlo con:

sudo apt-get install sqlite3

Paso 2.-

Después busque el archivo places.slite con:

find /home/`whoami` -iname "*sqlite*" 2> /dev/null

De esa línea:

find ==> Es el comando que busca ficheros.
/home/`whoami` ==> Es la ruta de nuestro home, y el comando whoami entrecomillado con la backquote hace que se muestre el nombre de nuestro usuario.
-iname ==> Es una opción de find para que no sea sensible a mayúsculas/minúsculas.
"*sqlite*" ==> Con esto le decimos que busque cualquier fichero que tenga sqlite dentro de su nombre
2> ==> Hace redireccionamento de la salida de error patrón. Con ello evitamos que se muestren en pantalla los posibles errores y que solo veamos el resultado de nuestra búsqueda.
/dev/null ==> Realmente este archivo no existe. Cuando guardamos, redirecionamos la salida de error patrón, etc. en esa ruta es como mandar a la nada al archivo, información, etc. Estos se pierden y no ocupan espacio de ningún tipo.

Paso 3.-

Entrar a la shell de sqlite.

sqlite3 /LA_RUTA/places.sqlite

Ej.

sqlite3 /home/travesuras/.mozilla/firefox/chjpt3j6.default/places.sqlite

Sale algo como esto:

SQLite version 3.7.7 2011-06-23 19:49:22
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite>

Paso 4.-

Dentro de la shell de sqlite ejecuten:

Ver las tablas de bases de datos:

sqlite> .tables

Sale algo como:

moz_anno_attributes  moz_favicons         moz_items_annos
moz_annos            moz_historyvisits    moz_keywords
moz_bookmarks        moz_hosts            moz_places
moz_bookmarks_roots  moz_inputhistory

Paso 5.-

Asignar el archivo donde se van a volcar los datos:

sqlite> .output ff3_bookmarks.txt

Paso 6.-

Hacer el volcado de la base de datos.

Con la línea de abajo lo que se hace es consultar la base de datos (SQL), haciendo que nos devuelva la columna url y une las tablas moz_bookmarks y moz_places. El resultado queda guardado en ff3_bookmarks.txt o en cualquier archivo que hayamos indicado en el paso anterior.

sqlite> select url from moz_bookmarks, moz_places where fk=moz_places.id ;

Paso 7.-

Salir de la shell de sqlite:

sqlite> .quit

Notas:

Pedir ayuda para sqlite:

sqlite> .help

Si están como yo y no saben donde quedo el archivo ff3_bookmarks.txt hagan:

find / -iname "*ff3_bookmarks.txt*" 2> /dev/null

En la página snarves.com.ar advierten de algunos problemas que se pueden presentar y dan la solución:

Caso 1.- Sqlite. Error: Database is locked

Es cuando esta en uso el archivo (lockeado) por Firefox. La solución es cerrar Firefox y volver a intentarlo.

Caso 2.- Unable to open database "Ruta_del_places.sqlite": file is encrypted or is not a database

La versión de sqlite que usamos es distinta a la que genero el archivo .sqlite. Se soluciona usando el comando sqlite3.

 

 

 

http://snarvaez.com.ar/libertad/index.php/2008/05/26/obtener_bookmarks_firefox3_linea_comandos/
http://kb.mozillazine.org/Places.sqlite

 

 

 

Firefox.- Asignar un comportamiento a la tecla retroceso

Customizando el valor de browser.backspace_action se puede hacer que la tecla [Backspace] tenga diferentes acciones en Firefox.

Si cambiamos el valor de browser.backspace_action en about:config podemos hacer que con [Backspace] no haga nada (valor 2), nos lleve hacia atrás en el historial (valor 0) o nos desplace hacia abajo de la página (valor 1).

El inconveniente de dejar un valor 0 es que si estas llenando un formulario, escribiendo una carta, etc., y el campo de texto sale de foco es muy probable que pierdas lo escrito. Por otro lado simplifica este atajos de teclado y se tienen más alternativas para el mismo fin.

Paso a paso

Paso 1.-

Abrir el Firefox y en la barra de direcciones escribir:

about:config

Dar enter y en el mensaje de advertencia aceptar ser cuidadoso.

Paso 2.-

Buscar:

browser.backspace_action

Paso 3.-

Le asignamos un valor:

0 ==> Cada vez que apretemos la tecla [Backspace] (retroceso) nos regresa a la página que visitamos antes; es equivalente a [Alt]+[Flecha izquierda]. El comportamiento de la tecla [Retroceso] cuando se esta en un campo de texto es normal, pero hay que tener cuidado de no perder el foco o nos arriesgamos a perder todo lo escrito.

En mi caso utilizo [Shift]+[Backspace] me lleva hacia adelante en el historial, es como si hiciera [Alt]+[Flecha derecha].

1 ==> Hace que la página vaya hacia abajo, es equivalente a la [Barra espaciadora]

Cuando hago [Shift]+[Retroceso] la página sube. Es equivalente [Shift]+[Barra espaciadora].

2 ==> No hace nada. La tecla [Retroceso] funciona como tal, dejando de tener cualquier otra acción asociada.

 

 

 

http://kb.mozillazine.org/Browser.backspace_action
http://onsoftware.softonic.com/11-tweaks-firefox-about-config

 

 

 

Firefox.- Hacer que pregunte antes de cerrar cuando hacemos Ctrl-Q

Muchas veces me pasa cuando uso Firefox que utilizo el atajo Ctrl+Q por error, el resultado es que me cierra el navegador con todas las pestañas que tenga abiertas sin confirmar. Cambiando en about:config el valor de browser.showQuitWarning a true (verdadero), se activa la confirmación siempre y cuando tengamos dos o más pestañas/ventanas abiertas. Desde ese momento cada vez que hagamos Ctrl+Q aparece una ventana preguntando si queremos guardar las pestañas abiertas para la próxima sesión (Save and quit), cancelar la acción (Cancel), o bien cerrar sin guardar (Quit).

Este método para que pregunte antes de cerrar con el atajo Ctrl+Q funciona siempre y cuando no tengamos activado en Edit ==> Preferences ==> General ==> When Firefox starts: Show my windows and tabs from last time; con cualquiera de las otras dos opciones pregunta antes de salir.

Paso a paso

Paso 1

Abrir about:config en el Firefox. Escribimos en la barra de direcciones:

about:config

Y damos enter. Si aparece la advertencia presionamos el botón donde prometemos tener cuidado.

Paso 2

Ya dentro de about:config escribimos en la barra de Search: (Buscar):

browser.showQuitWarning

Paso 3

Cambiamos el valor de browser.showQuitWarning a true (verdadero) con doble click o bien con el menú contextual.

Paso 4

Asegurarnos que este cambio funcione seleccionando:

Edit ==> Preferences ==> General ==> When Firefox starts: ==> Seleccionamos cualquiera de estas dos: Show a blank page o Show my home page

Porque si dejamos Show my windows and tabs from last time el cambio a verdadero en browser.showQuitWarning no tiene efecto.

Nota: Por defecto el valor de browser.warnOnQuit es true (verdadero) si lo cambiamos a false (falso) cierra el navegador sin preguntar, independientemente de como tengamos configurado browser.showQuitWarning.

Visto en perceptus.ca en el comentario de Mike Van Pelt. El detalle del paso 4 el soporte de Mozilla.

 

 

 

Comando.- wc

Comando.- wc

 

El comando wc sirve para hacer un conteo de bytes, caracteres, lineas y palabras de un archivo(s). Y si se pide información de varios archivos da además un total de los parámetros.

 

Ayuda

wc --help
man wc

 

Sintaxis

Use: wc [OPCIÓN(ES)]… [ARCHIVO(S)]…
o: wc [OPCIÓN(ES)]… --files0-from=F

 

Opciones:

-c, --bytes Imprime la cantidad de bytes.

-m, --chars Imprime la cantidad de caracteres.

-l, --lines Imprime la cantidad de lineas.

--files0-from=F read input from the files specified by NUL-terminated names in file F; If F is - then read names from standard input.

-L, --max-line-length Imprime la longitud de la linea más larga.

-w, --words Imprime el número de palabras.

--help Muestra esta ayuda y sale.

--version Muestra la información de la versión y sale.

 

Caso 1:

Contar lineas, palabras y caracteres escritos dentro de la terminal.

wc

Escribimos cualquier cosa, damos enter para que se vea bonito el resultado y salimos con las teclas Ctrl+D. Si hacemos esto y metemos el texto: "Este es un texto de muestra." sin las comillas, nos devuelve: 1       6      29. Indicándonos que es una linea, con seis palabras y 29 caracteres.

 

Caso 2:

El comando wc en su más siempre expresión muestra el número de lineas, palabras y caracteres

wc archivo
wc archivo1 archivo2 archivoetc

 

Caso 3:

Para pedirle al comando wc que tome en cuenta todos los archivos del directorio actual se teclea:

wc . *

El punto le indica a wc que trabaje sobre el directorio actual y el asterisco (*) que tome en cuenta todo lo que se encuentre dentro de esa path.

Si quisiera que fueran nada más un tipo de archivo pongo: *.EXTENSIÓN:

wc . *.jpg
wc . *.pdf
wc . *.gif
etc.

 

Caso 4:

Mostrar el tamaño de uno o varios archivos en bytes

wc -c archivo
wc -c archivo1 archivo2 archivoetc
wc --bytes archivo
wc --bytes archivo1 archivo2 archivoetc

Ejemplos:

wc -c /etc/passwd
wc --bytes /etc/passwd /etc/hosts

 

Caso 5:

Mostrar la cantidad de caracteres en uno o varios archivos.

wc -m archivo
wc -m archivo1 archivo2 archivoetc
wc --chars archivo
wc --chars archivo1 archivo2 archivoetc

Ejemplos:

wc --chars /etc/hosts
wc -m /etc/passwd /etc/hosts

 

Caso 6:

Nos dice cuantas lineas tiene un archivo(s)

wc -l archivo
wc -l archivo1 archivo2 archivoetc
wc --lines archivo
wc --lines archivo1 archivo2 archivoetc

Ejemplos:

wc -l /etc/passwd
wc --lines /etc/passwd /etc/hosts

 

Caso 7:

Muestra cual es la línea más larga de un archivo(s)

wc -L archivo
wc -L archivo1 archivo2 archivoetc
wc --max-line-length archivo
wc --max-line-length archivo1 archivo2 archivoetc

Ejemplos:

wc --max-line-length /etc/hosts
wc -L /etc/hosts /etc/passwd /etc/hostname

 

Caso 8:

Mostrar la cantidad de palabras en un archivo.

wc -w archivo
wc -w archivo1 archivo2 archivoetc
wc --words archivo
wc --words archivo1 archivo2 archivoetc

 

Caso 9:

Saber el cantidad de palabras y la linea más larga.

wc -wL archivo

Ejemplos:

wc -wL /etc/hosts
wc -wL /etc/hosts /etc/passwd /etc/hostname

 

Caso 10:

Se puede usar en combinación con otros comandos para contar el número de resultados. En este caso nos dice el número de archivos que hay en un directorio:

ls | wc -l

El número de pdf en un directorio:

ls *.pdf | wc -l

 

Caso 11:

Ver el tamaño de algún tipo de archivo dentro de una carpeta en bytes.

wc -c *.jpg
wc -c *.pdf
wc -c *.gif
etc.

 

Caso 12:

Podemos guardar la información arrojada usando > y >>.

Con esta se borra la anterior si existiera y deja la nueva:

wc -lw archivo > estadisticasdelarchivo

Con esta se van agregando los nuevos datos al final del archivo:

wc -lw archivo >> estadisticasdelarchivo

Ejemplos:

wc -wL /etc/hosts > estadisticasdelarchivo
wc -wL /etc/hosts /etc/passwd /etc/hostname >> estadisticasdelarchivo

 

 

 

http://www.linfo.org/wc.html

 

 

 

Cambiar el nombre del equipo en Linux

Cambiar el nombre del equipo en Linux

Cambiar el nombre del equipo en Linux es tan sencillo como sustituir el nombre antiguo por el nuevo en los archivos /etc/hostname y /etc/hosts y reiniciar. Por seguridad se recomienda respaldar los archivos antes de hacer cualquier cambio.

 

Paso a paso

Paso 1

Abrimos una terminal del root:

sudo su

Nota: Si no queremos abrir una terminal del root, a cada linea de comandos agregamos al principio la palabra sudo.

Paso 2

Respaldamos los archivos originales.

cp /etc/hostname /etc/hostname.bak

cp /etc/hosts /etc/hosts.bak

Así siempre podremos regresar al archivo original en caso de error con unas simples lineas de comando.

Paso 3

Abrimos con algún editor de texto simple el archivo /etc/hostname dentro de la terminal del root.

nano /etc/hostname

Paso 4

Sustituimos el nombre antiguo del equipo por el nuevo y guardamos.

Paso 5

Abrimos el archivo /etc/hosts, también dentro de una terminal de root con un editor de textos sencillo.

nano /etc/hosts

Paso 6

Sustituimos el nombre antiguo del equipo por el nuevo y guardamos.

Paso 7

Al reiniciar la computadora tiene el nombre nuevo.

 

 

 

https://santib90.wordpress.com/2007/04/10/cambiar-el-nombre-del-equipo-en-ubuntu/