Facebook Pixel
Searching...
Español
EnglishEnglish
EspañolSpanish
简体中文Chinese
FrançaisFrench
DeutschGerman
日本語Japanese
PortuguêsPortuguese
ItalianoItalian
한국어Korean
РусскийRussian
NederlandsDutch
العربيةArabic
PolskiPolish
हिन्दीHindi
Tiếng ViệtVietnamese
SvenskaSwedish
ΕλληνικάGreek
TürkçeTurkish
ไทยThai
ČeštinaCzech
RomânăRomanian
MagyarHungarian
УкраїнськаUkrainian
Bahasa IndonesiaIndonesian
DanskDanish
SuomiFinnish
БългарскиBulgarian
עבריתHebrew
NorskNorwegian
HrvatskiCroatian
CatalàCatalan
SlovenčinaSlovak
LietuviųLithuanian
SlovenščinaSlovenian
СрпскиSerbian
EestiEstonian
LatviešuLatvian
فارسیPersian
മലയാളംMalayalam
தமிழ்Tamil
اردوUrdu
Hacking

Hacking

The Art of Exploitation w/CD
por Jon Erickson 2003 264 páginas
4.17
2k+ calificaciones
Escuchar
Listen to Summary

Puntos clave

1. El Hacking es un Arte de Resolución de Problemas No Convencional

La esencia del hacking radica en encontrar usos no intencionados o pasados por alto para las leyes y propiedades de una situación dada y luego aplicarlos de maneras nuevas e inventivas para resolver un problema.

Más Allá de los Límites Legales. Hacking no se trata inherentemente de romper la ley, sino de resolver problemas de manera creativa al encontrar usos novedosos para las reglas y propiedades existentes. Esto puede abarcar desde la optimización de programas informáticos hasta la adaptación de equipos telefónicos antiguos para nuevos propósitos. La clave es pensar fuera de las metodologías convencionales y encontrar soluciones únicas.

La Ética del Hacker. Los primeros hackers en el MIT valoraban el flujo libre de información y el aprendizaje continuo, trascendiendo límites convencionales como la discriminación. Apreciaban la lógica como una forma de arte y buscaban entender mejor el mundo eludiendo restricciones. Esta ética enfatiza el conocimiento, la innovación y el empuje de los límites, sin importar la legalidad.

Hacker vs. Cracker. Aunque el término "cracker" se utilizaba anteriormente para distinguir a los hackers maliciosos de los éticos, la línea se ha difuminado. Las leyes modernas que restringen la criptografía y la investigación pueden hacer que incluso los hackers bien intencionados parezcan estar violando la ley. El verdadero espíritu hacker trasciende las leyes gubernamentales y se centra en la aplicación del conocimiento, ya sea para el bien o para el mal.

2. La Elegancia de la Programación Radica en Soluciones Ingeniosas y Contrarias a la Intuición

Hacking es realmente solo el acto de encontrar una solución ingeniosa y contraria a la intuición para un problema.

Más Allá del Código Funcional. La programación no se trata solo de hacer que el código funcione; se trata de encontrar la manera más eficiente y elegante de realizar una tarea. Esto implica utilizar las reglas de la computadora de maneras nuevas e inventivas, lo que a menudo resulta en un código pequeño, eficiente y ordenado. Esta búsqueda de la elegancia es una forma de hacking en sí misma.

El Valor de los Hacks. Mientras que los negocios modernos a menudo priorizan la velocidad y el costo sobre la optimización, la verdadera apreciación de la elegancia de la programación queda reservada para los aficionados, los escritores de exploits y aquellos que buscan la mejor solución posible. Estas personas encuentran belleza en el código elegante y genialidad en los hacks ingeniosos, empujando los límites de lo que es posible.

La Programación como Base. Comprender la programación es crucial tanto para escribir código como para explotarlo. Al entender cómo se escriben los programas, los hackers pueden comprender mejor cómo encontrar y explotar vulnerabilidades. Este conocimiento es esencial para ambos lados del espectro de la programación.

3. La Explotación de Programas Revela Usos No Intencionados de las Reglas Informáticas

Explotar un programa es simplemente una forma ingeniosa de hacer que la computadora haga lo que quieres que haga, incluso si el programa que se está ejecutando actualmente fue diseñado para prevenir esa acción.

Explotando Fallos. La explotación de programas implica encontrar fallos u omisiones en el diseño o entorno de un programa y utilizarlos para hacer que la computadora realice algo que no estaba destinada a hacer. Esto a menudo implica eludir medidas de seguridad y obtener acceso no autorizado. Las brechas de seguridad son, en realidad, fallos u omisiones en el diseño del programa o en el entorno en el que se está ejecutando.

Errores Off-by-One. Un error común de programación que puede ser explotado es el error off-by-one, donde el programador cuenta incorrectamente por uno. Esto puede llevar a vulnerabilidades que permiten a los atacantes obtener derechos administrativos o eludir restricciones de seguridad. Por ejemplo, un error off-by-one en OpenSSH permitió a usuarios normales obtener derechos administrativos completos.

La Letra de la Ley. Los programas siguen instrucciones exactamente, incluso si los resultados no son lo que el programador pretendía. Esto puede llevar a resultados inesperados y catastróficos, como se vio en la "Laguna de LaMacchia", donde un estudiante explotó una laguna legal para facilitar la piratería de software sin obtener ganancias financieras personales.

4. Desbordamientos de Búfer y Cadenas de Formato: Técnicas de Explotación Generalizadas

Con ambas técnicas, el objetivo final es tomar control del flujo de ejecución del programa objetivo para engañarlo y hacer que ejecute un código malicioso que puede ser introducido en la memoria de diversas maneras.

Errores Comunes. Ciertos errores comunes de programación pueden ser explotados de maneras que no siempre son obvias. Estos errores han dado lugar a técnicas de explotación generalizadas que pueden ser utilizadas en diversas situaciones. Los dos tipos más comunes de técnicas de explotación generalizadas son los exploits de desbordamiento de búfer y los exploits de cadenas de formato.

Desbordamientos de Búfer. Los desbordamientos de búfer ocurren cuando un programa intenta escribir más datos en un búfer de los que puede contener, sobrescribiendo ubicaciones de memoria adyacentes. Esto puede ser utilizado para sobrescribir datos críticos, como direcciones de retorno, y tomar control del flujo de ejecución del programa.

Exploits de Cadenas de Formato. Los exploits de cadenas de formato implican manipular cadenas de formato en funciones como printf() para leer o escribir ubicaciones de memoria arbitrarias. Esto puede ser utilizado para sobrescribir punteros de función u otros datos críticos y obtener control del flujo de ejecución del programa.

5. Segmentación de Memoria: Comprendiendo el Flujo de Ejecución del Programa

La memoria del programa se divide en cinco segmentos: texto, datos, bss, heap y stack.

Organización de la Memoria. La memoria del programa se divide en cinco segmentos: texto (código), datos, bss, heap y stack. Cada segmento cumple un propósito específico, como almacenar instrucciones del programa, variables globales o datos temporales. Comprender cómo están organizados estos segmentos es crucial para explotar vulnerabilidades.

El Stack. El stack es un espacio temporal utilizado para almacenar el contexto durante las llamadas a funciones. Contiene parámetros, variables locales y punteros necesarios para restaurar el estado del programa después de que la función termina de ejecutarse. Los desbordamientos basados en el stack pueden sobrescribir direcciones de retorno y cambiar el flujo de ejecución.

El Heap. El heap se utiliza para la asignación dinámica de memoria, permitiendo a los programas reservar memoria según sea necesario. Los desbordamientos basados en el heap pueden sobrescribir variables importantes o punteros de función, lo que lleva a vulnerabilidades de seguridad.

6. Permisos de Archivos Multiusuario: Obteniendo Privilegios de Root

Si el flujo de un programa suid root puede ser cambiado para ejecutar un código arbitrario inyectado, entonces el atacante podría hacer que el programa haga cualquier cosa como usuario root.

Modelo de Seguridad de Linux. Linux es un sistema operativo multiusuario con todos los privilegios del sistema invertidos en el usuario "root". Los permisos de archivo se basan en usuarios y grupos, evitando el acceso no autorizado a archivos.

Programas SUID. Los programas SUID (set user ID) permiten a usuarios no privilegiados realizar funciones del sistema que requieren privilegios de root. Cuando se ejecuta un programa SUID, el ID de usuario efectivo (EUID) del usuario se cambia al del propietario del programa, que normalmente es root.

Explotando Programas SUID. Si el flujo de un programa SUID root puede ser cambiado para ejecutar código inyectado, un atacante puede obtener privilegios de root. Esto puede lograrse a través de desbordamientos de búfer o exploits de cadenas de formato, permitiendo al atacante controlar el sistema como usuario root.

7. La Redes se Basan en Protocolos Estándar para la Comunicación

La red se trata de comunicación, y para que dos o más partes se comuniquen adecuadamente, se requieren estándares y protocolos.

El Modelo OSI. La comunicación en red se basa en protocolos estándar definidos por el modelo de referencia de Interconexión de Sistemas Abiertos (OSI). Este modelo consta de siete capas, cada una de las cuales trata un aspecto diferente de la comunicación, desde la conexión física hasta la capa de aplicación.

Capas Clave. La capa de red (IP), la capa de transporte (TCP/UDP) y la capa de enlace de datos (Ethernet) son particularmente importantes para comprender las vulnerabilidades de la red. Estas capas manejan direccionamiento, enrutamiento, transferencia de datos confiable y direccionamiento de hardware.

Paquetes y Encapsulación. Los datos se comunican a través de paquetes, que están encapsulados con encabezados de protocolo en cada capa. Comprender cómo están estructurados estos encabezados y cómo interactúan es crucial para explotar vulnerabilidades de red.

8. La Captura de Paquetes en Redes Expone Vulnerabilidades en la Transmisión de Datos

La explotación de programas es un pilar del hacking.

Modo Promiscuo. La captura de paquetes implica capturar paquetes transmitidos a través de una red. En una red no conmutada, los dispositivos pueden configurarse en modo promiscuo, lo que les permite capturar todos los paquetes, independientemente de la dirección de destino.

Redes Conmutadas. Las redes conmutadas limitan el tráfico a puertos específicos según las direcciones MAC, lo que dificulta la captura. Sin embargo, técnicas como la redirección ARP pueden utilizarse para eludir esta medida de seguridad.

Redirección ARP. La redirección ARP implica falsificar respuestas ARP para envenenar las cachés ARP de las máquinas objetivo, redirigiendo su tráfico a través de la máquina del atacante. Esto permite al atacante capturar y potencialmente modificar el tráfico.

9. Criptología: Equilibrando Seguridad y Práctica

No hay nada bueno o malo en el conocimiento en sí; la moralidad radica en la aplicación de ese conocimiento.

Criptografía y Criptoanálisis. La criptología abarca tanto la criptografía (el arte de la comunicación secreta) como el criptoanálisis (el arte de romper esos secretos). Una criptografía fuerte es esencial para transacciones en línea seguras y para proteger datos sensibles.

Seguridad Incondicional vs. Computacional. La seguridad incondicional, como la proporcionada por los pads de un solo uso, es irrompible incluso con recursos infinitos. Sin embargo, a menudo es impráctica. La seguridad computacional se basa en la dificultad de romper un cifrado dentro de un plazo razonable, dada la tecnología actual.

Cifrado Simétrico vs. Asimétrico. Los cifrados simétricos utilizan la misma clave para cifrar y descifrar, ofreciendo velocidad pero planteando desafíos en la distribución de claves. Los cifrados asimétricos utilizan claves públicas y privadas, simplificando el intercambio de claves pero sacrificando velocidad. Los cifrados híbridos combinan ambos enfoques para una seguridad y eficiencia óptimas.

10. Explotando la Encriptación Inalámbrica 802.11b: Ataques WEP

Las ciencias de la física nuclear y la bioquímica pueden ser utilizadas para matar, sin embargo, también nos proporcionan avances científicos significativos y medicina moderna.

Propósito Previsto de WEP. WEP (Privacidad Equivalente a Cableada) fue diseñado para proporcionar seguridad equivalente a una red cableada. Sin embargo, las debilidades en el protocolo lo hacen vulnerable a varios ataques.

Proceso de Encriptación de WEP. WEP utiliza el cifrado de flujo RC4 con un vector de inicialización (IV) de 24 bits y una clave de 40 bits o 104 bits. El IV se antepone a la clave para sembrar el algoritmo RC4, generando un flujo de claves que se XOR con el mensaje en texto plano.

Vulnerabilidades de WEP. WEP es vulnerable a ataques de fuerza bruta fuera de línea, reutilización de flujos de claves y ataques de diccionario de descifrado basados en IV. Estas vulnerabilidades pueden ser explotadas para descifrar claves WEP y obtener acceso no autorizado a redes inalámbricas.

Última actualización:

Reseñas

4.17 de 5
Promedio de 2k+ calificaciones de Goodreads y Amazon.

Hacking: El arte de la explotación es muy valorado por sus explicaciones técnicas profundas sobre las técnicas de hacking, abarcando temas como desbordamientos de búfer, redes y criptografía. Los lectores aprecian el enfoque práctico que ofrece el LiveCD incluido, lo que permite la experimentación práctica. Si bien algunos lo encuentran desafiante y potencialmente desactualizado, muchos lo consideran un recurso esencial para comprender los exploits de bajo nivel y mejorar las habilidades de programación. El libro es recomendado para aquellos interesados en la ciberseguridad, aunque puede resultar demasiado avanzado para principiantes y se centra principalmente en la programación en C y los sistemas Linux.

Sobre el autor

Jon Erickson es el autor de "Hacking: El arte de la explotación", un libro ampliamente aclamado en el campo de la seguridad informática. Reconocido por su habilidad para explicar conceptos técnicos complejos de manera accesible, Erickson ha contribuido significativamente a la comprensión de las técnicas de hacking y las vulnerabilidades del software. Su trabajo se centra en enseñar a los lectores no solo cómo utilizar los exploits existentes, sino también cómo desarrollar los suyos propios y entender los principios subyacentes. El enfoque de Erickson enfatiza la importancia de la resolución creativa de problemas en el hacking, animando a los lectores a pensar críticamente sobre los sistemas informáticos y sus posibles debilidades. Su libro se ha convertido en un recurso valioso tanto para los aspirantes a profesionales de la seguridad como para los programadores experimentados que buscan profundizar su comprensión de la ciberseguridad.

0:00
-0:00
1x
Dan
Andrew
Michelle
Lauren
Select Speed
1.0×
+
200 words per minute
Home
Library
Get App
Create a free account to unlock:
Requests: Request new book summaries
Bookmarks: Save your favorite books
History: Revisit books later
Recommendations: Get personalized suggestions
Ratings: Rate books & see your ratings
Try Full Access for 7 Days
Listen, bookmark, and more
Compare Features Free Pro
📖 Read Summaries
All summaries are free to read in 40 languages
🎧 Listen to Summaries
Listen to unlimited summaries in 40 languages
❤️ Unlimited Bookmarks
Free users are limited to 10
📜 Unlimited History
Free users are limited to 10
Risk-Free Timeline
Today: Get Instant Access
Listen to full summaries of 73,530 books. That's 12,000+ hours of audio!
Day 4: Trial Reminder
We'll send you a notification that your trial is ending soon.
Day 7: Your subscription begins
You'll be charged on Apr 26,
cancel anytime before.
Consume 2.8x More Books
2.8x more books Listening Reading
Our users love us
100,000+ readers
"...I can 10x the number of books I can read..."
"...exceptionally accurate, engaging, and beautifully presented..."
"...better than any amazon review when I'm making a book-buying decision..."
Save 62%
Yearly
$119.88 $44.99/year
$3.75/mo
Monthly
$9.99/mo
Try Free & Unlock
7 days free, then $44.99/year. Cancel anytime.
Scanner
Find a barcode to scan

Settings
General
Widget
Appearance
Loading...
Black Friday Sale 🎉
$20 off Lifetime Access
$79.99 $59.99
Upgrade Now →