Parchear bash en Mac OS #ShellShock

David Galisteo Cantero

Una vez que hemos comprobado si somos vulnerables a #ShellShock, vamos a ver cómo podemos parchear bash en Mac OS.

Para Mac aún no hay una actualización ‘oficial’ por parte de Apple, así que vamos a parchear nosotros mismos.

Pasos previos

Para llevar a cabo el proceso, se necesita tener instalado XCode y aceptar la licencia del producto, para descargarlo, simplemente vamos al AppStore y lo buscamos.

Haciendo backup de nuestra actual bash

Vamos a copiar nuestra bash actual por si se produce algún error en la instalación.

sudo cp /bin/bash /bin/bash.old
sudo cp /bin/sh /bin/sh.old

Parcheando

En realidad, no hay un parche, si no dos, vamos a ver cómo descargarlos e instalarlos, solo tienes que seguir la secuencia de instrucciones expuesta a continuación:

- mkdir bash-fix
- cd bash-fix
- curl https://opensource.apple.com/tarballs/bash/bash-92.tar.gz | tar zxf -
- cd bash-92/bash-3.2
- curl https://ftp.gnu.org/pub/gnu/bash/bash-3.2-patches/bash32-052 | patch -p0
- cd ..
- xcodebuild
- mv build/bash.build/Release/bash.build/DerivedSources/y.tab.* bash-3.2/
- cd bash-3.2
- curl https://ftp.gnu.org/pub/gnu/bash/bash-3.2-patches/bash32-053 | patch -p0
- cd ..
- xcodebuild

Si la respuesta es “BUILD SUCCEEDED” en ambos casos, todo ha ido bien, en el caso de que se produzca un error, podemos volver a la versión anterior, simplemente realizando el paso inverso al realizado en el backup.

Para comprobar que todo ha ido bien, tecleamos la siguiente instrucción:

build/Release/bash --version

Que nos debería devolver la versión 3.2.53(1)-release.

Sustituyendo nuestra antigua bash

El último paso es sustituir nuestra bash por la nueva:

sudo cp build/Release/bash /bin
sudo cp build/Release/sh /bin

Ahora, si volvemos a ejecutar la prueba de concepto, veremos como no aparece la palabra «VULNERABLE» en nuestra consola 😉

Espero que os haya sido útil.

HackSaludos!

Publicado el 27-09-2014

Donar

Si te ha sido de ayuda y quieres hacer una donación te lo agradeceremos :)

Compartelo!


Deja un comentario

Comentanos

*

Ir arriba de la pagina