Aprendiendo Python para Hacking

3 comments
Antes de lanzar algun comentarios les pido que lean la entrada, cada parrafo de ella porfavor ;)


La entrada de hoy esta orientada a dar un indició y  brindar un camino en base a mi experiencia, para aprender Python y luego crear herramientas de seguridad o scripts que automatizen algunas tareas en el proceso de Pentesting (Hacking), siempre aclarando que existen otros caminos para hacer realidad las metas, que uno desea ademas de todo estos puntos relacionados a Python llegan a estar del mismo modo orientados a cualquier otro lenguaje de Programación sea Perl, Ruby, C, C#, PHP la limitación esta en la imaginación y las ganas de crear algo.

¿Porque Python y no otro lenguaje de Scripting?

Por mi experiencia en desarrollo, ademas que es uno de los lenguajes que me siento mas cómodo, cabe resaltar que para algunos quizas sea lo mejor Perl que por cierto he visto muy buenas herramientas de la mano de @TheXC3LL pueden ver sus entradas en 0verl0ad.com que anda con cada herramienta en Perl, como digo en las entradas en casi todas que doy a conocer Python como un buen lenguaje "Panadero alaba su propio pan".


Es fácil el aprendizaje de Python, si lo es pero también es complicado U_U la identación el peor enemigo.

Hacking con Python en lo sencillo

Como el nombre lo dice intenta elaborar script simples y cortos que te automatizen la vida, por ejemplo juega con Twitter, Linkedin, Facebook, armando quizas un bot que postee todos los días a las 12:00 Saliendo del trabajo!! antes de todo ello piensa un poco en la solución al problema que necesitas un micro ejemplo de ello. 

- Limitar mi tiempo para elaborar el proyecto
- Librerías o API que me permite interactuar con FB, TW, Link. 
- Seleccionar solo una red Social para hacerlo como PoC. 
- Comenzar a desarrollar como loco.
- Buscar fuentes de información, (Libros, Documentación ....)
- Satisfacción de lograr el objetivo.

Quieres mas ideas usa las siguientes:

   -  Generador de contraseñas seguras
   -  Medidor de Contraseñas.
   -  Generador de Diccionarios en base a una palabra. 
   -  Generador de Spam en Twitter.
   -  Bot para Twitter o Facebook

Comienza con cosas pequeñas, y veras que tan bien se siente ir jugando con Python, aun mas el hecho que crees tus propios bichitos que luego pueden ser monstruos. 

Ademas de ello comienza a interesarte en lo que hacen las herramientas, por ejemplo la FOCA, TheHarvester,  NMAP. Aquí habrá mas de uno que diga pero para que sería reinventar la rueda pero desde mi punto de vista todo esto sirve para iniciar y aprender.

Metadatos.
Obtención de DNS.
Reverse DNS
Whois.

Encuentra los libros adecuados. 

http://inventwithpython.com/images/cover_hackingciphers_thumb.png

Un punto importante es que encuentres los libros adecuados para aprender primero el lenguaje de programación, en una entrada anterior trate del tema Aprende Python con el materia adecuado, pero si ya sabes Python puedes comenzar a leer material mas a fondo es decir, libros que se encuentren relacionados al tema puedes tomar en cuenta los siguientes libros.

Ninja Python with Hackers (Recopilación de Libros)


Internet es tu mejor profesor

Busca listas de distribución donde puedas aprender a diario, en este punto podría darles algunas listas pero, lo mejor es que aquí ustedes aprendan a buscar y seleccionar el material adecuado de que existen hay! no vengan que no, la razón de usar una Lista de Distribución (ya sea en Español o Ingles) permite conocer a otras personas que les gusta desarrollar en el mismo lenguaje que tu, aprendes a conocer otros puntos de vista a tus problemas dando con soluciones que quizás no pensaste, colaboras y aprendes con cada hilo nuevo que se habrá aun estando solo como espectador sin intercambiar nada.



Vuelve a StackOverflow  en tu universidad, en el buen sentido claro está muy aparte de lo conocida que es, el portal te permite atender tus dudas y recomendarte nuevos rumbos aclarando que debes de tomar en cuenta, es que antes de preguntar revisa, revisa y revisa en el sitio, solo cuando sea tu ultima opción pregunta en la sección dedicada a Python.

GitHub es una biblioteca gratuita de código, debido a la popularidad que tiene GITHUB todos o gran parte de los desarrolladores suben sus scripts para compartir con la comunidad en los cuales puedes analizar y aprender con los mismo entendiendo el funcionamiento de cada una de ellas, aun mas teniendo en cuenta que lo que quieres hacer alguien ya lo hizo, por lo tanto crea tu cuenta y sumérgete a la biblioteca.

Si no cnoces Github te invito a que leas las entradas en el blog GIT I, GIT II, y GIT III, el resto de las entradas referentes a GIT tienen su plus extra revisenlas y se llevaran buenas o malas expectativas de lo que arme.

Usa y aprende por medio de la Metodología OMSTD Open Methodology for Security Tool Developers, es necesario que sigas y aprendas de los mejores y que mas de una metodología totalmente abierta, que por cierto debo el post respectivo :P, ademas de comenzar a colaborar con el framework estos días estuve viendo algunos issues que pueden ser tratados por mi persona espero sean aceptado una vez desarrollados.


doc/images/logo_200x200.png

Dejo con lo que es la Metologia del sitio del autor que es @ggdaniel un gigante que comparte sus conocimientos.

Qué es OMSTD

OMSTD (O pen M ethodology for S ecurity T ool D evelopers) es una propuesta que intenta ser una guía de buenas prácticas fácil, intuitiva y práctica, para el desarrollo de aplicaciones de hacking.
Hacer herramientas de hacking no tiene porque ser tan complicado como puede parecer a priori, tan solo hay que seguir una serie de pautas de forma correcta.

Esta guía surge a partir de mi charla “El Poder de los reptiles: Cómo hacer herramientas de seguridad en Python” en IV Navaja Negra Conference.

El objetivo de este proyecto es crear una metodología abierta y colaborativa con la que poder servir de apoyo al desarrollo de nuevas herramientas.

Sigue la metodología en el siguiente enlace https://github.com/cr0hn/OMSTD ademas de ello la documentación http://omstd.readthedocs.org

Y para terminar,  no pongas escusas en el aprendizaje sea un lenguaje de Programación, tecnicas de seguridad informática, configuración de algun aplicativo, siempre leo que el tiempo no alcanza o no se tiene los recursos, lo que recomiendo es dejar de andar chillando o comenzar con el pie izquierdo el aprendizaje.

Regards,
Snifer

3 comentarios

  1. Obviamente, compartido en mi blog ! Después pasate que va con dedicatoria amigo ! Un abrazo enorme. Gran post.

    ResponderEliminar
  2. Saludos, tienes un nuevo seguidor en tu blog !

    ResponderEliminar
    Respuestas
    1. Saludos Jhoon,

      Muchas gracias por unirte,

      Regards,
      Snifer

      Eliminar