AlienVault R&D Labs Portal. Get the latest news from our research.
Header

Installer / updater coming :-)

February 15th, 2008 | Posted by DK in Installer - (Comments Off)

We’re proud to announce the soon-to-be-available 1.0.4 installer (versioning wise it could be 1.1 or even higher because of all of the changes but, well, we called it 1.0.4), both as a standalone ISO image as well as the updater.

We’ve been working very hard the past months on this, the updater has been a nightmare. It’s much easier to make an installer than an updater…

For those wanting to try it out, just download update.pl and run it on a 1.0 – 1.0.3 installed image (should work with the images we’ve released inbetween on the forums too). Be warned tho, we’re still on final testing phases and there might be some issues in there, any sort of testing will be more than welcome.

Basically the installer will backup all the databases and /etc/*, /usr/share/ossim*, install new packages (ossim 0.9.9), new deps (ossec, munin, fprobe) and tune some other things.

Anyway, as said, there are backups and it shouldn’t be too hard to get it back working if something fails.

A few hints if you’re going to try it out:

  • Default values for most of questions are fine. If unsure just press enter.
  • “auto” is the recommended way to go for new users, “expert” allows for a more fine grained setup.
  • We experienced occassional hangs at the munin plugin setup step. Had to kill the following process on another terminal in order to continue with the installation process
  • After everything has been installed you have to log in and upgrade the web part, it should work like a charm :-)
  • Right now requires internet access; we’ll publish an offline updater too of course

Check a sample installer output if you’re curious.




Get the 1.0.4 (beta) updater here.



Here is a more detailed list of the most important changes:



New software:

  • Included OSSEC (http://www.ossec.net/)
  • Included Munin for sensor monitorization (http://munin.projects.linpro.no/)
  • Included FProbe for high traffic environments (http://fprobe.sourceforge.net/)
  • OSSIM core upgrade
  • Included and updated bleeding snort rules



New features:

  • Intrushield plugin
  • Ntop connections being rewritten through the server, no need to open port 3000 to then anymore.
  • Partitioning switched to manual on installation
  • Database optimization code included
  • Added some database indexes for query speedup
  • Updater support
  • Experimental agent event consolidation
  • Agent event statistics



Updated features:

  • Updated realsecure/proventia plugin
  • Updated FW1 plugin
  • Update IIS plugin
  • Database types optimized
  • Updated pam_unix rules
  • Updated ssh rules
  • Updated cross correlation information



Bugfixes

  • Localization now working
  • Fixed some server issues

DK

Mr Wolf Wannabe.

More Posts - Website

This tutorial tries to show the first common steps you could perform if you’re new to ossim and just finished installation, without knowing what to do next.

The tutorial will cover:

  • Policies
  • Initial Inventory
  • Scans
  • Scheduled scans
  • What to do next

Many topics we’ll cover on this tutorial can be extended checking the documentation wiki.

BREAK

Asset definition: the quick way

Ok, first we should populate our asset database a bit. I’m pretty sure I know my home network/testing environment pretty well, but this could change on a larger scale network or an unknown environment.

The first thing I’ll do is to ask the administrator (that is, myself) about the networks we’ve got and which are directly or indirectly seen by ossim.

The answer is two networks:

  • Public/internal network, connected to the gateway. It’s a class C network in the 192.168.1.x range.
  • Private/internal network, the one served by my AP. It’s a class C network too but since dhcp assigns addresses starting at 10.0.1.2 and I’ve got only a couple of hosts I’ll choose a smaller network (/28)

Networks

So let’s start by adding those networks with a default priority and rrd profile, without nessus scanning activated:
(Image removed, broken link, I’m very sorry. DK.)

Networks are very important and you should define as many as you’ve got, even if ossim is not directly connected to them. This is because hosts defined in DB or belonging to a network are being treated differently and more information for them is being used (Passive OS and Service information only gets saved for defined hosts/hosts belonging to defined networks).

Network groups

Network groups are being used to aggregate information in case you’ve got many networks. In my case it’s ridiculous, but we’ve got customers with hundreds of networks where they couldn’t live without this feature :-)

You can group by any criteria you want, either division, building, network ranges, whatever:
(Image removed, broken link, I’m very sorry. DK.)

In this case we’re raising the threshold a bit since aggregated networks are supposed to raise more events than individual hosts / networks. 100 may be too low, but it’s a matter of practice / experience and varies for each environment.
Group information is specially useful for risk related panels, such as aggregated risk and riskmeter, preventing your pages from growing too much. Individual networks will be highlighted if their compromise or attack gets over their threshold:
(Image removed, broken link, I’m very sorry. DK.)
Hint: If you click on the colored area of the risk graph you’ll be redirected to the hosts involved in that risk peak. If you click on the host you’ll get redirected to the event listing that has created that risk situation.
(Image removed, broken link, I’m very sorry. DK.)

Netscan

So, next we would like to define a couple of hosts in order to personalize their asset information and to run reports and scans on them, and not on the entire network.

Hosts can be inserted manually as we’ll see on the next point, but it’s much easier to let ossim scan them using nmap and give some default data for all of them to be inventoried. Again my example is a bit short on hosts (only two), but think about a bunch of class C networks and the work you could save.

So we get to tools->netscan, select our private network and voila:
(Image removed, broken link, I’m very sorry. DK.)

Note: depending on the size of your network this may take a while, and an php timeout would make this page unusable. You might want to increase php’s max data size and session expiration.

Hosts

Since I don’t really want to wait for a scan on my other class C network I’ll insert them manually, as seen on the next images.
(Image removed, broken link, I’m very sorry. DK.)

As an added benefit, you’ll be able to see all the collected information about each host you define here:
(Image removed, broken link, I’m very sorry. DK.)

Groups

Now we’ll do our first nessus scan. Let’s scan only the workstations, leaving the gateways untouched. We could enable them one by one, yes, but again that can get tiring for many hosts. The ideal solution is to create groups (you can create as many as you wish, having hosts in different groups too) so you can later on apply separate scan types and schedules on them.

Let’s create a simple one, as said, only workstations: (we’ll use it later)
(Image removed, broken link, I’m very sorry. DK.)

OCS Inventory

Having extended inventory information from your hosts is also useful. See the old tutorial on OCS for more information on how to setup OCS. Hint: execute the installer as part of your logon scripts on a domain, that way you’ll get a lightning fast inventory of your whole network.

Nessus Scan

Using the group we created before, we’ll check how vulnerable my workstations are.
(Image removed, broken link, I’m very sorry. DK.)

Unf, 8. That’s not much, but taking into account that each vulnerability can have a level ranging from 0 to 10, I should look at the reports by clicking on the host.
Aaah, almost forgot it. Since my vulnerability_incident_threshold at configuration->main is set to “0″, every vulnerability with level 0 or higher will create a new incident too, as we can see here:
(Image removed, broken link, I’m very sorry. DK.)

Note: Vulnerability incidents are able to handle false positives too. If you close it and tag it as false positive, it won’t be opened on the next scan. But be warned, if you close it and it’s not tagged, it will get opened again next time. That way you’ll can happily close the incident when your sysadmin says he’s patched the hole, knowing that if he has lied he’ll have that incident on the table next month again :-)

(Image removed, broken link, I’m very sorry. DK.)

Hint: you can check to see if the scan is actually working by grepping on the agent, since the information shown during scan ain’t very verbose.

Hint2: Nessus scan is distributed, that is, ossim tries to find the sensor associated to the target in order to scan from there.

ossim:~# ps ax | grep nessus
 2536 ?        Ss     0:00 nessusd: waiting for incoming connections
 6600 ?        S      0:00 /usr/bin/nessus -c /usr/share/ossim/www/vulnmeter/tmp/.nessusrc
-x -T nsr -q 10.0.1.50 1241
/usr/share/ossim/www/vulnmeter/tmp/sensors/10.0.1.50.targets.txt
/usr/share/ossim/www/vulnmeter/tmp/sensors/10.0.1.50.temp_res.nsr
 6606 ?        Ss     0:03 nessusd: serving 10.0.1.50
 6614 ?        S      0:00 nessusd: testing 10.0.1.3
 6615 ?        S      0:00 nessusd: testing 192.168.1.33
 6618 ?        S      0:00 nessusd: testing 192.168.1.33 (/var/lib/nessus/plugins/nessus_tcp_scanner.nes)
 6619 ?        S      0:00 nessusd: testing 10.0.1.3 (/var/lib/nessus/plugins/nessus_tcp_scanner.nes)
 6625 pts/0    R+

Schedule scans

Finally, let’s leave a scan scheduled to execute once a month:
(Image removed, broken link, I’m very sorry. DK.)

Final words

That’s all for today, it may shed a bit of light on some easy to use, basic features of ossim. If you followed these steps you can be pretty sure that you’ll start getting more and more useful information out of the system.

Check the monitors, reports and dashboards and you’ll see how your asset information starts to affect all the indicators.
(Image removed, broken link, I’m very sorry. DK.)

The next thing I’d recommend is checking out the tools at “Tools->Downloads” and install ossec and ocs, in order to get even more information out of your network’s hosts.
(Image removed, broken link, I’m very sorry. DK.)

DK

Mr Wolf Wannabe.

More Posts - Website

Tutorial 1: Host Inventory using OSSIM

November 25th, 2007 | Posted by DK in Tutorials - (2 Comments)

This post will be the first of a series of tutorials describing how to accompliush certain useful things using OSSIM. A friendly IT teacher from Oklahoma suggested that it would be a good idea, and I have to agree. And on top, it’s relaxing :-).

So here we go, this first installment will focus on deploying OCS Inventory on a couple of hosts, getting them to log to the central ossim server and see how it shows up in our interface. This will demonstrate the powerful cross-platform inventory capabilities built into ossim thanks to the new OCS integration.

The test environment consists of 6 devices:

  • Apple 10.5 Leopard
  • Debian 4.0 Linux inside Parallels
  • IPhone MacosX
  • OpenBSD 4.x
  • Windows XP inside Parallels
  • Yellow Dog Linux running on a PS3

BREAK

Step 1: Check out how our freshly installed image is performing

After logging into the interface we first check the specific Inventory tab at the executive panel, seeing how it is currently empty:

(Image removed, broken link, I’m very sorry. DK.)

Next, we go to Reports -> OCS Inventory and also see how it is (still) empty:

(Image removed, broken link, I’m very sorry. DK.)

Step 2: Start installing the agents. Windows.

During step two we’ll install the ocs Agent on windows. The ossim installer already rewrites the ocs package with the server IP you’ve configured during installation, so actually deploying agents is very simple.

First we’ll go to Tools -> Downloads in order to get the pre-configured installer package. As you may notice on this screenshot, I’ve created a very restricted user with no permissions, he just can see and fetch things from the download page.

(Image removed, broken link, I’m very sorry. DK.)

After downloading we open up the compressed file and execute the “install.bat” script. This should go on pretty fast and will install and enable OCS on the system.

(Image removed, broken link, I’m very sorry. DK.)

By default, ocs schedules itself to run on a daily basis (not 100% sure aabout this) so at first you won’t get any inventory. Anyway, since I’m more of the impatient kind I want to force it.

In order to force an inventory we must execute “inventorize_now.bat” after installation. It can be done from the zip already, as shown below:

(Image removed, broken link, I’m very sorry. DK.)

And voila, there we’ve got our first inventoried host and it’s detail:

(Image removed, broken link, I’m very sorry. DK.)

Step 3: Continue installing the agents. Debian Linux.

Our next step will will involve installing the OCS agent on the ossim server itself. Since we’re on the filesystem we can just copy the included agent package to some tmp directory, uncompress it, install everything and there we go. Here is the complete log of what I’ve done.

And, the resulting host will appear on our list, and it’s detail:

(Image removed, broken link, I’m very sorry. DK.)

Step 4: Continue installing the agents. Macox (including IPhone).

Since only Windows and Linux agents are included with the installer, you have to find ocs inventory agents for other systems from the contrib page. It is linked from Downloads->Tools for easy reference.
Here you can see how it looks like, we’ll be using the MacosX agent for this step and the unix agent for the next one (ain’t it pretty?):

(Image removed, broken link, I’m very sorry. DK.)

Now to the bad news. I tried to get it running but the current version doesn’t work on Leopard, nor does it work on the iPhone either (not even exporting the xml inventory to another host, though iPhone does run php).
So, here you can see my efforts but after skimming over the forums I don’t thing I’ll waste much time on this right now. Pretty sure the author will come up with a leopard compatible version at some time. Check the post at the bottome of this link for more information, you might be luckier than I’ve been.

Step 5: More agent installation. Openbsd.

This one has been pretty straightforward. Downloaded the unix version, had curl and libxml2, pointed at the right zlib path and there we go. Here is the log

And the PoC:

(Image removed, broken link, I’m very sorry. DK.)

Step 6: Inventory of a PS3. YDL.

Since the ocs agent installer provides all the needed deps, this was straightforward too and very similar to the other linux one, so no log included. The PS3 is actually quite an impressive linux platform btw :-)

(Image removed, broken link, I’m very sorry. DK.)

Final Step 7: Conclusion

So there we go, if everything had gone well now I’d have had every host surrounding me inventoried. Sadly there was that minor macosx glitch, but I had it running on Tiger and I assure you it works.

Our final setup looks like this:

(Image removed, broken link, I’m very sorry. DK.)

And… do you remember the empty inventory graph section at the beginning ? well, as expected, now it’s got some data in it:

(Image removed, broken link, I’m very sorry. DK.)

I hope you enjoyed this first tutorial, if you like it please leave a quick comment below, since I’m just testing if all this blogging thing makes sense to me any feedback will be welcome.

DK

Mr Wolf Wannabe.

More Posts - Website

Installer updates.

November 24th, 2007 | Posted by DK in Installer - (Comments Off)

Let’s get a first meaningful update running too.

We have been working hard these last weeks to get the installer out and polish some outstanding issues. After the initial releases, our priorities are now focused on:

  • Get an updater done (will be included with 1.0.4)
  • Fix some remaining issues (two persons have reported hangs at specific OS installation stages)
  • Allow for easy installation of specific graph plugins depending on scenario (ISO, Inventory, Nessus, etc…)

This last point has been evolving a lot and adding new custom graphs to the panel is as easy as ever. Check the screens below (once I’ve got them uploaded :-) ).



(image removed, broken link, I’m very sorry. DK.)

In the meantime, we preinstalled OSSEC (thanks Daniel for your help), fixed the Nagios plugin, fixed rrd_plugin which was missing a config line and added Munin to the sensor pages for performance monitorization.

DK

Mr Wolf Wannabe.

More Posts - Website