IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII o 16. EL BUG DEL MES o IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII Este apartado casi se nos olvida este numero, y es que como nadie manda material para este apartado, pues siempre tenemos que hacerlo a ultima hora y con prisas. Bueno, pues por falta de tiempo en este bug del mes nos vamos a tener que limitar a describir el bug, y poco mas. A si que a los que esperaban un jugoso exploit todo bien explicadito, me parece que se van a desilusionar, y esperar hasta el proximo numero. Y si la proxima vez quereis algo mas jugoso, pues moved el culo y mandarnos vuestros exploits. Pero eso si, hemos echo caso a la gente que nos pedia bugs recientes y os hemos traido uno de hace pocos meses. (Gracias a Eljaker y a Valfadir por mandarnos informacion sobre el) Sistemas: IRIX Versiones: 5.2 - 6.3 Descripcion: Bug del sistema de logs Los IRIX tiene un avanzado sistema de logs y de seguridad en los logins, uno de estos servicios de seguridad viene representado por la variable LOCKOUT que hace que una cuenta con un numero determinado de intentos de acceso incorrectos se bloquee. Este sistema no es nada nuevo y es un sistema bastante efectivo. Pero en el caso de los IRIX los desarrolladores han metido la gamba hasta el fondo :-) Los datos relacionados con la variable LOCKOUT se almacenan en el directorio /var/adm/badlogin, a cada cuenta con intentos fallidos le corresponde un fichero de 1 byte que es el numero de intentos fallidos. (por ejemplo si la cuenta es 'guest' pues apareceria un fichero llamado guest de un byte de longitud) Pero el problema esta ahi, porque el sistema crea un fichero con el nombre de la cuenta a la que se ha intentado acceder, o sea lo que se ha tecleado en el prompt 'login:' šEntonces si tecleamos el nombre de una ruta, que pasara? Pues efectivemnete ahi esta el agujerazo, si tecleamos algo como esto: login: ../../../etc/estamos_dentro Password: UX:login: ERROR: Login incorrect Habras creado un fichero de un byte llamado /etc/estamos_dentro (Y cada vez que intentemos este mismo 'login:' el primer byte del archivo especificado se incremetara en 1) Ademas de pegarle un susto de muerte al administrador creando ficheros por todos sus directorios con nombres raros, este bug tiene multiples utilidades. Con el truco NO se pueden sobreescribir ficheros (cagen) pero si que podemos incrementar el primer byte. Esto puede tener multiples utilidades y puede ser usado para crear varios exploits, a mi se me han ocurrido un par de usos, pero ninguno suficientemente bueno. Si a alguien se le ocurre algun sistema de explotar este defecto, que nos lo diga. El Duke de Sicilia