NETWORK DEFENSE Australian Information Security / Cyber Crime Research & News

29May/1012

30 days with Nepenthes

Nepenthes - Low Level Interaction Honeypot

For a while I have needed to upgrade my home research lab environment. I have been running multiple Pentium 4 machines which is not effective in terms of the time spent setting up and deploying the systems, and also the large amount of power consumption.

So I decided to purchase a rack mount server and deploy VMware ESXi. I managed to pick up a Dell Poweredge 1950 1RU server for AU$900 with 2x Dual Core Xeon 5130's (2Ghz). To that I have added a further 8GB of DDR-2 ECC RAM, bringing the server up to 10GB in total.

Firstly, I must say WOW. ESXi and the vSphere Client has cut my deployment time down by such an amount that  the time it takes to deploy a system is negligible. Sure I spent a bit of time setting up my templates, and routing with Vyatta (I will expand on this topic in a later post). Overall the process has now gone from painful to painless.

Anyway enough of that, let's get back on topic. Now that my research environment had been upgraded I thought I would take it for a test run, deploying the Nepenthes honeypot for 30 days to see what kind of activity is captured. I will go into detail in a later post about my specific Nepenthes system configuration, but in short I run Debian Lenny 64bit (minimal) and use 'apt-get install nepenthes' to perform the install.  Always works like a charm.

The honeypot ran for 30 days in Eastern Australian IP space. Here is an excerpt from Andrew Waite of InfoSanity's submission2stats.py python script:

Statistics engine written by Andrew Waite - www.InfoSanity.co.uk
Number of submissions: 117
Number of unique samples: 34
Number of unique source IPs: 81
Days running: 30
Average daily submissions: 3

So as can be seen above, quite a bit of activity was captured. A breakdown of the number of malicious samples received per country is below:

Number of attacks per country resulting in a malicious sample

Here is the data above represented in a Geo Map:

Geo Map - Nepenthes Log Data May 2010

I was surprised with the country dispersion, I really didn't expect Japan to top the list.

The top five country's in order are:

  1. Japan
  2. Taiwan
  3. Malaysia
  4. India
  5. Australia / Thailand

Pie Chart - Percentage of malware from top 5 countries

Next I needed to run the binaries that had been captured through a virus scanner to see what was there. BitDefender is nice and easy to install on Debian as follows:

sudo nano /etc/apt/sources.list

Add the line:

deb http://download.bitdefender.com/repos/deb/ bitdefender non-free

Then the following commands to download and import the key, update APT, and then install BitDefender;

sudo wget http://download.bitdefender.com/repos/deb/bd.key.asc
sudo apt-key add bd.key.asc
sudo apt-get update
sudo apt-get install bitdefender-scanner

The scan can then be run shell, the log will be placed in your Nepenthes log folder (/var/log/nepenthes):

sudo bdscan --log=/var/log/nepenthes/scan.txt /var/lib/nepenthes/binaries

BitDefender detected 32 of the 34 samples as infected. The two samples that were reported as 'OK'  by BitDefender were uploaded to Virus Total to identify their type:

Totals:
Number of submissions: 117
Number of unique samples: 34
Number of unique malware types: 11

Pie Chart - Malware captured during May 2010

Some interesting information has been captured over the past thirty days. Nepenthes is a great tool for capturing malware and associated attack information. Over coming weeks I will pick a sample from the malware captured during this run & perform basic analysis of the binary. I am very new to reverse engineering but as the saying goes "Nothing ventured, nothing gained."

I have started this blog to help document research, tools and techniques. I am currently studying information security and have found a lot of value in postings by others who are also walking the info sec learning path.

Next on the radar:

- Cooper

958edd983aaa4de2cec1e9853bbb131a
df51e3310ef609e908a6b487a28ac068
3228f8bc721572422c268f244476dbb8
6378feddae2fe9570d7919432716d0e0
6e755ba02fb456765747fae6da02a98b
833cda5b5bef5989deb6bf57c557ce30
dde0a01dbd8171eb1a1cd3bc9cf9d166
f5fbd1189db83db22d7e6cdb55eed193
b41a774c2fbd7ceebbe3b56fc63bc83d
f8815cdca238ad5ab566f05f5a6335a4
69ae93394a325cc5cb926728bbd9cf50
e269d0462eb2b0b70d5e64dcd7c676cd
98eb0fdadf8a403c013a8b1882ec986d
3376c8ebbab4568ef395896e2af891c6
1d419d615dbe5a238bbaa569b3829a23
e421aa4513337102a1313b8f1f73512e
68ccb8c670c343c8c4c9330ab002e5a6
50ebb89fcadd1a18cf290b624c732e3b
50c6d3045d3490383ea7edfd8a8d8a03
f93424a924297d3649763b20706ece19
1af49e0cf3bf715d9055930a63d53566
14a09a48ad23fe0ea5a180bee8cb750a
4c6ed19a25e3fd467327338c6db1eb56
00cf8170cc43d294e9cfa45e13297738
954919ad5661e1b44803092360ac5d82
3875b6257d4d21d51ec13247ee4c1cdb
a31b955162ce160c869647e8444bb406
1f8a826b2ae94daa78f6542ad4ef173b
845658b526dbecfaa095094fb13c6f3a
2fa0e36b36382b74e6e6a437ad664a80
bb39f29fad85db12d9cf7195da0e1bfe
fd28c5e1c38caa35bf5e1987e6167f4c
cf263991bb889c28e6185ac4dd24668f
a6592850ee151a04c8f609f5f18827df
Comments (12) Trackbacks (1)
  1. Great write Cooper ! You should give dionaea a go as well. It is the successor on nepenthes. I have had some nice results from it.

    Cheers,
    Leon

  2. Thanks for the kind words Leon, appreciated! I will definitely be checking out Dionaea in the near future, have heard great things about it.

  3. Bro, your graph is so nice. What did you use to generate the graphs?

  4. Hi Najmi,

    The GeoMap was done using the Google Visualisation API – I then took a screenshot of the graph as its generated in Flash and I wanted iPhone users to be able to view it. The others were created in Excel. Hope that helps.

    Best Regards,
    Cooper

  5. hi, i installed nepenthes and left it ruuning for five days, i n which i collected some 15 binaries. I would now like to analyse them and use your submissions2stats tool on the logs.

    I am trying to run the .py file in my terminal. I cd’d to the location of the .py file and entered the following command: python submissions2stats.py

    Am i meant to give it an output file and if so how do i go about that?

    any help is much appreciated.

  6. i got it thanks

  7. Thanks Cooper,

    Can you please post the captured traffic samples/ shellcodes/ malware samples by Nepenthes so that I can know what is going on.

    Please

  8. Hi Ananth,

    Will send you the captured samples via yousendit later this evening. I have your email.

    Thanks for reading.

    Cooper

  9. Hi Darren,

    Apologies for the delay, been really busy lately… glad to see you got it going :)

    Cheers,
    Cooper

  10. Thank You Very Very Much…

  11. No worries, that has just been sent now – should have a notification from me shortly.

    Take care.

  12. Yah, I got it. but it is difficult to download it. My system deletes the file immediately. After long time of playing around security tools, I successfully did it.


Leave a comment

(required)