🎃 Grandes descuentos en libros en línea, eformaciones y vídeos*. Código CALABAZA30. Pulse aquí
¡Acceso ilimitado 24/7 a todos nuestros libros y vídeos! Descubra la Biblioteca Online ENI. Pulse aquí
  1. Libros
  2. Hacking y Forensic - Desarrolle sus propias herramientas en Python

Hacking y Forensic Desarrolle sus propias herramientas en Python

Información adicional

  • 5% de descuento en todos los libros
  • Envío gratis a partir de 25 € de compra
  • Versión online gratis por un año

Características

  • Encuadernación rústica - 17 x 21 cm
  • ISBN: 978-2-409-00265-6
  • EAN: 9782409002656
  • Ref. ENI: EPT2HAFO

Información adicional

  • 5% de descuento en todos los libros
  • Versión online digital, no descargable
  • Consultable en línea durante 10 años inmediatamente después de la validación del pago.

Características

  • HTML
  • ISBN: 978-2-409-00266-3
  • EAN: 9782409002663
  • Ref. ENI: LNEPT2HAFO
Este libro se dirige a toda persona que desee aprender Python para el Hacking y el análisis forense y formarse en el diseño de herramientas en Python, así como a los profesionales de la seguridad informática y del Análisis Forense. Tiene como objetivo llevar al lector a una comprensión de las librerías específicas de Python para poder luego diseñar sus herramientas personalizadas, adaptadas a situaciones particulares en Hacking y...
Consultar extractos del libro Extracto del libro
  • Nivel Medio a Experto
  • Número de páginas 474 páginas
  • Publicación junio 2016
  • Nivel Experto
  • Publicación junio 2016
Este libro se dirige a toda persona que desee aprender Python para el Hacking y el análisis forense y formarse en el diseño de herramientas en Python, así como a los profesionales de la seguridad informática y del Análisis Forense. Tiene como objetivo llevar al lector a una comprensión de las librerías específicas de Python para poder luego diseñar sus herramientas personalizadas, adaptadas a situaciones particulares en Hacking y Forensic. Para sacar el máximo provecho posible, es necesario contar con nociones de seguridad informática.

El libro consta de 8 capítulos, cada uno ilustrado por muchos ejemplos y ejercicios con sus correcciones al final del capítulo, para proporcionar al lector una forma de auto-evaluación.

El capítulo 1 permitirá aprender los conceptos del lenguaje Python, y las bases del lenguaje. El capítulo 2 está dedicado a la programación en red. Abordaremos la programación de sockets y luego los diferentes servicios tales como HTTP, FTP, POP, SSL, al igual que las expresiones regulares y el acceso a bases de datos. El capítulo 3 está dedicado a la librería scapy, muy útil en hacking y Forensic; el autor detalla el tratamiento de las tramas, el tunneling, los diferentes tipos de escaneo de red y también aborda el protocolo IPv6. Para el capítulo 4, son indispensables conocimientos básicos de la arquitectura PC y ensamblador, así como el uso de depuradores, para la correcta comprensión de la librería PyDbg empleada. El capítulo 5 está dedicado al Fuzzing ; en la primera parte el autor utiliza librerías ya vistas en capítulos anteriores para luego, en una segunda parte, estudiar una librería específica, llamada Sulley, especializada en el fuzzing. El capítulo 6 examina la librería PIL que va a permitir la gestión de imágenes, su edición, y captura de imágenes desde una webcam para extraer los datos; el autor examinará también un elemento particular de la seguridad en la web, los captcha. El capítulo 7 desarrolla los conceptos vistos en el capítulo 2, a fin de construir en Python herramientas de análisis de seguridad para sitios web. Por último, el capítulo final está dedicado íntegramente al análisis forense (Forensic); el autor efectúa una revisión, no exhaustiva, de las diferentes técnicas, recorriendo la esteganografía, la criptografía, y el acoso por e-mail.

El autor ha querido hacer de este libro un compendio no exhaustivo de las librerías más útiles, explicándolas e ilustrándolas con ejemplos concretos para que el lector pueda dominar su funcionamiento.

Los scripts de cada capítulo pueden descargarse desde el sitio www.ediciones-eni.com.


Los capítulos del libro:
Prólogo – Python: los fundamentos – La red – Red: la librería Scapy – Depuración en Windows – El fuzzing – Tratamiento de imágenes – Un poco más sobre la Web – Análisis forense

Descargas

Prólogo
  1. Introducción
Python: Los fundamentos
  1. Introducción
  2. Historia
  3. Características del lenguaje
  4. Tipos de datos
    1. 1. Los números
    2. 2. Las operaciones aritméticas
    3. 3. Las cadenas de caracteres
    4. 4. Las tuplas
    5. 5. Las listas
    6. 6. Los diccionarios
    7. 7. Tipos de datos adicionales
  5. Estructuras condicionales y repetitivas
    1. 1. Test if ... elif ... else
    2. 2. Bucle while
    3. 3. Bucle for
    4. 4. Las listas por comprensión (list comprehension)
  6. Funciones, módulos y paquetes
    1. 1. Definición y llamadas de función
    2. 2. Espacios de nombres
    3. 3. Funciones particulares
    4. 4. Módulos
    5. 5. Paquetes
    6. 6. Instrucción yield
  7. Las clases
    1. 1. Declaración de una clase
    2. 2. Sobrecarga de operadores
    3. 3. Propiedades, accesores y mutadores
    4. 4. Herencia
    5. 5. Polimorfismo
  8. Manipulación de archivos
  9. Las excepciones
  10. Módulos útiles para la continuación del libro
    1. 1. Módulo sys
    2. 2. Módulo os
    3. 3. Módulo re
    4. 4. Módulos pickle y shelve
    5. 5. Módulos de bases de datos
      1. a. MySQLdb
      2. b. PostgreSQL
    6. 6. Módulo thread
      1. a. Principio del módulo
      2. b. Threading
      3. c. Clase Lock()
  11. Conclusión
La red
  1. Introducción
  2. Los sockets
    1. 1. Creación de un socket
    2. 2. Intercambio de datos
    3. 3. Socket en UDP
    4. 4. Los errores
    5. 5. Socket y FTP
  3. Creación de un servidor
    1. 1. Introducción
    2. 2. Conexión cliente
    3. 3. Conversación con el cliente
    4. 4. Creación de un troyano básico
    5. 5. Creación de un troyano más complejo
  4. DNS: Domain Name Server
    1. 1. Introducción
      1. a. ¿Qué significa DNS?
      2. b. Principales registros DNS
    2. 2. nslookup básico
    3. 3. Reverse lookup
    4. 4. La librería DNS
    5. 5. Consulta a partir de un servidor especificado
    6. 6. Formato de los resultados obtenidos
  5. FTP: File Transfer Protocol
    1. 1. Introducción
    2. 2. FTP anónimo
    3. 3. Descargas de archivos ASCIII
    4. 4. Descargas de archivos binarios
    5. 5. Descarga avanzada de archivos binarios
    6. 6. Envío de datos
    7. 7. Los errores FTP
    8. 8. Listar el contenido de las carpetas
    9. 9. Otros comandos útiles
    10. 10. Descarga recursiva de datos
  6. Las expresiones regulares
    1. 1. Introducción
    2. 2. El módulo re
    3. 3. Los métodos útiles
      1. a. Método search()
      2. b. Método match()
      3. c. Método sub()
      4. d. Ir más allá con los grupos
    4. 4. ¿Cómo construir su patróno expresión?
  7. La Web
    1. 1. Introducción
    2. 2. Recuperación de una página fuente
    3. 3. Métodos GET y POST
      1. a. Método GET
      2. b. Método POST
    4. 4. Gestión de errores
      1. a. Errores de conexión: urllib2.URLErrorv
      2. b. Error 404
    5. 5. Autenticación
  8. Analizar páginas HTML y XHTML
    1. 1. Introducción
    2. 2. Primer enfoque
    3. 3. Trabajo con páginas "reales"
      1. a. Ampersand
      2. b. Caracteres especiales
    4. 4. BeautifulSoup
      1. a. Introducción
      2. b. Recuperar los enlaces
  9. El XML
    1. 1. Introducción
    2. 2. Representación de un archivo XML
    3. 3. Python y XML
    4. 4. Leer un canal RSS
  10. Los e-mails
    1. 1. Introducción
    2. 2. La librería smtplib
      1. a. El cuerpo del texto
      2. b. Mail con archivo adjunto
    3. 3. Análisis de e-mails
    4. 4. Analizar las fechas
    5. 5. Errores y depuración
    6. 6. Mail y POP
  11. SSL y Python
    1. 1. Introducción
    2. 2. Utilización de OpenSSL
    3. 3. Verificar los certificados
  12. La utilización de bases de datos
    1. 1. Introducción
    2. 2. MySQLdb
      1. a. Recordatorio
      2. b. Utilización
    3. 3. PostgreSQL
      1. a. Introducción y primera conexión
      2. b. Ejecutar los comandos
      3. c. Ocultar los cambios
      4. d. Repetición de comandos
      5. e. Recuperar los datos
  13. Conclusión
  14. Puesta en práctica
    1. 1. Caso 1: Escaneo de puertos
    2. 2. Caso 2: Envío de mails
    3. 3. Caso 3: Fuzzing FTP
    4. 4. Caso 4: Parsing de página web
    5. 5. Caso 5: Fuerza bruta MySQL
Red: la librería Scapy
  1. Introducción
  2. Programación de red con Scapy
    1. 1. Lista de protocolos soportados
    2. 2. Algunas nociones sobre las redes
      1. a. Topología de redes
      2. b. Los diferentes tipos de redes
      3. c. ¿Qué es un protocolo?
      4. d. Dirección IP
      5. e. Las clases de direcciones
      6. f. La máscara de subred
      7. g. El modelo OSI
    3. 3. Operaciones básicas
      1. a. Comandos básicos
      2. b. Fabricación de paquetes
      3. c. Las entradas/salidas
      4. d. Entramos en detalle
    4. 4. Utilización avanzada: seguridad de red
      1. a. traceroute
      2. b. Sniffing
      3. c. Scan TCP
      4. d. Tunneling
    5. 5. Algunos ejemplos sencillos de "one-liner"
      1. a. Scan ACK
      2. b. Scan Xmas
      3. c. Scan IP
      4. d. Los distintos ping
      5. e. Los ataques clásicos
  3. Scapy e IPv6
    1. 1. Nociones de IPv6
      1. a. Aspectos generales
      2. b. IPv6: RFC 2373
    2. 2. Aplicación
      1. a. Consulta ICMP IPv6
      2. b. Enrutamiento de paquetes IPv6
      3. c. Ejemplo de enrutamiento de cabecera
      4. d. traceroute
      5. e. IPv6 NA
      6. f. Aviso de daemon muertos
      7. g. Ejemplo
  4. Otros ejemplos
  5. Conclusión
  6. Puesta en práctica
    1. 1. Canal encubierto IP
    2. 2. Detección de Rogue AP (Access Point)
    3. 3. IP Spoofing
    4. 4. Spoofing IPv6 de los vecinos
Depuración en Windows
  1. Introducción
  2. El módulo ctypes de Python
  3. Primer enfoque
  4. Estado de los registros
    1. 1. Enumeración de los hilos (threads)
    2. 2. Recuperar los valores de los registros
  5. Los eventos del debugger
  6. Los puntos de parada (breakpoints)
    1. 1. Puntos de parada software
    2. 2. Puntos de parada hardware
    3. 3. Punto de parada de memoria
  7. La librería PyDbg
    1. 1. Violación de acceso de las cabeceras (handlers)
    2. 2. Process snapshot
  8. Puesta en práctica: Hooking
El fuzzing
  1. Introducción
  2. Fuzzing FTP
  3. Fuzzing con Scapy
  4. Fuzzing con PyDbg: Format string
    1. 1. Introducción
    2. 2. Fuzzer de archivos
  5. Sulley
    1. 1. Introducción
    2. 2. Instalación
      1. a. Instalación normal
      2. b. Instalación no estándar
    3. 3. Utilización
      1. a. Estructura del directorio de Sulley
      2. b. Representación de datos
      3. c. Primitivas estáticas y aleatorias
      4. d. Los enteros
      5. e. Cadenas de caracteres y delimitadores
      6. f. Las extensiones Fuzz Library
      7. g. Blocks
      8. h. Grupos
      9. i. Codificador
      10. j. Dependencias
      11. k. Block helpers
      12. l. Legos
  6. Puesta en práctica
    1. 1. Fuzzing 1: HTTP
    2. 2. Fuzzing 2: FTP
Tratamiento de imágenes
  1. Introducción
  2. Utilización
    1. 1. La clase Image
    2. 2. Leer y escribir
    3. 3. Cortar, pegar y fusionar
    4. 4. Transformaciones geométricas
    5. 5. Transformación de los colores
    6. 6. Mejora de imágenes
      1. a. Filtros
      2. b. Operaciones sobre los puntos
      3. c. Mejoras
  3. Ejemplos de uso
    1. 1. Creación de un captcha
    2. 2. Captura de Imagen y transformación
    3. 3. Lectura del captcha
Un poco más sobre la Web
  1. Introducción
  2. Recordemos lo básico
  3. Mapping de sitios web
  4. Fuerza bruta de carpetas o de ubicación de archivos
  5. Fuerza bruta autenticación HTML
  6. Selenium
    1. 1. Introducción
    2. 2. Instalación
    3. 3. Primera prueba
    4. 4. Captura de pantalla con Selenium
  7. Conexión a un sitio web y navegación
  8. Conclusión
Análisis forense
  1. Introducción
  2. Criptografía y otros
    1. 1. ROT13
    2. 2. Base 64
    3. 3. Hash
  3. Extracción de metadatos de los archivos
    1. 1. Metadatos MP3
    2. 2. Metadatos de imágenes
    3. 3. Metadatos PDF
    4. 4. Metadatos OLE2
    5. 5. Caso concreto
  4. Archivos ZIP
    1. 1. Leer de un archivo ZIP
    2. 2. Ataque de fuerza bruta de contraseñas
  5. Leer de un archivo OpenOffice o Word
    1. 1. Recorrer un árbol
    2. 2. Buscar en un documento OpenOffice
    3. 3. Buscar en un documento Word
  6. E-mail
    1. 1. Encontrar e-mails en los archivos
    2. 2. Buscar en el buzón de correo
  7. Esteganografía
    1. 1. Buscar información en una imagen
    2. 2. Ocultar un mensaje en una imagen
    3. 3. Lectura del mensaje
  8. Volatility
    1. 1. Información de la imagen
    2. 2. Proceso y DLL
    3. 3. Captura de contraseñas hash
    4. 4. Ejemplo de programa
  9. Análisis de puntos de acceso inalámbrico en base al registro
  10. Recuperar los elementos eliminados (de la papelera)
  11. Puesta en práctica
    1. 1. Descifrado
    2. 2. OCR
    3. 3. ZIP
    4. 4. Scapy y la geolocalización
Autor : Franck EBEL

Franck EBEL

Franck EBEL - Es profesor de la Universidad de Valenciennes y teniente-coronel en la reserva de la Gendarmería y especialista en la lucha contra el ciberdelito. Experto en vulnerabilidades de aplicación, creó la licenciatura profesional CDAISI, la única en Francia en la llamada seguridad ofensiva. Posee el Certificado CEH, OSCP y Wifu, forma a los Ntech de la Gendarmería de la región Nord-Pas de Calais y CICERT de Côte de Ivoire. Como presidente de la asociación ACISSI, organiza cada año las RSIL y el Hacking challenge "Hacknowledge". Es miembro de AFPY, asociación de habla francesa para Python y da conferencias en Europa y África sobre Python, software libre y seguridad informática.
Más información

Descubrir todos sus libros

  • Seguridad informática y Malwares Pack de 2 libros: Ataques, amenazas y contramedidas (3ª edición)
  • Seguridad informática Ethical Hacking: Conocer el ataque para una mejor defensa (5a edición)

Novedades

Ver más