viernes, 26 de septiembre de 2014

Juankeando con la Pitón - Parte 1

Típica imagen de Python que aparece en todos los blogs/webs habidos y por haber que no aporta nada pero queda bien.


Ahora estoy trasteando con python a fin de aprender más sobre el lenguaje y leyendo el genial libro Violent Python con lo que dedicaré algunas entradas a scripts y demás hechos con este lenguaje. Principalmente algunos son ideas tomadas del libro y ampliadas para que hagan terceras cosas o lo hagan de forma distinta.

En esta primera entrada mostraré un script para realizar ataques de diccionario sobre archivos comprimidos, funcionando tanto sobre archivos rar como zip.

Puesto que la finalidad de la entrada es mas didáctica que práctica por así decirlo, el código usa la librería optparse para gestionar los parámetros de entrada (que yo desconocía). El código en el libro solo permitía realizar ataques sobre archivos zip, para ello usaba ZipFile para comprobar el tipo de archivo e ir probando contraseñas. Yo he añadido la biblioteca RarFile que con las mismas instrucciones que la anterior permite hacer lo propio sobre archivos rar.

El script se llama pyUncompress y lo podéis descargar de aquí. Posteriormente creare una carpeta en el github de 0verl0ad (si el señor @TheXC3LL me deja, pues es python y no se llevan muy bien...) donde aglutinaré toda esta serie de post de Juankeando con la Pitón.

Update => Repositorio en 0verl0ad de pyJuanker.

Fuentes y material interesante:


En fin, nos leemos en breve ;)

5 0verl0ad Labs: Juankeando con la Pitón - Parte 1 Típica imagen de Python que aparece en todos los blogs/webs habidos y por haber que no aporta nada...

4 comentarios:

Andriy dijo...

si no conoces esta pagina recomiendo echarle un ojo

http://pymotw.com/2/contents.html

Rock Neurotiko dijo...

Me alegro de ver Python aqui :)

ViolentPython es un gran libro, se aprende mucho.

Solo una recomendacion del codigo: no uses una palabra reservada como nombre de variable, en este caso, la palabra file es reservada y la estas usando en extractFile como nombre de parametro.

Rodrigo Rega dijo...

Para gestionar los parámetros de entrada yo estoy usando "docopt". Es un nivel más de abstracción que el que ofrece "optparse". Con él solo escribiendo el "--help" automáticamente te gestiona el resto. Para pasar parámetros sencillos es perfecto, pero me estoy encontrando con algunos impedimentos a la hora de trabajar con parámetros dependientes y opcionales.

Aetsu Alpha dijo...

Por partes, Andriy me apunto tu enlace y lo miraré con calma porque tiene mucha información útil.

A Rock Neurotiko lo de file es una cagada colosal y se me paso (de 1º de programación) lo cambiaré cuando pueda porque...

Rodrigo Rega lo de docopt lo probaré en futuros proyectos porque tiene buena pinta.

Gracias a los 3 por contestar ;)

< >