10 junio 2015

Libro: Mastering the Nmap Scripting Engine


Hacía tiempo que mi amigo Paulino Calderón, autor de la obra Nmap 6: Network Exploration and Security Auditing Cookbook, del que ya hablamos tiempo atrás en SbD, había anunciado que tenía entre manos la publicación de una segunda parte mucho más avanzada.

De mano de la misma editorial, PACKT Publishing, me hicieron llegar un par de ejemplares, y pude comprobar que efectivamente, el nivel es muchísimo más alto. Podría decirse que es una continuación del primer libro.

Respecto al contenido cubierto, podría decirse que el límite lo pone la creatividad del lector. Paulino, únicamente nos da las guías de programación en LUA para ser capaces de que el motor de NMap, interactúe con plugins NSE escritos por nosotros mismos y que podamos personalizar todo lo que queramos, confiando en la estabilidad y eficiencia que nos da el propio Nmap. 

Lo que está claro es que Nmap, es una de las herramientas más populares para detectar versiones de aplicaciones, así como para hacer fuerza bruta sobre servicios expuestos. Muchas veces pasa que, dada la naturaleza de la aplicación analizada, no existe una herramienta que tenga la capacidad de aprendizaje suficiente, o simplemente no es válida para la versión con la que te estás pegando, y toca buscar algún workaround. Con NSE, es posible desarrollar el código necesario para que lo que implementemos sea útil para la comunidad, pudiendo contribuir al proyecto NMap con los plugins que hagamos. 

El libro explica de una forma bastante gradual, los "basics" de LUA para ser capaz de codificar scripts plenamente funcionales. A lo largo de la obra se destripan varios scripts que ya incluye Nmap, relacionados con diferentes fases de un pentest. Así se puede ver explicado el funcionamiento de scripts de fingerprinting de aplicaciones web o bases de datos, como de ataques de fuerza bruta y tratamiento de credenciales que hace Nmap. 

Se detalla también el desarrollo de script que conlleven el directo tratamiento de sockets, a la hora de manipular y crear paquetes de red, especificando los valores que deseemos, para analizar la respuesta del servicio analizado. 

Una de las bondades de Nmap es su velocidad de trabajo, cuando se paraleliza en diferentes hilos de ejecución los escaneos. En el libro se explica también cómo llevar a cabo este tratamiento para que nuestros scripts, además de ser efectivos, sean también eficientes en la ejecución, y nos den un resultado válido en el menor tiempo posible.

En mi opinión, el libro de Paulino es muy recomendable si tu día a día son las auditorías y el pentesting, o si tienes gran interés en aprender sobre redes y la pila TCP/IP. Particularmente en estos casos, es cuando creo que más se le puede sacar el preciado jugo a este libro.

Eso sí, quizá no lo recomendaría a gente no técnica, o con falta de voluntad a la hora de aprender un nuevo lenguaje de programación. El libro es bastante técnico y enfocado a que el lector alcance el séptimo sentido en la utilización de Nmap. 

Mi recomendación es no leer un libro de este tipo del tirón, sino ir haciendo ejercicios y poniendo en práctica lo aprendido/leído, con el fin de asentar los conocimientos e ir automotivándote al ver como madura y evoluciona tu propio aprendizaje.

Aprovecharé que, si Dios quiere, veré a Paulino en Colombia en Septiembre, en el evento de seguridad DragonjarCON, para que me dedique mi copia!   

Lo podéis comprar vía Amazon, en papel o kindle. Si alguien de Madrid quiere echarle un vistazo primero para ver si le interesa, no tengo ningún problema en que lo haga con la unidad que me enviaron.




20 comments :

asasd dijo...

spam

Lorenzo Martinez dijo...

Gracias por tu valioso comentario,... Anonimo cobarde!

asasd dijo...

que yo sepa no te he insultado. El libro lo tengo, por cierto, pero esto es spam

Lorenzo Martinez dijo...

Yo a tí tampoco te he insultado. Simplemente he dicho que eres un anónimo cobarde por no tener cojones de firmar con tu nombre un comentario que sabes que no es positivo :)
Si de verdad tienes el libro, puedes dejar un comentario con tu crítica al mismo, sea bueno o malo respecto a tu opinión de lo que en él se cuenta...

asasd dijo...

no veo necesario tener que poner mi nombre para exponer lo evidente. Me parece ruin publicar un post de publicidad sobre un libro y luego tener los cojones de decir que no es publicidad. Por que lo es. Aunque por otra parte estáis en vuestro derecho de lo que queráis con vuestro blog.

Lorenzo Martínez dijo...

Pues créeme, ruin es no tener los cojones de poner quien eres (o un nick) y decírmelo de forma directa. Si no hubiera dicho que Paulino Calderón es amigo mío, ¿seguiría siendo spam? Si hubiera dicho que no me ha gustado, ¿dejarías de verlo así?
Créeme que si me tomo la molestia en hacer la crítica a un libro, es porque en algún punto me ha parecido recomendable para alguien. ¿Para tí no porque eres un crack? Puede ser, pero si a alguien le parece útil la crítica, bienvenido sea... Si para tí no lo es, me la pela, pero al menos pongo mi nombre y apellidos en la firma de mis posts y mis comentarios, para que sepas quien te contesta... No hacerlo, como tú, es ser un cobarde y no tener huevos.
Y tú dirás,... "nooo es por defender mi privacidad y no publicar mi nombre en este blog". Ok, entonces, ten dos cojones y escríbeme un correo y lo discutimos de forma privada (por tu privacidad, no por la mía),... pero vamos, que no pasará ;)
Así que nada, trollea lo que quieras, que me da lo mismo :D
Buenas tardes "desconocid@"

asasd dijo...

me parece surrealista tener que enviarte un correo para discutir una cuestión totalmente irrelevante como es ésta. Me alegro mucho de que seas amigo de Paulino Calderón, yo también le sigo un twitter y al igual que tú me parecéis ambos unos fenómenos. Pero independientemente de eso, creo que te importa demasiado la opinión de un anónimo. Te picas rápido por algo insustancial. A mí me parece muy bien que para ti esto no sea spam, a mí eso también me la pela. Pero cualquier persona que sepa leer y acuda a cualquier fuente de información que contenga una definición de spam y luego venga aquí a leer este post, estará totalmente de acuerdo conmigo. Saludos

Lorenzo Martínez dijo...

Spam, según wikipedia, es "Los términos correo basura y mensaje basura hacen referencia a los mensajes no solicitados, no deseados o con remitente no conocido (correo anónimo), habitualmente de tipo publicitario, generalmente enviados en grandes cantidades (incluso masivas) que perjudican de alguna o varias maneras al receptor".

- "Mensaje no solicitado" -> Eres tú quien se conecta al blog para leer lo que ponemos. A no ser que estés suscrito por correo (que también lo habrías solicitado tú), nosotros no te enviamos nada :D

- "Remitente no conocido" -> Creo que está bien claro quién soy, y que me identifico al firmar el post y contestarte (cosa que tú no haces)

- "Habitualmente publicitario": En este caso, es una crítica de un libro, con sus partes buenas y con sus partes no tan buenas (y lo digo en el post -> léetelo y verás que es cierto)

- "Enviados en grandes cantidades" -> AFAIK 1.

- "Que perjudican de alguna o varias maneras al receptor" -> Pues si al receptor le perjudica mi post, le pido disculpas, pero como bien dices, es nuestro blog, y publicamos las cosas que consideramos oportunas. Si tienes algo que aportar al blog, ya sabes dónde escribirnos, analizaremos lo que nos envíes y si nos resulta interesante, lo publicaremos.


No me pico rápido por algo insustancial... Me molesto en contestarte, que es diferente.

asasd dijo...

Deberías haber leído hasta el final:

Spam aplicados en los blogs

Es una técnica de correo basura relativamente nueva, que surge con el auge de los blogs. Consiste en dejar un comentario en una entrada, que por lo general no tiene nada que ver con la misma sino que tiene enlaces a sitios comerciales, o promociona algún producto.



encaja perfectamente con esta entrada

Lorenzo Martinez dijo...

No. Como bien intentas indicar (lee bien lo que pones) -> "Consiste en dejar un comentario en una entrada que tiene enlace a sitios comerciales o promociona algún producto".
Yo no dejo un comentario con un link a ningún producto, sino que escribo el post completo :D

asasd dijo...

Es aplicable también a entradas de blog, se sobreentiende.


[...] "promociona un producto". Tú incluso llegas a enlazar con amazon para que la gente compre el libro directamente. No me jodas, más claro agua

Lorenzo Martínez dijo...

Igual que he hecho en muchas ocasiones en las que la gente pueda estar interesada en probar o adquirir algo de lo que hayamos hablado en el blog...
Cuando de lo que estemos hablando sea gratuito, enlazamos el source para que te lo bajes. Y cuando es de pago, enlazamos al sitio donde se puede comprar si se desea... ¿Normal, no?
Si te estuviera vendiendo algo no relacionado con seguridad en un blog de seguridad, sería comprensible tu apreciación.... Pero ¿un libro de nmap?

asasd dijo...

Claro que es totalmente normal Lorenzo y legítimo. Pero es spam. Revisa la definición. Tú mismo la describes en tu comentario

sampy dijo...

A parte de la discusión que aporta cero, creo que puede ser un buen libro de cabecera para como bien dice Lorenzo ir viendo conforme te hace falta buscar algo o ir poco a poco.

Gracias por mostrar este tipo de cosas Lorenzo

Lorenzo Martínez dijo...

IMHO, no es spam

Lorenzo Martínez dijo...

Muchas gracias Sampy por tu apoyo!
Compartiré con los lectores la crítica de todo aquel libro, película o serie relacionada con la temática del blog, que considere de interés para vosotros. Por respeto al autor y/o editorial que corresponda, no hablaré sobre libros de esta temática, que haya leído y me hayan parecido infumables o no recomendables.
El objetivo es que a quien lea lo que escribimos le aporte en menor o mayor medida. Si es así, aunque sólo haya un comentario de valor en este post, me doy por satisfecho!
Saludos,

ollupacre dijo...

Bueno, calma hombre, tampoco es para tanto. Sea spam o no, este es tu blog y puedes poner lo que te salga de las narices y por otro lado poner un comentario que solo dice: spam, son ganas de incordiar sin aportar nada, que es algo que ya aburre, porque digo yo, un blog como este es una fuente de conocimiento, y una respuesta que no porte nada de valor es ensuciar y trollear.
Aparte del rifirafe, quería preguntarte si sabes porque no hay una versión en castellano de estos libros, la verdad me sorprende; entiendo que se saque en ingles por el mercado potencial, pero coño es que el latino es un mercado muy grande también. Me jode porque mi nivel de ingles me permite leer con cierta soltura, pero estos libros tan técnicos, si no se es bilingüe se hacen demasiado pesados. Siendo el autor castellano-parlante...
Salu2!

Uno que tal dijo...

Don't feed the troll

Fabricio dijo...

Llegue a este post porque me interesa aprender mas sobre nmap, pero lo primero que leí fue una demostración sin fin sobre quien tiene razón o no sobre un tema totalmente irrelevante para el post, termine escribiendo este comentario, por supuesto, sin leer el post, no se si agradecer o lamentarme, en fin... saludos

Lorenzo Martínez dijo...

Lamento que el post no te haya servido para lo que buscabas :/