viernes, 17 de agosto de 2012

Retardo en el login

Una rápida:

Un tweet de Mark Russinovich:

Great use of Process Monitor boot logging to solve a slow boot problem: http://t.co/JgiSj8aw -- Mark Russinovich (@markrussinovich)

Una mas de Sysinternals: localizar qué software retrasa el arranque del sistema más de 2 minutos con “process monitor“.

jueves, 16 de agosto de 2012

Vulnerabilidad con .htaccess

Lo se. Esto se publicó recientemente. Pero bueno. Tenerlo por aquí escrito no vendría nada mal (así, si en algún momento tengo que consultarlo, lo busco aquí, ¿no?).

He podido ver desde un tweet

BlackHat 2012: nueva vulnerabilidad en .htaccess: Como ya comentamos, algunos integrantes del equipo de Laborato... http://t.co/HruAtlr1 -- hackplayers (@hackplayers)

una publicación por parte de ESET.

Esto es lo que he podido entender (por favor, si no es correcto en términos generales, que alguien me lo diga!!):

Para evitar que se pueda acceder a una carpeta, se utiliza un fichero .htaccess con el siguiente contenido:

require valid-user

También indica que si utilizando PHP éste no conoce el método, lo tomará como si se hubiese enviado utilizando el method GET de tal forma que no habrá request y, por lo tanto, no se producirá la autenticación. 

Al final, aunque no se pueda "entrar" directamente en la carpeta, se podrán descargar los archivos que ésta contiene. 

¿Cómo protegerse? Recomiendan dos formas:

  1. Impedir la utilización de métodos poco conocidos o no utilizados. Un ejemplo (que ellos mismos ponen, y que yo reproduzco):

    Order Allow,Deny
    Deny from all
  2. Mirar si la variable  $PHP_AUTH_USER tiene los datos esperados.
  3. Cuando $_SERVER["REQUEST_METHOD"] no contenga GET o POST.
Para hacer el PoC, ya hay una herramienta, HTExploit, que permite automatizar el proceso. Evidentemente, sólo se deberá utilizar en aquellos sitios donde tengamos permiso. Pase lo que pase tras su utilización, el usuario es el responsable de las consecuencias que de ello se produzcan.

viernes, 10 de agosto de 2012

Nevando en Youtube

Uno rápido. 

Hoy, visitando una vídeo en uno de los sitios más famosos de vídeos, se ha producido un error y, me he llevado una sorpresa. ¡Había nieve en Youtube! ¿Que no os lo creéis? Mirad, mirad...

Nevando en Youtube

Sí. Eso es. Ahora, cuando se produce un error al ver un vídeo, "nieva" en Youtube. ¿Qué os parece? Si. Es una pequeña chorrada, pero, cuanto menos, curiosa. ¿Verdad?

lunes, 6 de agosto de 2012

Desbloqueando el usuario bloqueado

Vamos a ponernos en situación.

Queremos acceder a un sistema Windows con el login de Novell.


01 - Login al directorio Novell desde Windows. Img original

Así, intentamos introducir nuestra contraseña y no nos deja. Nos aseguramos que la hemos puesto bien... Y tampoco. Total, usuario bloqueado. Y te das cuenta de que, por una extraña razón, no estaban entrando bien los caracteres. Aún así, consigues que salgan bien, pero, tu cuenta está bloqueada. Y tienes que poner una incidencia para que te la desbloqueen. Pero, se te ocurre una forma. Coges, y seleccionas que te permita loguearte en local:

02 - Login en local - Img original

Y... oh!! Sopresa!!! ¡He entrado!! Curioso. ¿verdad? Pero, aún hay más. Ahora, quiero ver si puedo entrar en el árbol del directorio. 

03 - Solicitar login al directorio con el login en local (workstation) - Img original

Tras lo cual, aparecía una vez más la imagen 01. Y... ¡oh, sopresa! Nos permite entrar:

04 - Acceso concedido y acciones posteriores al login en ejecución. Img original,

¿A que es curioso que se desbloquee solito el usuario del árbol de dominio cuando te logueas en local? No se. Me ha llamado mucho la atención. Además, hay que tener en cuenta que no tenemos la consola en las sticky keys activiada. Claro, hay que tener en cuenta que ése usuario tiene que estar en el sistema local. En ese caso, si no bloqueas el de la workstation, entrarás sin problemas. Pero, una vez dentro, no debería dejar entrar en el árbol. 

¿Se os ocurre la razón por la que estoy pueda suceder? ¿Se os ocurre otra forma de "reactivar" el usuario sin tener que llamar al CAU?

jueves, 19 de julio de 2012

1, 2 ,3... 4, 5, 6

"123456" sigue siendo una de las contraseñas más utilizadas http://t.co/owytIHJu -- Andréz LAMOUROUX (@DarkOperator)

Hoy podemos hablar de este tweet. 1, 2, 3... Responda otra vez ¿Cómo es posible que lo usuarios estén usando estas contraseñas? Y no, no me refiero a que ellos decidan utilizarlas. La pregunta, realmente, es: ¿Por qué estos servicios permiten que se utilicen?

Cuando nos damos de alta en un servicio de estos, suelen tener una barra de colores que va indicando la fortaleza de la contraseña. Si saben que es débil: ¿No deberían de impedir guardarla? Vale. Ahí estaríamos pasando la responsabilidad de las contraseñas al usuario. Algo en lo que no están a favor el equipo que desarrolló "la Sibila" (NoConName 2011). Pero menos da una piedra. Así, luego putada lo que pasa. Con un diccionario y sus variantes sacas unos cuantos millones de contraseñas hasheadas (por ejemplo, sin saltear).

¿Alguna solución más para evitar esto? Y la formación de un usuario s torna complicada. Yo no la contaría como "solución".

lunes, 16 de julio de 2012

Julio, otro mes pasado por agua

Parece mentira que vuelva de Francia y me encontré Gong que se han filtrado contraseñas de Yahoo, NVidia y algún quite otro sitio más y, ahora que estoy esperanzo el tren para volver a casa a comer, me encuentro con este tweet:

Billabing ha sido hackeado y 20.000 contraseñas en texto sin cifrar han sido filtradas en línea http://t.co/2NJM07ta -- Oesia Seguridad (@oesia_seg)

Parece que tenemos otro mes "pasado por agua" con tanta filtración. Vale que hay meses que han sido peores, cono el pasado junio. Pero es otro más. Y otra excusa para tener algo que contar.

miércoles, 4 de julio de 2012

Algoritmos culinarios y telefónicos

Para cuando leáis esto, yo estaré a unos cuantos miles de kilómetros de mi casa. Me voy de vacaciones dos semanas. Estaré en en lugar del desembarco más famoso de la historia (de la segunda guerra mundial): en Normandia.

Por lo tanto, aquí os dejo un post que escribí en el transporte público de camino al trabajo (¿o era de vuelta a casa?). Lo mismo da. Está escrito en junio. Como lo hice desde el móvil, y lo estoy editando desde el ordenador, puede que se me haya escapado alguna cosa. Aún así, aquí os lo dejo.

Por cierto, algún día os daré la explicación de este post.

#####

Acabo de pensar que esto debería de ir en la sección de diccionarios. Pero, lo voy a describir aquí. Algún día lo entenderéis.
Un algoritmo ser puede definir como el conjunto de pasos necesarios para llevar a cabo una acción. Y, aunque parezca mentira, los llevamos a cabo en nuestra vida diaria incluso sin darnos cuenta.
Un ejemplo. Hacer una tortilla francesa. Un posible algoritmo de varios podría ser:
- Coger una sartén.
- Ponerle un poco de aceite.
- Encender el fuego a media temperatura.
- Cascar dos huevos en un planto hondo.
- Batir los huevos.
- Ponerles un poco de sal. También ser les puede poner queso rayado.
- Volver a remover si hacer falta.
- Cuando hayamos terminado el aceite estará caliente y podremos verter el contenido del plato en la sartén.
- Veremos que se está cuajando (di el aceite está lo suficientemente caliente). Habrá que ir doblando la tortilla sobre sí misma con una espátula o espumadera.
- Una vez hecha al gusto del consumidor, se pasa el resultado final a un plato. Acordarse de apagar el fuego.
- Ya nos la podemos zampar. Tarde o temprano tocará fregar todos los bártulos.
Vale. Lo sé. He cogido un ejemplo muy complicado para explicar qué es un algoritmo.

Un ejemplo más sencillo: llamadas de teléfono desde unas línea fija.

- Descolgar el teléfono.
- Mirar si hay tono:
- - No hay tono:
- - - Colgamos.
- - - Esperar unos minutos.
- - - Volver a intentarlo.
- - Hay tono:
- - - Marcar número de teléfono
- - - Esperar respuesta:
- - - - No hay respuesta:
- - - - - Colgar. Esperar un tiempo y volver a intentarlo
- - - - Hay respuesta:
- - - - - Hablar largo y tendido (o no).
- - - - - Colgar.

Vale. Este es más sencillo, ¿Verdad? Este ejemplo del teléfono es uno de los primeros que hice años ha cuando empecé con esto de la programación. Es un ejemplo sencillo de entender para, prácticamente, todo el mundo.

Bueno. Estos ejemplos, aunque no tienen mucho que ver con el tema del que trata este blog, cada uno de los pasos y condiciones se podrían extrapolar a los procesos necesarios para hacer un programa. Soy consciente de que hay muchas más formas de hacerlos, pero esta es la que se me ha ocurrido en estos instantes. Es posible que en otras circunstancias los hubiese expresado de otra forma.

¿Se os ocurren otros ejemplos que se puedan explicar de una forma sencilla con condicionales, bucles y demás?