el poder de los reptiles: hacer herramientas de hacking es fácil
TRANSCRIPT
![Page 1: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/1.jpg)
El poder de los reptilesHacer herramientas de hacking es fácil
![Page 2: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/2.jpg)
>>> print(Me) https://twitter.com/ggdaniel http://cr0hn.com/me/
https://github.com/cr0hn/navajanegra
![Page 3: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/3.jpg)
Aviso…
• Las ideas aquí presentadas son fruto de la experiencia e investigación propia.
• Las soluciones presentadas pueden no ser las mejores. Éstas son son solo mis propuestas
![Page 4: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/4.jpg)
¿Por qué?
![Page 5: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/5.jpg)
¿Por qué?
Hackers != desarrolladores
![Page 6: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/6.jpg)
¿Por qué?
Hackers != desarrolladores
![Page 7: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/7.jpg)
¿Por qué?
Hackers != desarrolladores
![Page 8: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/8.jpg)
¿Por qué?
Las herramientas de hacking muy mal diseñadas (en general)
Aplicaciones no re-usables. Buenas prácticas… ¿qué es eso?
Tolerancia a fallos pésima
Obsesión por reinventar la rueda…
Hackers != desarrolladores
![Page 9: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/9.jpg)
¿Por qué?
Las herramientas de hacking muy mal diseñadas (en general)
Aplicaciones no re-usables. Buenas prácticas… ¿qué es eso?
Tolerancia a fallos pésima
Obsesión por reinventar la rueda… why?! :)
Hackers != desarrolladores
![Page 10: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/10.jpg)
¿De qué va esta charla?
Hacer movidas tope chungas con Python
Nociones de esenciales de desarrollo
Buenas prácticas
Como hacer puzzles de frameworks y cómo unirlos
![Page 11: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/11.jpg)
¿De qué va esta charla?
Hacer movidas tope chungas con Python
Nociones de esenciales de desarrollo
Buenas prácticas
Como hacer puzzles de frameworks y cómo unirlos
Cómo hacer caca en Python
![Page 12: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/12.jpg)
¿Qué vas a aprender?
Nociones de buenas prácticas
Organizar y crear tu herramienta de hacking
Casos concretos de uso
Ejemplos prácticos de cada uso
![Page 13: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/13.jpg)
¿Porqué Python?
Fácil
Desarrollo muy rápido
Infinidad de librerías
Código limpio
Buena relación: tiempo desarrollo / rendimiento
![Page 14: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/14.jpg)
¿Porqué Python 3.x?Python 2.7.x
No será evolucionado
Muchos problemas de unicode, textos, core…
Python 3
Es el futuro de Python
Incluye infinidad de nuevas características muy interesantes
![Page 15: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/15.jpg)
¡Manos a la obra!
![Page 16: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/16.jpg)
Muchas herramientas no pueden ser usadas con un “import”
Usarlas en nuestro código puede ser muy complicado
Solo pueden ser usadas en linea de comandos
Problema 1
![Page 17: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/17.jpg)
Solución 1
Una correcta estructuración del proyecto
Diseñar nuestra aplicación pensando en la potabilidad
![Page 18: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/18.jpg)
Cómo 1Wfuzz
theHardvester
![Page 19: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/19.jpg)
Cómo 1Wfuzz
theHardvester
![Page 20: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/20.jpg)
Cómo 1
![Page 21: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/21.jpg)
Cómo 1
lib
![Page 22: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/22.jpg)
Cómo 1
lib
![Page 23: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/23.jpg)
Cómo 1
lib
doc
![Page 24: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/24.jpg)
Cómo 1
lib doc
![Page 25: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/25.jpg)
Cómo 1
lib doc
bin
![Page 26: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/26.jpg)
Cómo 1
lib doc bin
![Page 27: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/27.jpg)
Cómo 1
![Page 28: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/28.jpg)
Cómo 1
![Page 29: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/29.jpg)
Cómo 1
![Page 30: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/30.jpg)
Cómo 1
setup.py
![Page 31: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/31.jpg)
Cómo 1
setup.py
![Page 32: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/32.jpg)
Cómo 1
setup.py
LICENSE
![Page 33: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/33.jpg)
Cómo 1
setup.pyLICENSE
![Page 34: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/34.jpg)
Cómo 1
setup.pyLICENSE
README.rst
![Page 35: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/35.jpg)
Cómo 1
setup.pyLICENSE
README.rst
![Page 36: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/36.jpg)
Cómo 1
setup.pyLICENSE
README.rst
__init__.py
![Page 37: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/37.jpg)
Cómo 1
setup.pyLICENSE
README.rst__init__.py
![Page 38: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/38.jpg)
Problema 2
Añadir nuevos parámetros de entrada
Cada cambio implica modificar mucho del código
![Page 39: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/39.jpg)
Problema 2
![Page 40: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/40.jpg)
Problema 2
![Page 41: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/41.jpg)
Problema 2
Verbosity
![Page 42: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/42.jpg)
Problema 2
Verbosity
![Page 43: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/43.jpg)
Problema 2
Verbosity
1
![Page 44: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/44.jpg)
Problema 2
Verbosity
1
2
![Page 45: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/45.jpg)
Solución 2
Objeto contenedor de parámetros de aplicación
Posibilidad de comprobación exhaustiva de los parámetros
![Page 46: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/46.jpg)
Cómo 2
![Page 47: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/47.jpg)
Cómo 2
![Page 48: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/48.jpg)
Cómo 2
![Page 49: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/49.jpg)
Cómo 2
1
![Page 50: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/50.jpg)
Problema 3
Obtención de resultados de ejecución no es sencilla
El mejor de los casos: parsear XML/JSON/YAML…
![Page 51: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/51.jpg)
Problema 3
![Page 52: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/52.jpg)
Problema 3
![Page 53: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/53.jpg)
Problema 3
is_2_multiple
![Page 54: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/54.jpg)
Problema 3
is_2_multiple
![Page 55: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/55.jpg)
Problema 3
is_2_multiple12
3
![Page 56: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/56.jpg)
Solución 3
Objeto contenedor de resultados.
Abstracción de resultado del formato de salida: XML/JSON…
![Page 57: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/57.jpg)
Cómo 3
![Page 58: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/58.jpg)
Cómo 3
![Page 59: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/59.jpg)
Cómo 3
![Page 60: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/60.jpg)
Cómo 3
1
![Page 61: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/61.jpg)
Problema 4
Cada nueva UI implica cambiar mucho código.
Inclusión de nueva funcionalidad no es sencilla.
La aplicación no puede ser usada como librería.
![Page 62: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/62.jpg)
Problema 4
![Page 63: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/63.jpg)
Problema 4
![Page 64: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/64.jpg)
Problema 4
![Page 65: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/65.jpg)
Solución 4
![Page 66: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/66.jpg)
Solución 4
![Page 67: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/67.jpg)
Solución 4
API
![Page 68: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/68.jpg)
Solución 4
API
![Page 69: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/69.jpg)
Cómo 4
setup.pyLICENSE
README.rst__init__.py
![Page 70: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/70.jpg)
Cómo 4
setup.pyLICENSE
README.rst__init__.py
api.py
![Page 71: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/71.jpg)
Cómo 4
setup.pyLICENSE
README.rst__init__.pyapi.py
![Page 72: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/72.jpg)
Cómo 4
![Page 73: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/73.jpg)
Cómo 4
![Page 74: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/74.jpg)
Cómo 4
![Page 75: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/75.jpg)
Cómo 4
![Page 76: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/76.jpg)
Cómo 4
![Page 77: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/77.jpg)
Cómo 4
![Page 78: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/78.jpg)
Cómo 4
12
![Page 79: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/79.jpg)
Problema 5
Mostrar información por pantalla con un print(…)
Añadir nuevas localizaciones, además del print(…)
Enviar información a 2 localizaciones concurrentemente
![Page 80: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/80.jpg)
Problema 5
![Page 81: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/81.jpg)
Problema 5
![Page 82: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/82.jpg)
Problema 5
![Page 83: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/83.jpg)
Problema 5
![Page 84: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/84.jpg)
Problema 5
1
![Page 85: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/85.jpg)
Problema 5
12
![Page 86: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/86.jpg)
Problema 5
![Page 87: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/87.jpg)
Problema 5
![Page 88: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/88.jpg)
Problema 5
![Page 89: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/89.jpg)
Problema 5
![Page 90: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/90.jpg)
Problema 5
12
![Page 91: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/91.jpg)
Problema 5
![Page 92: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/92.jpg)
Problema 5
![Page 93: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/93.jpg)
Problema 5
1
32
4
![Page 94: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/94.jpg)
Solución 5
Punto de entrada unificado a los medios de salida
![Page 95: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/95.jpg)
Solución 5
![Page 96: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/96.jpg)
Solución 5
Hello world
![Page 97: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/97.jpg)
Solución 5
Hello world
![Page 98: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/98.jpg)
Cómo 5
![Page 99: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/99.jpg)
Cómo 5
12
3
![Page 100: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/100.jpg)
Cómo 5
![Page 101: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/101.jpg)
Cómo 5
![Page 102: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/102.jpg)
Cómo 5
![Page 103: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/103.jpg)
Cómo 5
![Page 104: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/104.jpg)
Problema 6
Instalar dependencias es muy tedioso
Cada dependencias tiene su web oficial y su forma de instalarse
![Page 105: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/105.jpg)
Solución 6
Usar pip para instalar dependencias
Usar un fichero de dependencias: requirements.txt
![Page 106: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/106.jpg)
Cómo 6
setup.pyLICENSE
README.rst__init__.pyapi.py
![Page 107: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/107.jpg)
Cómo 6
setup.pyLICENSE
README.rst__init__.py
requirements.txt
api.py
![Page 108: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/108.jpg)
Cómo 6
setup.pyLICENSE
README.rst__init__.pyapi.py
requirements.txt
![Page 109: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/109.jpg)
Cómo 6
![Page 110: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/110.jpg)
Cómo 6
![Page 111: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/111.jpg)
Problema 7
Las dependencias cruzadas entre proyectos.
Varias versiones de una misma libraría en el sistema.
Acceso como administrador.
![Page 112: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/112.jpg)
Solución 7
![Page 113: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/113.jpg)
Solución 7¿Un espacio virtual…?
![Page 114: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/114.jpg)
Solución 7¿Un espacio virtual…?
![Page 115: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/115.jpg)
Solución 7¿Un espacio virtual…?
![Page 116: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/116.jpg)
Solución 7¿Un espacio virtual…?
![Page 117: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/117.jpg)
Solución 7¿Un espacio virtual…?
![Page 118: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/118.jpg)
Solución 7¿Un espacio virtual…?
![Page 119: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/119.jpg)
Solución 7¿Un espacio virtual…?
![Page 120: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/120.jpg)
Solución 7¿Un espacio virtual…?
![Page 121: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/121.jpg)
Solución 7¿Un espacio virtual…?
![Page 122: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/122.jpg)
Solución 7¿Un espacio virtual…?
![Page 123: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/123.jpg)
Solución 7¿Un espacio virtual…?
![Page 124: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/124.jpg)
Solución 7¿Un espacio virtual…?
![Page 125: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/125.jpg)
Solución 7¿Un espacio virtual…?
![Page 126: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/126.jpg)
Solución 7¿Un espacio virtual…?
![Page 127: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/127.jpg)
Solución 7¿Y en Python?
![Page 128: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/128.jpg)
Cómo 7
![Page 129: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/129.jpg)
Cómo 7
![Page 130: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/130.jpg)
Problema 8
Python es mucho más lento que otros lenguajes
No no tiene coroutines integradas en el framework
![Page 131: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/131.jpg)
Problema 8
Python es mucho más lento que otros lenguajes
No no tiene coroutines integradas en el framework
¡¡¡¿¿Co..rru..ti….. queeee??!!!
![Page 132: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/132.jpg)
Problema 8
Python es mucho más lento que otros lenguajes
No no tiene coroutines integradas en el framework
¡¡¡¿¿Co..rru..ti….. queeee??!!!
![Page 133: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/133.jpg)
Problema 8
![Page 134: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/134.jpg)
Problema 8def hello_coroutine(…):
return get_web_page(…)
![Page 135: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/135.jpg)
Problema 8def hello_coroutine(…):
return get_web_page(…)
… hello_coroutine() …
Run!
![Page 136: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/136.jpg)
Problema 8def hello_coroutine(…):
return get_web_page(…)
… hello_coroutine() …
Run! get_web_page()1
![Page 137: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/137.jpg)
Problema 8def hello_coroutine(…):
return get_web_page(…)
… hello_coroutine() …
Run! get_web_page()1
<—Respuesta
![Page 138: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/138.jpg)
Problema 8def hello_coroutine(…):
return get_web_page(…)
… hello_coroutine() …
Run! get_web_page()1
return get_web_page()
<—Respuesta
2
![Page 139: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/139.jpg)
Solución 8
Usar la librería asyncio (a.k.a. Tulip), incluida en Python 3.4
Instalarla en versiones anteriores de Python 3.4
![Page 140: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/140.jpg)
Cómo 8
![Page 141: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/141.jpg)
Cómo 8
![Page 142: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/142.jpg)
Cómo 8
Bloqueo
![Page 143: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/143.jpg)
Cómo 8
Bloqueo
![Page 144: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/144.jpg)
Cómo 8
Bloqueo
NO bloqueante
![Page 145: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/145.jpg)
![Page 146: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/146.jpg)
![Page 147: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/147.jpg)
Problema 9
Python NO tiene multithreading real.
Los hilos no son realmente hilos, sino una simulación.
GIL (Global Interpreter Lock)
CTRL+C
![Page 148: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/148.jpg)
Problema 9
GIL
thread 1
T0
thread 2
![Page 149: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/149.jpg)
Problema 9
GIL
thread 1
T1
thread 2
![Page 150: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/150.jpg)
Problema 9
GIL
thread 1
T2
thread 2
![Page 151: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/151.jpg)
Problema 9
GIL
thread 1
thread 2
T3
![Page 152: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/152.jpg)
Problema 9
GIL
thread 1
thread 2
T4
![Page 153: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/153.jpg)
Solución 9
Usar multiprocessing
![Page 154: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/154.jpg)
Cómo 9Multithreading
![Page 155: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/155.jpg)
Cómo 9Multithreading
![Page 156: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/156.jpg)
Cómo 9Multithreading
![Page 157: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/157.jpg)
Cómo 9Multiprocessing
![Page 158: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/158.jpg)
Cómo 9Multiprocessing
![Page 159: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/159.jpg)
Cómo 9Multiprocessing
![Page 160: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/160.jpg)
Problema 10
Ejecución de tareas en backgound
Ejecución de procesos muy costosos computacionalmente
Creación un flujo de información entre tareas
![Page 161: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/161.jpg)
Solución 10
Usar Celery
![Page 162: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/162.jpg)
Solución 10Pero… ¿Qué es eso de Celery? ¿Se come?
![Page 163: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/163.jpg)
Solución 10Pero… ¿Qué es eso de Celery? ¿Se come?
![Page 164: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/164.jpg)
Solución 10
Gestor de tareas distribuido
![Page 165: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/165.jpg)
Consumidor3
Solución 10
Tarea Generadora
Consumidor1
Consumidor2Gestor de colas
Conceptualmente
![Page 166: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/166.jpg)
Consumidor3
Solución 10
Tarea Generadora
Consumidor1
Consumidor2Gestor de colas
Conceptualmente
![Page 167: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/167.jpg)
Consumidor3
Solución 10
Tarea Generadora
Consumidor1
Consumidor2Gestor de colas
Conceptualmente
![Page 168: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/168.jpg)
Consumidor3
Solución 10
Tarea Generadora
Consumidor1
Consumidor2Gestor de colas
Conceptualmente
![Page 169: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/169.jpg)
Registrar visita
Solución 10
Enviar email
Enviar email
Caso concreto
![Page 170: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/170.jpg)
Registrar visita
Solución 10
Enviar email
Enviar email
Caso concreto
send_mail(“text”)
![Page 171: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/171.jpg)
Registrar visita
Solución 10
Enviar email
Enviar email
Caso concreto
send_mail(“text”)
![Page 172: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/172.jpg)
Registrar visita
Solución 10
Enviar email
Enviar email
Caso concreto
send_mail(“text”)
![Page 173: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/173.jpg)
Registrar visita
Solución 10
Enviar email
Enviar email
Caso concreto
send_mail(“text”)
![Page 174: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/174.jpg)
Cómo 10
Tasks Servidor broker
![Page 175: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/175.jpg)
Cómo 10
![Page 176: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/176.jpg)
Cómo 10
![Page 177: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/177.jpg)
Cómo 10
![Page 178: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/178.jpg)
Cómo 10
![Page 179: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/179.jpg)
Cómo 10
celery.py
![Page 180: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/180.jpg)
Cómo 10
celery.py
![Page 181: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/181.jpg)
Cómo 10
![Page 182: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/182.jpg)
Cómo 10
main_task.py
![Page 183: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/183.jpg)
Cómo 10
main_task.py
![Page 184: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/184.jpg)
Cómo 10
main_task.py
__init__.py
![Page 185: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/185.jpg)
Cómo 10
main_task.py
__init__.py
![Page 186: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/186.jpg)
Cómo 10
celery.py
![Page 187: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/187.jpg)
Cómo 10
celery.py
__init__.py
![Page 188: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/188.jpg)
Cómo 10
celery.py
__init__.py
![Page 189: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/189.jpg)
Cómo 10
celery.py
__init__.py
celeryconfig.py.py
![Page 190: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/190.jpg)
Cómo 10
celery.py
__init__.py
celeryconfig.py
![Page 191: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/191.jpg)
Cómo 10celeryconfig.py
![Page 192: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/192.jpg)
Cómo 10celeryconfig.py
![Page 193: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/193.jpg)
Cómo 10celeryconfig.py
![Page 194: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/194.jpg)
Cómo 10celery.py
![Page 195: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/195.jpg)
Cómo 10celery.py
![Page 196: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/196.jpg)
Cómo 10celery.py
![Page 197: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/197.jpg)
Cómo 10main_task.py
![Page 198: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/198.jpg)
Cómo 10main_task.py
![Page 199: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/199.jpg)
Cómo 10main_task.py
![Page 200: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/200.jpg)
Cómo 10“pseudo-demo”
![Page 201: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/201.jpg)
Cómo 10“pseudo-demo”
![Page 202: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/202.jpg)
Cómo 10“pseudo-demo”
![Page 203: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/203.jpg)
Cómo 10“pseudo-demo”
![Page 204: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/204.jpg)
Cómo 10“pseudo-demo”
![Page 205: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/205.jpg)
Problema 11
Quiero que se ejecuten tareas cada X tiempo
![Page 206: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/206.jpg)
Solución 11
Usar Celery beat
![Page 207: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/207.jpg)
Cómo 11celeryconfig.py
![Page 208: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/208.jpg)
Cómo 11celeryconfig.py
![Page 209: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/209.jpg)
Cómo 11celeryconfig.py
![Page 210: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/210.jpg)
Cómo 11celeryconfig.py
![Page 211: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/211.jpg)
Cómo 11celeryconfig.py
![Page 212: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/212.jpg)
Cómo 11celeryconfig.py
![Page 213: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/213.jpg)
Cómo 11celeryconfig.py
![Page 214: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/214.jpg)
Mini ejemplo: Análisis de Malware “cutre”
![Page 215: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/215.jpg)
Mini ejemploCelery + Yara
![Page 216: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/216.jpg)
Mini ejemplomain_task.py
![Page 217: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/217.jpg)
Mini ejemplomain_task.py
![Page 218: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/218.jpg)
Mini ejemplomain_task.py
![Page 219: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/219.jpg)
Mini ejemplomain_task.py
export.py
![Page 220: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/220.jpg)
Mini ejemplomain_task.py
export.py
![Page 221: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/221.jpg)
Mini ejemplo
start.py
![Page 222: El poder de los reptiles: Hacer herramientas de hacking es fácil](https://reader037.vdocumento.com/reader037/viewer/2022103119/55cd1830bb61eb497a8b4615/html5/thumbnails/222.jpg)
Mini ejemplo
start.py