Cover

Hackear al hacker

Hackear al hacker

Aprende de los expertos que derrotan a los hackers

Roger A. Grimes

illustration

Edición original publicada en inglés por John Wiley & Sons, Inc., Indianapolis, Indiana, con el título: Hacking the Hacker: Learn from the Experts Who Take Down Hackers, ISBN 978-1-119-39621-5 © Roger A. Grimes 2017

Título de la edición en español:

Hackear al hacker. Aprende de los expertos que derrotan a los hackers

Primera edición en español, 2018

© 2018 MARCOMBO, S.A.

www.marcombo.com

Diseño de la cubierta: Wiley

Imagen de la cubierta: © CTRd/Getty Images

Traductora: Sònia Llena

Revisor técnico: Pablo Martínez

Correctora: Meritxell Peleato

Directora de producción: Mª Rosa Castillo

«Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta obra solo puede ser realizada con la autorización de sus titulares, salvo excepción prevista por la ley. La presente publicación contiene la opinión del autor y tiene el objetivo de informar de forma precisa y concisa. La elaboración del contenido, aunque se ha trabajado de forma escrupulosa, no puede comportar una responsabilidad específica para el autor ni el editor de los posibles errores o imprecisiones que pudiera contener la presente obra.»

ISBN: 978-84-267-2741-1

Producción del ebook: booqlab.com

 

 

Dedico este libro a mi esposa, Triscia.

Ella es verdaderamente la mujer que hay detrás del hombre,
en todos los sentidos de la palabra.

Sobre el autor

Roger A. Grimes ha estado luchando contra hackers informáticos maliciosos durante tres décadas (desde 1987). Ha obtenido decenas de certificaciones de seguridad informática (entre ellas CISSP, CISA, MCSE, CEH y Security+) y ha superado el durísimo examen Certified Public Accountants (CPA), todo ello a pesar de que no tiene nada que ver con la seguridad informática. Ha organizado y actualizado cursos de seguridad informática, ha sido profesor y ha enseñado a miles de alumnos a hackear o a defenderse. Roger es ponente habitual en congresos nacionales de seguridad informática. Ha sido contratado como profesional para realizar pruebas de intrusión a empresas y a sus sitios web, acciones que jamás le han llevado más de 3 horas. Ha escrito y coescrito 8 libros sobre seguridad informática y cerca de 1.000 artículos de revista. Fue columnista de la revista de seguridad informática InfoWorld (http://www.infoworld.com/blog/security-adviser/) hasta agosto de 2005, y ha trabajado como consultor de seguridad informática a tiempo completo durante más de dos décadas. Actualmente, Roger aconseja a empresas, grandes y pequeñas, de todo el mundo sobre cómo detener a hackers y software maliciosos. Y en todo este tiempo y con esta experiencia, ha aprendido que los hackers más malévolos no son tan inteligentes como gran parte de la gente cree y que no son, sin duda alguna, tan inteligentes como la mayoría de los defensores.

Agradecimientos

Quiero agradecer a Jim Minatel por dar luz verde a este libro, que ha estado en mi cabeza durante 10 años, y a Kelly Talbot por ser el mejor editor que he tenido en mis 15 años como escritor. Kelly es maravilloso solucionando problemas sin cambiar la voz. Quiero agradecer a Microsoft, mi patrono durante más de 10 años, por ser la mejor compañía en la que he trabajado y empujarnos a reconocer que la diversidad genera la fuerza. Quiero dar las gracias a Bruce Schneier por ser mi mentor no oficial, y el de otras personas en la industria. Felicitaciones a Brian Krebs por sus excelentes informes de investigación y por haber puesto al descubierto el gran negocio en el que se ha convertido el cibercrimen. Gracias a Ross Greenberg, Bill Cheswick y otros muchos autores, que han escrito de un modo tan interesante sobre seguridad informática, que han hecho que yo también me dedicara a ello. Por último, yo no sería quien soy ahora sin mi hermano gemelo, Richard Grimes, el mejor escritor de la familia, quien hace 20 años me animó a escribir. A todos los que forman parte de nuestra industria, gracias por vuestra ayuda en nombre de todos nosotros.

Sumario

Prólogo

Introducción

1 ¿Qué tipo de hacker eres tú?

2 Cómo hackean los hackers

3 Perfil: Bruce Schneier

4 Ingeniería social

5 Perfil: Kevin Mitnick

6 Vulnerabilidades de software

7 Perfil: Michael Howard

8 Perfil: Gary McGraw

9 Malware

10 Perfil: Susan Bradley

11 Perfil: Mark Russinovich

12 Criptografía

13 Perfil: Martin Hellman

14 Detección de intrusiones/APT

15 Perfil: Dra. Dorothy E. Denning

16 Perfil: Michael Dubinsky

17 Cortafuegos

18 Perfil: William Cheswick

19 Honeypots

20 Perfil: Lance Spitzner

21 Hackear contraseñas

22 Perfil: Dr. Cormac Herley

23 Hackeo inalámbrico

24 Perfil: Thomas d’Otreppe de Bouvette

25 Pruebas de intrusión

26 Perfil: Aaron Higbee

27 Perfil: Benild Joseph

28 Ataques DDoS

29 Perfil: Brian Krebs

30 Sistemas operativos seguros

31 Perfil: Joanna Rutkowska

32 Perfil: Aaron Margosis

33 Ataques de red

34 Perfil: Laura Chappell

35 Hackear el IoT

36 Perfil: Dr. Charlie Miller

37 Políticas y estrategias

38 Perfil: Jing de Jong-Chen

39 Modelado de amenazas

40 Perfil: Adam Shostack

41 Educar en seguridad informática

42 Perfil: Stephen Northcutt

43 Privacidad

44 Perfil: Eva Galperin

45 Patching

46 Perfil: Window Snyder

47 Escribir como un profesional

48 Perfil: Fahmida Y. Rashid

49 Guía para padres de jóvenes hackers

50 Código ético de los hackers

Prólogo

Roger Grimes ha trabajado en el campo de la seguridad informática durante casi tres décadas y yo he tenido el placer de conocerlo prácticamente la mitad de este tiempo. Es uno de los pocos profesionales selectos que he conocido que llevan claramente la seguridad en sus venas —una comprensión intuitiva del tema que, junto a su larga experiencia atrapando a los malos y erradicando debilidades en defensas de seguridad, lo hace especialmente cualificado para escribir este libro.

Roger empezó escribiendo para InfoWorld, en 2005, cuando nos envió un correo electrónico en el que criticaba el trabajo de un escritor de seguridad; una crítica que tuvo tanto peso, que inmediatamente le pedimos que colaborara en nuestra publicación. Desde entonces, ha escrito centenares de artículos para InfoWorld, todos ellos demuestran pasión por el tema, así como una comprensión psicológica tanto de los hackers maliciosos como de las personas que luchan contra ellos. En su columna semanal en InfoWorld, titulada «Security Adviser», Roger muestra un talento único para centrarse en cuestiones importantes, en lugar de perseguir amenazas efímeras o nuevas tecnologías sobrevaloradas. Su pasión por convencer a los defensores de la seguridad y a sus jefes de C-suite para que hagan lo correcto ha sido firme, a pesar de la desafortunada inclinación de muchas organizaciones por descuidar los conceptos básicos y acudir en masa a una nueva y brillante solución.

En este libro, Roger identifica a los hackers éticos de esta industria que han marcado la diferencia. Sus incansables esfuerzos ayudan a mantener a raya a un creciente grupo de atacantes cuyos objetivos han pasado a lo largo de los años de las travesuras destructivas al robo constante de propiedades intelectuales y millones de dólares de las instituciones financieras y sus clientes. A todos estos hackers éticos, les debemos mucho. Proporcionando un foro para gente como Brian Krebs, la Dra. Dorothy Denning y Bruce Schneier, Roger rinde homenaje a sus esfuerzos y ofrece un compendio fascinante que entretiene y, a la vez, informa. Se trata de una lectura esencial para todos aquellos interesados en seguridad informática y para los que luchan contra viento y marea para mantenernos a salvo.

Eric Knorr
Jefe de redacción de la revista InfoWorld

Introducción

L a intención de este libro es homenajear el mundo de los defensores de la seguridad informática mediante el perfil de algunos de los mejores hackers de sombrero blanco, defensores, protectores de la privacidad, maestros y escritores. Espero que terminéis apreciando mucho más el esfuerzo que realizan «entre bambalinas» para darnos este fantástico mundo de ordenadores en el que vivimos. Sin toda esta buena gente de nuestro lado luchando contra aquellos que quieren hacernos daño, ni ordenadores, ni Internet, ni nada de lo que está conectado sería posible. Este libro es un homenaje a los defensores.

Quiero animar a todos aquellos que quieren realizar una carrera en informática a que consideren la posibilidad de llevar a cabo una carrera en seguridad informática. También quiero alentar a todos los hackers en ciernes, especialmente a aquellos que podrían tener dificultades con la parte ética de su conocimiento, a seguir una carrera en seguridad informática. He pasado mucho tiempo luchando contra hackers maliciosos y contra sus obras de software malicioso. He podido explorar todos y cada uno de mis intereses en hackear que he tenido de un modo ético y legal. Igual que han hecho miles de otros. En cualquier país, la seguridad informática es una de las profesiones más populares y mejor pagadas. Esto ha sido muy bueno para mí, y también puede serlo para ti.

Ocupando la mayor parte de este libro, he incluido un capítulo que resume cómo se consigue un estilo particular de hackeo y, a continuación, describo uno o más perfiles de defensores de la seguridad informática elogiados en ese campo. He intentado seleccionar varias leyendas representativas de la industria, expertas e, incluso, algunas relativamente desconocidas, que son brillantes por lo que han logrado, aunque desconocidos fuera de su sector. He intentado realizar una buena selección de académicos, proveedores corporativos, docentes, líderes, escritores y profesionales privados de los Estados Unidos y de todo el mundo. Espero que los lectores interesados en dedicarse a la seguridad informática puedan encontrar la misma motivación que tuve yo para ayudar a hacer la informática extremadamente más segura para todos nosotros.

¡Que tengáis una buena lucha!

1

¿Qué tipo de hacker eres tú?

Hace unos años, me mudé a una casa que tenía un maravilloso garaje adosado. Era perfecto para aparcar y proteger mi bote y mi pequeña autocaravana. Era de construcción sólida, sin nudos en las maderas. La instalación eléctrica era profesional y las ventanas, de alta calidad y preparadas para vientos de 150 mph (241,39 km/h). Gran parte del interior estaba revestido con una aromática madera de cedro rojo, el mismo tipo que usaría un carpintero para revestir un baúl o un ropero para que oliera bien. Aunque yo no sé ni clavar un clavo, fue fácil para mí ver que el constructor sabía bien lo que hacía, cuidaba la calidad y se preocupaba por los detalles.

Unas semanas después de mudarme, vino un agente de policía y me contó que el garaje había sido construido de forma ilegal unos años atrás sin licencia y que tenía que derribarlo o hacer frente a una serie de multas por cada día de incumplimiento. Fuí a la policía para solicitar una dispensa, ya que el garaje estaba construido desde hacía muchos años y me lo habían vendido como parte de la compra de la vivienda. Nada que hacer. Tenía que ser derribado de inmediato. Las multas de un solo día eran más de lo que podía conseguir vendiendo los componentes para chatarra si lo derribaba con cuidado. Financieramente hablando, cuanto antes lo derribara y lo hiciera desaparecer, mejor.

Saqué un mazo de martillo (básicamente, una hacha de hierro gruesa para trabajos de demolición) y en unas horas ya había convertido toda la estructura en un montón de madera y otros residuos de construcción. No me costó comprender que el trabajo que a un artesano cualificado le había costado probablemente semanas, o meses, en construir, yo lo había destruído con mis manos no cualificadas en mucho menos tiempo.

Contrariamente a lo que muchos piensan, el hackeo malicioso tiene más de mazo que de artesano.

Si eres lo suficientemente afortunado para dedicarte al hackeo informático, tendrás que decidir si lo que quieres es proteger los bienes comunes o bien conformarte con objetivos más pequeños. ¿Quieres ser un hacker malo o un defensor justo y poderoso? Este libro es la prueba de que los hackers más inteligentes y mejores trabajan para el lado bueno. Ellos deben ejercitar sus mentes, crecer intelectualmente, y no han de preocuparse por si los arrestan. Trabajan a la vanguardia de la seguridad informática, se ganan la admiración de sus compañeros, promueven el avance humano en nombre de lo bueno y son recompensados económicamente por ello. Este libro trata sobre héroes a veces desconocidos que hacen posible nuestras increíbles vidas digitales.

NOTA Aunque los términos hacker o hackeo pueden hacer referencia a una persona o actividad con buenas o malas intenciones, el uso popular tiene casi siempre una connotación negativa. Yo he podido descubrir que los hackers pueden ser buenos y malos, pero en este libro utilizo los términos sin calificaciones que impliquen connotaciones negativas o positivas simplemente para ahorrar espacio. Toma el significado completo de las frases para juzgar la intención de los términos.

La mayoría de los hackers no son genios

Desgraciadamente, casi todos los que escriben sobre hackers informáticos criminales sin una experiencia real los idealizan como si fueran seres superinteligentes y míticos, como dioses. Ellos pueden adivinar cualquier contraseña en menos de un minuto (especialmente bajo la amenaza de una pistola, si os creéis todo lo que viene de Hollywood), entrar en cualquier sistema y crackear cualquier secreto encriptado. Trabajan sobre todo por la noche y beben grandes cantidades de bebidas energéticas mientras ensucian sus puestos de trabajo con restos de patatas fritas y cupcakes. Un alumno utiliza la contraseña robada de su profesor para cambiar sus notas y los medios de comunicación lo adulan como si fuera el nuevo Bill Gates o Mark Zuckerberg.

Los hackers no tienen por qué ser brillantes. Yo soy la prueba viviente. A pesar de que he podido entrar en todos los lugares en los que me han contratado para hacerlo, nunca he entendido por completo la física cuántica o la teoría de la relatividad. Suspendí dos veces inglés en el instituto, no he sacado nunca más de un Bien en matemáticas y mi promedio de notas del primer semestre en la universidad fue un 0,62: 5 Insuficientes y 1 Sobresaliente. El único Sobresaliente fue en natación, porque había sido vigilante de playa durante 5 años. Mis malas notas no eran solo porque no me esforzara. Simplemente no era tan inteligente y no me esforzaba. Más tarde aprendí que estudiar y trabajar duro suele ser más valioso que haber nacido inteligente. Terminé acabando mi carrera universitaria y sobresaliendo en el mundo de la seguridad informática.

Aun así, incluso cuando a los hackers malos los escritores no los llaman superinteligentes, los lectores suelen asumir que lo son porque siempre se muestran practicando algún tipo de magia negra avanzada que el resto del mundo no conocemos. En la psique colectiva mundial, es como si «hacker malicioso» y «superinteligencia» deban ir siempre juntos. Y esto no es así. Unos cuantos son inteligentes, la mayoría son normales y algunos no son demasiado brillantes, como el resto del mundo. Los hackers simplemente conocen datos y procesos que el resto de la gente ignora, como un carpintero, un fontanero o un electricista.

Los defensores son más que hackers

Si hacemos una comparación intelectual, como promedio, los defensores son más inteligentes que los atacantes. Un defensor debe saber todo lo que sabe un hacker malicioso y, además, cómo detener el ataque. Y esa defensa no funcionará a menos que casi no requiera participación del usuario final, trabaje de forma silenciosa entre bambalinas y lo haga siempre a la perfección (o casi). Muéstrame un hacker malicioso con una técnica particular y yo te mostraré múltiples defensores que son mejores y más inteligentes. Lo que ocurre es que el atacante normalmente recibe más portadas. Este libro contiene argumentos para un tratamiento más equilibrado.

Los hackers son especiales

Aunque yo no clasifico a todos los hackers como superinteligentes, buenos o malos, todos ellos comparten una serie de características. Una de estas características que tienen en común es una gran curiosidad intelectual y el deseo de probar cosas fuera de la interfaz y los límites proporcionados. No tienen miedo a hacerlo a su manera. Los hackers informáticos suelen ser hackers de la vida, que hackean todo tipo de cosas más allá de los ordenadores. Hay gente que, cuando llega al control de seguridad de un aeropuerto, ya está pensando en cómo podría colar un arma por los detectores, aunque no tenga ninguna intención de hacerlo. Gente que piensa si las entradas tan caras de un concierto se podrían falsificar fácilmente, aunque no tenga ninguna intención de entrar gratis. Gente que cuando compra un televisor, se pregunta si podrá acceder a su sistema operativo para conseguir alguna ventaja. Muéstrame un hacker y yo te mostraré a alguien que siempre está cuestionando el status quo e investigando.

NOTA Mi hipotético esquema para colar armas por el control de seguridad del aeropuerto pasa por utilizar sillas de ruedas y esconder las armas y los explosivos dentro de las partes de metal. Las sillas de ruedas normalmente pasan por los controles de seguridad de los aeropuertos sin ser sometidas a fuertes registros.

Los hackers son persistentes

Después de la curiosidad, la característica más útil de un hacker es la persistencia. Todos los hackers, sean buenos o malos, conocen la agonía de pasar horas y horas intentando una y otra vez que algo funcione. Los hackers maliciosos buscan debilidades en las defensas. Un error del defensor hace toda la defensa más débil. Un defensor debe ser perfecto. Todos los ordenadores y los programas informáticos deben ser parcheados, toda configuración, adecuadamente segura, y todo usuario final debe estar perfectamente capacitado. O, al menos, este es el objetivo. El defensor sabe que las defensas aplicadas no siempre funcionan o que no son aplicadas como deberían, por lo que crea niveles de «defensa en diferentes profundidades». Tanto los hackers maliciosos como los defensores buscan las debilidades, aunque desde lados opuestos del sistema. Ambas partes participan en una guerra en curso con distintas batallas, ganadores y vencidos. La parte más persistente será quien gane la guerra.

Los sombreros de los hackers

Yo he sido hacker toda mi vida. Me han pagado para acceder a sitios (tenía autorización legal para hacerlo). He crackeado contraseñas, me he introducido en redes de trabajo y he desarrollado malware. En ningún momento he incumplido la ley ni cruzado los límites éticos. Esto no significa que no haya habido gente que me haya tentado a hacerlo. Durante estos años, he tenido amigos que me han pedido que entrara en los chats sospechosos del teléfono móvil de su esposa, jefes que me han pedido que accediera al correo electrónico de su superior o gente que me ha pedido que irrumpiera en el servidor de un hacker malo (sin autorización judicial) para intentar evitar que continuara hackeando. Cuando empiezas, tienes que decidir quién eres y cuál es tu ética. Yo decidí que sería un hacker bueno (un hacker «de sombrero blanco»), y los hackers de sombrero blanco no hacen cosas ilegales ni no éticas.

Los hackers que participan habitualmente en actividades ilegales y no éticas se denominan «de sombrero negro». Los hackers que actúan como un sombrero blanco pero que, a escondidas, realizan actividades de sombrero negro se conocen como «de sombrero gris». Mi código moral es binario en este tema. Los hackers de sombrero gris son hackers de sombrero negro. O haces cosas ilegales o no las haces. Si robas un banco serás un ladrón, hagas lo que hagas con el dinero.

Esto no significa que los hackers de sombrero negro no puedan convertirse en hackers de sombrero blanco. Esto siempre ocurre. La pregunta para algunos de ellos es si podrán convertirse en hackers de sombrero blanco antes de pasar un tiempo sustancial en prisión. Kevin Mitnick (https://es.wikipedia.org/wiki/Kevin_Mitnick), uno de los hackers detenidos más conocidos de la historia (y presentado en el Capítulo 5), vive actualmente como defensor ayudando al bien común. Robert T. Morris, el primero en programar y lanzar un gusano que tumbó Internet (https://es.wikipedia.org/wiki/Robert_Tappan_Morris), finalmente fue galardonado como miembro de la Association for Computing Machinery (http://awards.acm.org/award_winners/morris_4169967.cfm) «por sus contribuciones en redes de ordenadores, sistemas distribuidos y sistemas operativos».

Al principio, el límite entre el hackeo legal e ilegal no estaba tan claramente definido como ahora. De hecho, a la mayoría de los primeros hackers ilegales se les dio un estado de culto de superhéroe. Incluso no puedo evitar sentirme atraído por alguno de ellos. John Draper (también conocido como Captain Crunch) utilizó un silbato de juguete que se distribuía en las cajas de los cereales Cap’n Crunch para generar un tono (2.600 Hz) que podía servir para realizar llamadas telefónicas de larga distancia gratis. Muchos de los hackers que han puesto al descubierto información privada para «una buena causa» han sido aplaudidos. Sin embargo, con pocas excepciones, yo no he adoptado nunca una visión idealizada de los hackers maliciosos. Siempre he sido de la opinión que la gente que hace cosas sin autorización en ordenadores e información de otras personas está cometiendo actos criminales.

Hace años, cuando empecé a interesarme por los ordenadores, leí un libro titulado Hackers: Heroes of the Computer Revolution [ Hackers: héroes de la revolución informática], de Steven Levy. En la era adulta de los ordenadores personales, Levy escribió una entretenida historia de hackers, buenos y malos, que incorpora el ethos del hacker. La mayor parte del libro está dedicada a gente que mejora el mundo mediante el uso de ordenadores, pero también habla de aquellos hackers que hoy en día serían arrestados por sus actividades. Algunos de estos hackers creían que el fin justifica los medios y siguieron una serie de reglas morales enmarcadas en algo que Levy llamó «ética hacker ». Las más importantes de estas creencias eran que se puede acceder a cualquier ordenador cuando se tiene una razón legítima, que toda la información debería ser libre y que hay que desconfiar de las autoridades. Era una visión romántica del hackeo y de los hackers, aunque no ocultaba los cuestionables problemas éticos y legales. De hecho, se centró en los nuevos límites emergentes.

Steven Levy fue el primer autor al que le envié una copia de mi libro y le pedí que me lo devolviera firmado (algo que otros me han hecho a mí, que he escrito 8 libros). Levy ahora es escritor, se ha convertido en editor técnico para distintas revistas, entre ellas Newsweek, Wired y Rolling Stone, y ha escrito 6 libros sobre temas de seguridad informática. Actualmente, Levy sigue siendo un importante escritor de tecnología. Su libro Hackers me introdujo en el maravilloso mundo del hackeo en general.

Más tarde, otros libros, como Flu-Shot [Vacuna contra la gripe], de Ross Greenberg (descatalogado desde hace tiempo), y Computer Viruses, Worms, Data Diddlers, Killer Programs, and Other Threats to Your System [Virus informáticos, gusanos, corruptores de datos, programas asesinos y otras amenazas para tu sistema] de John McAfee, me hicieron empezar a luchar contra los hackers maliciosos. Al leerlos me emocioné lo suficiente como para dedicarme de por vida a combatir las mismas amenazas.

En todo este tiempo, he aprendido que los defensores son los hackers más inteligentes. No quiero pintar a todos los hackers maliciosos con el mismo toque de mediocridad. Cada año surgen hackers deshonestos que descubren cosas nuevas. Existen muy pocos hackers inteligentes. La amplia mayoría de hackers maliciosos simplemente repiten algo que funciona desde hace 20 años. Para ser honestos, la media de los hackers maliciosos no tiene el suficiente talento de programación como para escribir una simple aplicación de texto, y mucho menos para descubrir ellos solos cómo acceder a algún sitio, descifrar códigos encriptados o adivinar con éxito contraseñas —no sin mucha ayuda por parte de otros hackers que años antes ya habían realizado el verdadero trabajo intelectual.

Lo irónico es que toda la gente superinteligente que conozco del mundo informático no son hackers maliciosos, sino defensores. Ellos tienen que saber todo lo que hacen los hackers, adivinar lo que harán en un futuro y crear una defensa intuitiva y fácil contra todos ellos. El mundo de los defensores está lleno de doctores, estudiantes de máster y empresarios con éxito. Los hackers pocas veces me impresionan. Los defensores siempre lo hacen.

Es normal que los defensores descubran nuevas formas de hackear sin que nadie lo sepa. La tarea de los defensores es defender, y dar a los hackers maliciosos nuevas maneras de hackear algo antes de que las defensas estén en su sitio no facilita la vida a nadie. La forma de ganarse la vida de los defensores es descubrir un nuevo hackeo y ayudar a cerrar el agujero antes de que sea descubierto por el mundo exterior. Esto ocurre muchas más veces que al contrario (es decir, que el hacker externo descubra un nuevo agujero).

He visto más de una vez defensores que descubren un nuevo hackeo y, por razones de eficiencia de costes o de tiempo, el agujero no se soluciona de inmediato y, más tarde, un hacker externo se acredita como «descubridor». Desafortunadamente, los defensores no siempre obtienen la gloria y los agradecimientos inmediatos cuando realizan su trabajo diario.

Después de observar con atención tanto a hackers maliciosos como a defensores durante casi tres décadas, tengo claro que los defensores son los más impresionantes de los dos. Y con diferencia. Si quieres demostrar a alguien lo bueno que eres en informática, no le muestres un nuevo hackeo. Muéstrale una nueva y mejor defensa. Encontrar una nueva forma de hackear no requiere inteligencia. Simplemente requiere persistencia. Y se necesitan personas especiales e inteligentes para construir algo capaz de soportar hackeos constantes durante largos periodos de tiempo.

Si quieres impresionar al mundo, no derribes el garaje. En lugar de eso, crea un código que pueda soportar el hacha matadora del hacker.

2

Cómo hackean los hackers

La actividad profesional más agradable que hago es la prueba de intrusión (también conocida como pen testing). La prueba de intrusión es hackear en el sentido más estricto de la palabra. Es un humano contra una máquina en una batalla de ingenio. El «atacante» humano puede utilizar su propio ingenio y herramientas nuevas o existentes mientras busca debilidades, basadas ya sea en una máquina o en un humano. En todos los años que llevo de pruebas de intrusión, a pesar de que normalmente necesito semanas para realizar una prueba, la mayoría de las veces he hackeado con éxito mi objetivo en aproximadamente 1 hora. El mayor tiempo que he necesitado han sido 3 horas. Esto incluye bancos, sitios de Gobiernos, hospitales y sitios corporativos que me han contratado para hacerlo.

Y tampoco soy tan bueno como pentester. En una escala del 1 al 10, en la que un 10 es el mejor, yo estoy sobre el 6 o el 7. En el lado de los defensores, me siento el mejor del mundo. Pero como atacante, soy bastante normal. He estado rodeado por impresionantes pentesters —hombres y mujeres que solo piensan en crear sus propias herramientas para pruebas o que no consideran sus pruebas un éxito a menos que no generen un evento en un archivo de registro que podría haber causado una alerta—. Pero incluso la gente a quien yo considero un 10 se considera ella misma normal y admira a otros pentesters de los cuales piensa que son dieces. ¿Cómo deben ser de buenos esos hackers?

Sin embargo, no tienes que ser extremadamente bueno para ser un hacker de éxito. Incluso no tienes que entrar en la red del cliente que te ha contratado (asumo que te pagan de forma legal para la prueba de intrusión) para estar satisfecho con tu trabajo. De hecho, tu cliente estaría completamente emocionado si no tuvieras éxito. Podrían jactarse de que han contratado a un hacker y su red ha resistido el ataque. Todos salen ganando. A ti te pagarán lo mismo y ellos presumirán de ser impenetrables. Este es el único trabajo que conozco en el cual no puedes tener un mal resultado. Desgraciadamente, no conozco a ningún pentester que nunca haya entrado con éxito en todos sus objetivos. Estoy seguro de que existen hackers que fallan, pero la amplia mayoría de los pentester «consiguen su premio».

NOTA Si tu prueba de intrusión no encuentra ninguna debilidad y poco después tu cliente es asaltado por atacantes reales, no quedarás bien. Si esto ocurre muchas veces, correrá la voz y probablemente tendrás que buscar otro empleo. Las debilidades están ahí. Encuéntralas.

Los pentesters suelen hacer cosas extra para impresionar a los altos directivos de su objetivo, como sacar una foto clandestina del CEO en su mesa de trabajo o incrustar la contraseña del administrador del dominio en la imagen de una bandera pirata que aparece en el salvapantallas del administrador de seguridad. Una imagen vale más que mil palabras. Nunca subestimes lo que una imagen tonta puede hacer crecer la satisfacción de tu cliente con tu trabajo. Hablarán de la foto (y presumirán de ti) años después de que hayas acabado tu trabajo. Si puedes, termina siempre el pastel con una guinda. Con esta recomendación, quedarás como «un consultor de oro».

El secreto de hackear

Si existe algún secreto sobre cómo hackean los hackers, es que no hay ningún secreto de cómo lo hacen. Es un proceso de aprendizaje de los métodos correctos y del uso de las herramientas adecuadas para el trabajo, exactamente como un electricista, un fontanero o un constructor. Tampoco hay una única manera de hacerlo. Sin embargo, sí que hay un conjunto definido de pasos que describe el proceso más amplio y global, y que incluye todos los pasos que un hacker debería llevar a cabo. No todos los hackers utilizan todos los pasos, pero en general, si los sigues todos, es probable que tengas mucho éxito hackeando. Puedes saltarte uno o más de estos pasos y continuar siendo un hacker de éxito. El software malicioso y otras herramientas para hackear, a menudo, permiten a los hackers saltarse pasos, pero como mínimo uno de estos pasos, el punto de intrusión inicial, siempre es obligatorio.

Independientemente de si te vas a dedicar a ser hacker (legal), si vas a luchar contra hackers maliciosos, tienes que entender la «metodología del hackeo» o como lo llame la persona o el documento que la describe. Los modelos pueden variar, así como el número de pasos incluidos, el nombre de los pasos y los detalles específicos de cada paso, pero todos ellos contienen los mismos componentes básicos.

La metodología del hackeo

La metodología del hackeo contiene, en este orden, los siguientes pasos:

1. Recopilación de información

2. Intrusión

3. Opcional: Garantía de un acceso futuro más fácil

4. Reconocimiento interno

5. Opcional: Movimiento

6. Ejecución de la acción prevista

7. Opcional: Borrado de pistas

Recopilación de información

A menos que una herramienta de hacker lo esté ayudando a acceder de forma aleatoria a cualquier sitio vulnerable posible, el hacker suele tener un objetivo en mente. Si un hacker quiere introducirse en una empresa determinada, lo primero que debe hacer es investigar todo cuanto pueda acerca de la empresa que lo ayude a entrar. Como mínimo, esto significa direcciones IP accesibles, direcciones de correo electrónico y nombres de dominios. El hacker descubre a cuántos sitios y servicios potenciales puede acceder que están conectados con la empresa. Utiliza los medios de comunicación y los informes financieros públicos para averiguar quiénes son los altos cargos o para encontrar otros nombres de empleados para ingeniería social. El hacker busca noticias para ver qué software nuevo ha comprado el objetivo recientemente, qué fusiones o separaciones se están produciendo (estos son siempre asuntos confusos y acompañados a menudo por una relajación o pérdida de la seguridad) y con qué socios interactúa. Muchas empresas se han visto afectadas a través de un socio mucho más débil.

Averiguar a qué activos digitales está conectada una empresa es la parte más importante de la recopilación de información en la mayoría de los ataques de hackers. No solo son los sitios y servicios principales (públicos) lo que normalmente se identifica, sino que para el atacante suele ser más útil localizar los sitios y servicios conectados menos populares, como portales de empleados y socios. Los sitios y servidores menos populares son más propensos a tener alguna debilidad en comparación con los sitios principales, con los cuales ya se ha luchado durante años.

Todo buen hacker empieza recopilando todos los programas informáticos y los servicios alojados en cada uno de estos sitios, un proceso generalmente conocido como fingerprinting. Es muy importante saber qué sistemas operativos (OS) se utilizan y en qué versiones. Las versiones del sistema operativo pueden indicar a un hacker qué nivel de parches y qué errores de software existen o no existen. Por ejemplo, puede encontrarse con Windows Server 2012 R2 y Linux Centos 7.3-1611. Después, busca programas informáticos y las versiones de estos programas (por la misma razón) que se ejecutan en cada sistema operativo. Si se trata de un servidor web, podrá encontrarse con Internet Information Server 8.5 en el servidor de Windows y Apache 2.4.25 en el de Linux. Realiza un inventario de cada dispositivo, sistema operativo, aplicación y versión ejecutados en cada uno de sus objetivos previstos. Siempre es mejor hacer un inventario completo para obtener una imagen global del objetivo, pero otras veces el hacker puede encontrar una gran vulnerabilidad muy pronto y simplemente saltar al paso siguiente. A menos que encuentre una vulnerabilidad tan rápido, cuanta más información tenga acerca de lo que se está ejecutando, mejor. Cada programa informático y versión adicional proporciona posibles vectores de ataque adicionales.

NOTA Algunos hackers denominan la recopilación de información general y no técnica footprinting y el mapeado del sistema operativo y los programas informáticos, fingerprinting.

A veces, cuando un hacker se conecta a un servicio o sitio, este responde amablemente con información de versión muy detallada, por lo que no se necesita ninguna herramienta. Cuando esto no es así, existen muchas herramientas de ayuda para el fingerprinting del sistema operativo y las aplicaciones. De lejos, el número uno de las herramientas de fingerprinting utilizadas por hackers es Nmap (https://nmap.org/). Nmap se utiliza desde 1997. Se presenta en múltiples versiones, incluyendo Windows y Linux, y es como la navaja suiza para el hacker. Puede llevar a cabo todo tipo de pruebas y escaneos de servidores y es un excelente fingerprinter de sistemas operativos y una buena aplicación de este tipo. Existen mejores aplicaciones fingerprinters, especialmente aquellas que están centradas en un tipo determinado de fingerprinting, como servidores web, bases de datos o servidores de correo electrónico. Por ejemplo, Nikto2 (https://cirt.net/Nikto2) no solo realiza el fingerprint de servidores web mejor que Nmap, sino que además lleva a cabo miles de pruebas de intrusión y permite conocer las vulnerabilidades existentes.

Intrusión

Este es el paso que da nombre al hacker, (N. del T.: en inglés, to hack significa obtener acceso de forma ilegal). El éxito de este paso es crucial para todo el ciclo. Si el hacker ha hecho sus deberes en la etapa del fingerprinting, esta etapa realmente no es difícil. De hecho, yo siempre la he superado. Siempre hay software antiguo, cosas sin parchear e, incluso, algo mal configurado en la recopilación de software identificado.

NOTA Uno de mis trucos favoritos es atacar el software y los dispositivos que los defensores utilizan para defender sus redes. A menudo, estos dispositivos se denominan aparatos (appliances), que es simplemente otra forma de designar un ordenador con software difícil de actualizar. Estos aparatos son conocidos por estar años sin sin que se les apliquen parches.

Si, afortunadamente, todo el software y los dispositivos son perfectamente seguros (y nunca lo son), puedes atacar al elemento humano, que es siempre la parte más débil de la ecuación. Pero sin la intrusión inicial, el hacker lo tiene todo perdido. Afortunadamente para él, hay muchas maneras de entrar en el objetivo. Estas son las diferentes técnicas que un hacker puede utilizar para ello:

Ataque de día cero

Software sin parche

Software malicioso o malware

Ingeniería social

Problemas con contraseñas

Ataque de intermediario/MitM

Fuga de información

Configuración errónea

Ataque de denegación de servicio

Información privilegiada/socio/asesor/proveedor/terceras partes

Error de usuario

Acceso físico

Escalada de privilegios

Ataque de día cero Los ataques (exploits) de día cero no son tan frecuentes como las vulnerabilidades habituales, que los proveedores normalmente ya han parcheado hace tiempo. Un ataque de día cero es aquel para el cual el software objetivo todavía no ha sido parcheado y la gente (y normalmente el proveedor) lo desconocen. Cualquier sistema informático que utilice un software con un error de día cero es esencialmente explotable a voluntad, a menos que la víctima potencial desinstale el software o haya colocado en su lugar algún tipo de solución (por ejemplo, un cortafuegos, una lista de control de acceso [ACL], segmentación de VLAN, software antidesbordamiento de búfer, entre otros).

Los ataques de día cero son vulnerabilidades menos conocidas que las habituales, dado que no pueden ser ampliamente utilizadas por un atacante. Si un atacante lleva a cabo un ataque de día cero, el valioso agujero será descubierto y parcheado por los fabricantes y colocado en firmas antimalware. Actualmente, la mayoría de los fabricantes pueden parchear nuevas explotaciones en unas horas o hasta pocos días después de su descubrimiento. Cuando se lanza un ataque de día cero, o bien se utiliza contra muchos objetivos al mismo tiempo para una mayor posibilidad de explotación o bien «a fuego lento», que significa con moderación, a veces y solo cuando se necesita. Los mejores hackers profesionales del mundo suelen tener colecciones de ataques de día cero que solo utilizan cuando todo lo demás falla, y de tal forma que pasen totalmente desapercibidos. Un ataque de día cero debe utilizarse para conseguir un acceso inicial a un objetivo especialmente resistente; después, todas las pistas deberán ser eliminadas y, a partir de ese punto, se utilizarán métodos más tradicionales.

Software sin parchear El software sin parchear es siempre una de las razones más frecuentes por las que un ordenador o un dispositivo es explotado. Cada año, hay miles (normalmente, entre 5.000 y 6.000, o 15 al día) de nuevas vulnerabilidades anunciadas públicamente entre todo el software más utilizado. (Echa un vistazo a las estadísticas reportadas en cada edición de Microsoft Security Intelligence Report, http://microsoft.com/sir.) Por lo general, los fabricantes han mejorado en el desarrollo de código más seguro y la localización de sus propios errores; sin embargo, existe un número cada vez más elevado de programas y billones de líneas de código, por lo que el número total de errores se ha estabilizado relativamente durante las dos décadas anteriores.

La mayoría de los fabricantes realizan un buen trabajo parcheando sus programas de una manera oportuna, especialmente después de que una vulnerabilidad se haga pública. Desgraciadamente, los clientes tardan mucho en aplicar sus parches, llegan incluso a desactivar las rutinas automáticas de aplicación de parches establecidas por el fabricante. Un porcentaje moderado de usuarios no parchean nunca su sistema. Hay quien ignora las múltiples advertencias sobre parches y simplemente le aburren o desconoce que un parche deba aplicarse. (Por ejemplo, muchos sistemas de puntos de venta no notifican al cajero que es preciso aplicar un parche). La mayoría de los ataques de software ocurren contra programas que no han sido parcheados en muchos, muchos años.

Aunque una empresa concreta o un usuario parchee una vulnerabilidad crítica en cuanto esta se anuncia, un hacker paciente y persistente puede esperar a que se anuncie dicho parche, que está en el inventario de fingerprint de su objetivo, y lanzar el correspondiente ataque antes de que el defensor tenga tiempo de parchearlo. (Es relativamente fácil para un hacker hacer ingeniería inversa de un parche y descubrir cómo explotar una vulnerabilidad en concreto).

Tanto los ataques de día cero como las vulnerabilidades de software normales se explican por prácticas de codificación de software inseguras. Las vulnerabilidades de software serán tratadas en el Capítulo 6.

Software malicioso o malware Los programas maliciosos se conocen como malware y los tipos tradicionales más conocidos son los virus, los troyanos y los gusanos, aunque el malware actual suele ser una mezcla de varios tipos. El malware permite al hacker utilizar un método de explotación para atacar más fácilmente a sus víctimas o llegar a un mayor número de víctimas de forma más rápida. Cuando se descubre un nuevo método de explotación, los defensores saben que los desarrolladores de malware utilizarán malware automatizado para difundir la explotación más rápidamente en un proceso denominado weaponization. Aunque las explotaciones son algo que debería evitarse, suele ser la weaponization de la explotación lo que genera un mayor riesgo para el usuario final y la sociedad. Sin malware, un atacante está obligado a implementar un ataque contra una víctima a la vez. Con malware, millones de víctimas pueden ser explotadas en cuestión de minutos. El malware será tratado con más detalle en el Capítulo 9.

Ingeniería social Una de las estrategias de hackeo más exitosas es la ingeniería social. La ingeniería social, ya sea llevada a cabo manualmente por un adversario humano o mediante un método automatizado, es un truco de hackers que consiste en engañar a un usuario final para que haga algo perjudicial para su propio ordenador o seguridad. Puede ser un correo electrónico que engaña al usuario para que haga clic sobre un vínculo web malicioso o que ejecute un archivo adjunto falso. También puede ser algo o alguien que engaña a un usuario para que revele su información privada de acceso (truco conocido como phishing). La ingeniería social ha sido muy frecuente en los ataques perpetrados por hackers. El que fue durante mucho tiempo hacker de sombrero blanco, Kevin Mitnick, solía ser uno de los mejores ejemplos de ingenieros sociales maliciosos. El perfil de Mitnick se muestra en el Capítulo 5, mientras que la ingeniería social se trata más detalladamente en el Capítulo 4.

Problemas con contraseñas Las contraseñas o sus derivaciones almacenadas internamente pueden ser descifradas o robadas. Durante mucho tiempo, adivinar contraseñas (o la ingeniería social) era uno de los métodos más populares para conseguir el acceso inicial a un sistema informático o una red, y lo sigue siendo. Sin embargo, el robo de credenciales y su reutilización (como los ataques pass-the-hash) ha entrado por la puerta grande en el campo del hackeo de contraseñas en la última media década. Mediante el robo de contraseñas, el atacante normalmente consigue el acceso administrativo a un ordenador o dispositivo y recupera una o más credenciales de inicio de sesión almacenadas en el sistema (ya sea en memoria o en el disco duro). Las credenciales robadas se utilizan después para acceder a otros sistemas que aceptan los mismos datos de inicio de sesión. Casi todos los grandes ataques corporativos han tenido el robo de credenciales como componente de explotación común, tanto es así que la técnica del descifrado de contraseñas ya no se utiliza tanto. El hackeo de contraseñas se tratará en el Capítulo 21.

Ataque de intermediario/MitM El ataque de intermediario o de Man-in-the-Middle (MitM) pone en peligro una conexión de red legítima para obtener acceso a las comunicaciones o participar de ellas maliciosamente. La mayoría de los ataques de intermediario ocurren por fallos de red o de protocolos de aplicación, aunque también pueden llevarse a cabo por un error humano. Actualmente, los ataques de intermediario se producen en redes inalámbricas. Los ataques a redes se tratarán en el Capítulo 33 y los ataques inalámbricos, en el Capítulo 23.

Fugas de información La fuga de información privada puede ser el resultado de una de las formas de hackeo existentes o bien de una acción humana no intencionada (o intencionada). La mayor parte de las fugas de información ocurren a causa de una ubicación descuidada de la misma (y con poca protección) o porque algún hacker ha descubierto el modo de acceder a datos que eran privados. No obstante, los ataques internos, donde un empleado o empresario roba o utiliza de forma intencionada información privada, también es una forma común de hackeo. Muchos de los capítulos de este libro tratan sobre la prevención de las fugas de información.

Configuración errónea También resulta común para usuarios y administradores de ordenadores implementar (a veces sin saberlo) opciones de seguridad muy débiles. No sabría decir cuántas veces he ido a un sitio web público y he encontrado que la mayoría de los archivos críticos estaban marcados con permisos del grupo Todo o Público —y estos permisos son exactamente lo que parecen—. Y cuando se permite a todo el mundo acceder a todos los archivos que desee, tu sitio o los archivos almacenados en él dejarán de ser privados en poco tiempo. La seguridad en sistemas operativos y configuraciones se tratará en el Capítulo 30.

Ataque de denegación de servicio Incluso si no hay nadie que haya cometido un error o que haya dejado una pequeña parte de un software sin parchear, todavía es posible hacer caer de Internet casi cualquier sitio web o cualquier ordenador. Aunque tú seas perfecto, tus ordenadores dependen de uno o más servicios que no lo son, que tú no controlas. Hoy en día, los grandes ataques de denegación de servicio distribuido (DDoS) pueden hacer caer o perjudicar de forma importante casi cualquier sitio web u ordenador contectado a Internet. Estos ataques suelen contener miles de millones de paquetes por segundo, lo que sobrecarga el objetivo (o sus vecinos de origen o destino). Existen decenas de servicios comerciales (a veces ilegales) que cualquiera puede utilizar tanto para causar un enorme ataque DDoS como para defenderse de él. Los ataques DDoS se tratarán en el Capítulo 28.

Información privilegiada/socio/asesor/proveedor/terceros Incluso si toda tu red y todos sus ordenadores están perfectos (que no lo están), puede ocurrir un fallo en un ordenador conectado de un socio o de un empleado interno. Esta categoría es muy amplia e implica varios de los métodos de hackers.

Error de usuario Esta categoría de intrusión también implica varios métodos de hackeo. Por ejemplo, un usuario puede enviar de forma accidental información privada a un usuario no autorizado simplemente introduciendo un carácter mal escrito en una dirección de correo electrónico. Otro usuario puede olvidarse por error de parchear un servidor en riesgo o configurar un permiso equivocado. Un error común de usuario es cuando alguien responde a un correo electrónico pensando que dicha respuesta es privada o que va dirigida a una breve lista de gente, pero en realidad está contestando a una amplia lista o, incluso, a alguien de quien se está hablando mal. Señalo estos errores de usuario por separado porque a veces ocurren y los hackers están preparados para sacar partido de ellos.

Acceso físico El saber popular dice que si un atacante tiene acceso físico a un activo, este simplemente lo robará todo (uf, tu teléfono móvil ha desaparecido) y lo destruirá o se saltará todas las protecciones para acceder a la información privada. Y esta percepción se ha demostrado bastante precisa hasta el momento, incluso contra las defensas que están explícitamente destinadas a proteger dicho activo ante cualquier ataque físico. Por ejemplo, muchos programas de cifrado de discos pueden ser vencidos por el atacante con un microscopio electrónico para obtener las claves secretas de protección identificando por separado los electrones que componen dichas claves. O la RAM puede congelarse con aire comprimido para traducir la clave secreta encriptada en texto sin cifrar debido a un fallo en la manera en que la memoria almacena físicamente la información.

Escalada de privilegios Cada hacker