Compilado de enlaces

¡Hola a todos!

Este post es mas que nada para desearles a todos una muy feliz navidad, espero que lo estén pasando genial con su familia, solos o con quien sea :) Por mi parte todo bien, acá ando todavía.

  • Jugando con Virtualhosts: The harvester Este programa nos serviría en la hipotética situación en la que no pudiesemos hackear un sitio web a pesar de haberlo intentado en diversas ocasiones, o quizás para tener un área de ataque mas grande. No lo probé, no por falta de oportunidad, pero la idea es interesante: encontrar otros vectores de entrada para encontrar un usuario vulnerable, escalar privilegios y luego llegar al lugar al que queremos llegar, o encontrar una vulnerabilidad de path disclosure que adaptándola nos pueda permitir conseguir un path disclosure para el sitio al que apuntamos.
  • La guía definitiva para la autenticación a través de formularios en una página web Interesantísimo, recomiendo una lectura.
  • The mole, una herramienta para explotar SQL injections Esta herramienta está interesante, es muy sencilla y funciona muy bien. Incluyo un link a el tutorial oficial, muy sencillo y efectivo también.
  • Exploiting cisco routers Good read! para cuando estamos en redes no muy permisivas, quizás. No se me ocurren muchos usos prácticos, pero si está interesante de leer.

¡Eso nomás!

Un abrazo,
Pedro

Como usar south

¡Hola a todos!

Escribo este post para la empresa en la que ahora trabajo ( Brandigital ), como para documentar un poco el proceso que implica poner nuestra base de datos bajo control de versiones usando mercurial y #django-south. El proceso es relativamente sencillo. Este tutorial supone que tenemos una base de datos ya creada, y que ya leimos el manual de south respecto a la instalación, su uso y como convertir una aplicación ya creada a south.

Comprendiendo lo básico

South tiene 2 comandos que debemos saber: schemamigration y migrate. Sus usos mas comunes son los siguientes:

# identificar todos los cambios hechos en los modelos y escribirlos al disco duro.

root@alice# python manage.py schemamigration app_name --auto
 - Deleted field nombreTrue on web.CategoriaWidget
Created 0005_auto__del_field_categoriawidget_nombreTrue.py. You can now apply this migration with: ./manage.py migrate web

# aplicar los cambios

root@alice# python manage.py migrate app_name
Running migrations for web:
 - Migrating forwards to 0005_auto__del_field_categoriawidget_nombreTrue.
 > web:0005_auto__del_field_categoriawidget_nombreTrue
 - Loading initial data for web.

Aplicando cambios en los modelos en una versión y reflejándolos en el resto

Como primer paso tenemos que hacer un cambio en los modelos en este caso, quité un field llamado nombreTrue del modelo CategoriaWidget. Una vez hecho esto, debemos decirle a south que por favor nos reconozca los cambios

root@alice# python manage.py schemamigration web --auto
 - Deleted field nombreTrue on web.CategoriaWidget
Created 0005_auto__del_field_categoriawidget_nombreTrue.py. You can now apply this migration with: ./manage.py migrate web

Esto hace que los cambios se apliquen en el disco duro y sean vistos por nuestro sistema de control de versiones. Una vez hecho esto, tenemos que envíar nuestros cambios al repositorio. Nosotros usamos mercurial.

root@alice# hg add 
root@alice# hg commit -m 'testeando south'
root@alice# hg push

Una vez hecho esto, nos conectamos por ssh a la pc bob, y obtenemos la información desde el repositorio.

root@bob# hg pull 
root@bob# hg update 

Los cambios que tendrían que hacerse en la PC de Alice son los mismo que en la de bob, por lo que solo tenemos que aplicar los cambios que ha calculado el schemamigrate de Alice.

root@alice# python manage.py migrate web
Running migrations for web:
 - Migrating forwards to 0005_auto__del_field_categoriawidget_nombreTrue.
 > web:0005_auto__del_field_categoriawidget_nombreTrue
 - Loading initial data for web.

De esta misma manera podemos llevar los cambios a staging / producción.

¡Espero que les sirva! En realidad es bastante sencillo, y me parece que nos puede llegar a servir bastante.

Un abrazo,
Pedro

Compilado de enlaces

¡Hola gente!

Escribo para agregar un compilado de enlaces. Estan muy buenos.

¡Espero que guste!
Un abrazo,
Pedro

Compilado de enlaces

¡Hola gente!

Vengo a compartir con ustedes unos muy buenos enlaces, que espero que disfruten.

Un saludo,
Pedro

Enlaces recomendados programación

¡Hola Gente!

A continuación un listado de artículos sobre programación  que están interesantes:

  • Mongly – Un tutorial que nos enseña lo mas básico de mongoDB de manera rápida y fácil.
  • Como desarrollar para android – Un tutorial paso a paso sobre como desarrollar aplicaciones para android
  • ¿Cuando tráfico puede soportar tu sitio web? – Una guía que nos muestra cuanto tráfico debería poder llegar a soportar nuestra web, dependiendo del tipo de tráfico que tiene.
  • Fallback en mysql – una solución que utiliza exclusivamente mysql para evitar el clásico if(id_exists), update } else {  insert.

¡Espero que les sea de utilidad! Son todos muy interesantes. Recomiendo sobre todo el primero, el tercero y el último.

Un abrazo,
Pedro

Excelentes enlaces programación

¡Hola gente!

Tengo nuevamente un compilado de enlaces. ( creo que es el número 14 :P ) Espero que les sea de utilidad, la verdad es que me estoy encontrando con cosas muy interesantes por ahi.

¡Espero que les sea de utilidad!

Un abrazo grande,
Pedro

Compilado de enlaces

¡Hola gente!

Espero que estén teniendo muy buena semana, y que hayan arrancando con fuerza el año. Vengo a ustedes con un compilado de enlaces nuevamente.

Sin mas, ahi va:

¡Espero que les sea de utilidad!

Un saludo,
Pedro