Nmap Development mailing list archives

MongoDB scripts


From: Martin Holst Swende <martin () swende se>
Date: Tue, 19 Jan 2010 21:15:00 +0100

Hi all,

I have put together some scripts for gathering info from MongoDB.
MongoDB is a NOSQL database (http://www.mongodb.org/display/DOCS/Home )

From the home-page :
"MongoDB (from "humongous") is a scalable, high-performance, open
source, schema-free, document-oriented database. "

It runs normally over port 27017, but has no probe or matchline (no
existing probe triggers any response).

The scripts I have written are :
- bson.lua library for handling BSon (binary json) - not complete (some
data types not implemented)
- mongodb.lua library for speaking mongodb's binary protocol
- mongodb-query.nse - script which does some basic info-getting, build
info, uptime and version information.
- mongodb-get-tables.nse - script which gets tables info from the db.

As of yet, no authentication is implemented. As I am quite new to lua
and nse, feedback is welcome.

The scripts can be downloaded from my mercurial repository at:
http://martin.swende.se/hgwebdir.cgi/nsescripts/

Output from scripts :

nmap localhost -v  -p 27017 --script "mongodb-query.nse"
[...]
PORT      STATE SERVICE
27017/tcp open  unknown
| mongodb-query:
|   MongoDB Build info
|     ok = 1
|     bits = 64
|     version = 1.1.4-
|     gitVersion = 86b713fdffabbd2097cb7907fc9395d6bea63630
|     sysInfo = Linux ofc-n1.10gen.com 2.6.23.17-88.fc7 #1 SMP Thu May
15 00:02:29 EDT 2008 x86_64
|   Server status
|     mem
|       resident = 3
|       virtual = 161
|       mapped = 32
|     ok = 1
|     globalLock
|       ratio = 2.5571633653342e-05
|       lockTime = 167031
|       totalTime = 6531886162
|_    uptime = 6531

nmap localhost -v  -p 27017 --script "mongodb-get-tables.nse"
[...]
PORT      STATE SERVICE
27017/tcp open  unknown
| mongodb-get-tables:
|   ok = 1
|   databases
|     1
|       empty = false
|       sizeOnDisk = 83886080
|       name = test
|     0
|       empty = false
|       sizeOnDisk = 83886080
|       name = httpstorage
|     3
|       empty = true
|       sizeOnDisk = 1
|       name = local
|     2
|       empty = true
|       sizeOnDisk = 1
|       name = admin
|_  totalSize = 167772160

_______________________________________________
Sent through the nmap-dev mailing list
http://cgi.insecure.org/mailman/listinfo/nmap-dev
Archived at http://seclists.org/nmap-dev/


Current thread: