Please check the status of this specification in Launchpad before editing it. If it is Approved, contact the Assignee or another knowledgeable person before making changes.

Summary

This spec defines the Ubuntu Security Core, an Ubuntu meta-package that configures the Ubuntu installation to provide core security monitoring and defenses for a network.

Rationale

Recent participation at the Second National Collegiate CyberDefense Competition has allowed the gathering of much data. Prominently, the deployment of competent network security solutions requires large amounts of time-consuming effort. Firewall, intrusion detection, intrusion prevention, scanning, and patch management services take time to set up and manage, and provide hurdles for new users learning them. We should supply a network monitoring and defense solution with installation and configuration complexity on par with modern Web-based content management systems.

Use cases

There are several.

Scope

The initial scope includes several essentials:

Also consider major monitoring systems that overlap:

An administrator should be able to install and use all tools easily. Consider, Prelude, Prewikka, and OSSEC-BASE, which require manual database population et al; compared to content management systems like Joomla or a Snort monitor program like BASE that walks you through.

Prelude is a standard, recognized by several books (http://books.google.com/books?q=prelude+ids&btnG=Search+Books&as_brr=0) and is the most advanced IDMEF IDS (http://tools.ietf.org/rfc/rfc4765.txt) compliant. It also has commercial support.

OSSEC-HIDS, according to Linuxworld, has also gained acceptance in the enterprise.

OSSIM has an interesting correlation engine that relates attacks and vulnerability scans to prioritize alerts; and also monitors host behavior to determine probability of compromise.

Design

The system should include the above basic scope elements. A guided configuration program should allow easy addition of given software and rapid configuration.

No assumptions on other functions of the system should occur; Web applications, for example, should use separate VirtualHost configurations in separate files, included from the main Apache configuration.

Implementation

Implementation should interact with upstream as much as possible. Either give priority to writing code in such a way as to improve the products rather than tack on hackish configuration scripts; or work with upstream and have them do some of the code as well. Consider the following:

Code

Data preservation and migration

Unresolved issues

BoF agenda and discussion

Root Concepts

The root concept of this spec comes from experience at the Second Regional Collegiate CyberDefense Competition. In this scenario, we were exposed to heavy attack on vulnerable operating systems and services of questionable initial configuration. During this attack, management continuously injected short-term business tasks such as installing bugzilla, adding users, or configuring SugarCRM and migrating 4000 osCommerce users to it as customers.

Initial plans included utilizing snort on an iptables firewall. The firewall blocked all non-essential services from the outside as well as non-essential internal communication. The IDS gathered attack information from internal and external traffic making it through the firewall.

We found that configuring and installing snort takes a long time. Building in the IPS module proves difficult; tuning and rewriting rules consumes large amounts of time. Combined, we can't do it in three 8-hour work days.

Configuring a management console proves extremely difficult. BASE does not work without snort MySQL logs. Prelude-IDS would work as a log monitor, if any of us knew how to configure it. No quick install for Prelude-IDS seems to exist; although a careful reader can easily digest the instructions, a good hour of reading goes into configuring Prelude-IDS. High level concepts such as creating an X.509 signed certificate; installing the prelude-lml sensor; or configuring snort as a Prelude-IDS sensor translate to low-level commands and manual configuration.

The /var/log/secure log file exposed several attacks; /var/log/cron exposed a back door using netcat. Careful analysis of /etc/passwd and /etc/shadow exposed two extra root accounts with passwords. Locating the exact path to the cron script proved extremely difficult; /etc/crontab did not mention /var/spool/cron.d/. A combination of prelude-lml log auditing and a security baseline analysis tool to list cron script, additional root accounts, and the like on a given machine would have helped tremendously.

Based on these results, we can make the following conclusions:

Extra Software

Further scope should include more, mostly stuff that no one wrote yet:


CategorySpec

UbuntuSecurityCore (last edited 2008-08-06 16:18:39 by localhost)