Nmap Development mailing list archives

Re: Getting started with NSE


From: Brandon Enright <bmenrigh () ucsd edu>
Date: Tue, 23 Mar 2010 23:00:35 +0000

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Tue, 23 Mar 2010 15:46:00 -0400
Patrick Donnelly <batrick () batbytes com> wrote:

Hello Raja,

On Tue, Mar 23, 2010 at 3:01 PM, raja naresh <rajanaresh89 () gmail com>
wrote:
I have been using nmap for a while now and I really want to get
started on the development side. I was not tracking any
developments of nmap until now and it's really interesting to know
that nmap has already support for scripting engine. Not sure if
this was already available in the version I was using (nmap-5.00)
but anyway, I already came to know about some of the details of NSE
from the GSoC page and I would be obliged if anyone could elicit
the reasons for choosing lua as the scripting language interface.
Anyone with any information or pointers to the developers list
where the decisions took place are really appreciated.

I don't know if you'll find any reasons in the mailing list archives
but a brief reasoning is provided in the NSE chapter of the Nmap
Scanning Book [1].

I am a student and I am really looking forward to integrating a
high level scripting language such as python. I am thinking of it
to be my idea for my application for GSoC. Any sort of help is
welcome and appreciated.

Python is not intended for use as a scripting language in the
traditional sense. It is better suited for high-level application
development (which we do use it for, in Zenmap).

[1] http://nmap.org/book/nse-language.html


There was a lot of discussion about language choices in 2006.

http://seclists.org/nmap-dev/2006/q2/


Diman Todorov did the initial work.  See:

http://seclists.org/nmap-dev/2006/q2/136


And this thread for a discussion of languages:

http://seclists.org/nmap-dev/2006/q2/227


But in short, when Lua was chosen I think most people had a quizzical
look on their face.  I suspect most people weren't sure if it was the
"right" choice or not.  I think hindsight has shown us though that it
*was* and *is* the right choice.  I think Ron and Kris and others have
been very happy with Lua.

Many people don't know this, but Lua is the embedded language in World
of War Craft and in Second Life.

People have obviously done great things with those games.  With the
work of Patrick and others Nmap NSE has added quite a few useful
Lua bindings for Nmap internals.

When you know another language by heart like Perl or Python you can't
help but wish everything were in that language ;-)  I think everyone
who has used NSE will tell you it is worth learning something new
though.

Brandon

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.14 (GNU/Linux)

iEYEARECAAYFAkupSBkACgkQqaGPzAsl94KneACgspe0RIcDgF+RF9AMZ3nlJUut
VxYAnR2rbAQvRcyOxZNDkBovloySo6at
=m0Dv
-----END PGP SIGNATURE-----
_______________________________________________
Sent through the nmap-dev mailing list
http://cgi.insecure.org/mailman/listinfo/nmap-dev
Archived at http://seclists.org/nmap-dev/


Current thread: