The data that I need from Nessus is a complete list of the issues its raised, with affected hosts and ports listed under each finding. In this way, it is easy for me to discard irrelevant findings and to pinpoint every host in scope when I see that an issue is valid and important (and hopefully exploitable). Although this seems like a simple request, the mostly-broken Nessus web front end is incapable of providing this information in an easily accessible way. Don’t get me wrong: Nessus is great software. I just don’t like the new way that data is displayed through a Flash front end.
I am happy to announce that approval to release nbesort.rb to the world was granted, and the (open source) script is available on GitHub at https://github.com/davidshaw/nbesort.rb/
Using nbesort.rb to sort Nessus results by finding is very simple. The first step to using nbesort.rb is to login to the web portal and export your report as an NBE. This is the standard Nessus output, and the name of the script should help you remember to export .nbe instead of .nessus. nbesort.rb is a Ruby (command line) script, executed by running ruby nbesort.rb <your_nbe file>. The resulting text will output to stdout, so if you want to save to a file you just have to add >outfile.txt to the end.
I hope that nbesort.rb saves you a few minutes the next time you have to parse through a big Nessus output. Remember: every minute you save on the low-hanging fruit is another minute you get to spend banging away on the critical issues you’re so close to cracking. Happy scanning!




Zate,
Not at all! nbesort is far from a polished software product, just a useful script that we use internally when we can. Any improvements or additions would be more than welcome!
Pingback: Week 46 in Review – 2010 | Infosec Events
Pingback: Nessus Parsing… 101? « Security Aegis
You guys mind if I enhance this to support nessusV2 XML and connecting via xml-rpc ?
This will work on any NBE output (at least, that I’ve tested!)
It really saves me a lot of time when going through giant scan outputs.
Won’t this also work on non-Nessus tools that output NBE e.g. OpenVAS, PVS, etc? This is a nice idea, but it would be good to start incorporating these one-off tools into the actual tools. See if OpenVAS is interested.