1. Introduction

2. SWAN

  • 2.1) It's pretty big.
  • 2.2) Security Behind the firewall.

    3. Security Policies and Procedures

  • 3.1) Why policies in the first place?

    4. Securing System Services

  • 4.1) Software revisions
  • 4.2) IP spoofing, why it is important to know about it.
  • 4.3) R* services: rsh (rdist, rdump), rlogin
  • 4.4) Passworded access services: telnetd, rexecd, ftpd
  • 4.5) One time passwords
  • 4.6) The alternative: SSH
  • 4.7) Sun RPC (nfs, nis, nis+, secure RPC)
  • 4.8) A quick look at Kerberos
  • 4.9) Unauthenticated/guest services: anonymous ftp/WWW

    5. Tools to help you do the job.

  • 5.1) Where to get the tools.
  • 5.2) Auditing tools
  • 5.3) TCP wrappers/logdaemon, why you should use them

    6. Logging/auditing

  • 6.1) Syslog configurations
  • 6.2) Other logfiles
  • 6.3) How to handle your logs.
  • 6.4) Automate log reading.

    7. How we do things on SWAN

  • 1. Introduction

    This tutorial starts with an overview of Sun's Wide Area Network (SWAN), with an overview of the mostly internal threats faced behind the firewall and why they're not all that different from being outside a firewall in a large operation. We'll discuss what types of problems we face.

    We'll use that as a starting point to divide the subject in several topics. These topics are:
    1) Policies Procedures
    2) System configuration
    3) Tools
    4) Logging and Auditing

    We'll conclude with examples of how we apply this on SWAN

    2. SWAN

    2.1) It's pretty big.

    Sun's wide area network (SWAN) is a network on which 13,000+ Sun employees working on 40,000 network nodes. Although largely behind the firewall, these machines need to be protected from network threats. As part of world wide "Enterprise Network Services", the "Network Security Group" keeps a watchful eye over the security of all systems on SWAN.

    2.2) Security Behind the firewall.

    While many people may feel that there safe behind the firewall, in reality you're often not. There are a lot more connections to the outside than just the one firewall, we need to control them all.

    There are a lot of questions to be asked:

    1) Are all your users allowed to access all information?
    2) Can you trust all users to abide by the "acceptable use policies"?
    3) Should they connect modems outside our control?
    4) If there's one security breach, should the entire network fall prey to the hacker?
    5) Are people allowed to connect just everything to the net?
    6) What are we allowed to do when following up on an incident report?

    And many more.

    3. Security Policies and Procedures

    In this section we'll explain why policies are necessary and what kind of policies you may want to consider.

    3.1) Why policies in the first place?

    When you want to secure a network, you'll need to have some form of control. There are many items want to consider for control.

    First and foremost, you will want to control all access to your network, such as where dial-ins are and how they are used.

    And what OS configuration settings are acceptable and which are not.

    What system administrators are allowed to do when responding to an incident. (Is reading private files, email and such permissible and under which circumstances)

    When old accounts are removed

    Password control (one-time password, reusable passwords and when)

    4. Securing System Services

    In this part we'll talk about the systems services most under threat and what you can do to stand a better chance.

    Sometimes you'll be forced to make a choice: do I want ease of use or do I want security, and do I want the same for all my systems?

    Here's the ground rule: "Don't trust what you don't control"

    4.1) Software revisions

    We explain why keeping your software revisions current is important. Maintenance for old releases lags. Security problems in older revisions. This is not limited to OS software but also to free software, wu-ftpd various HTTP daemons, etc. It's even important when using client software, witness the security problems found recently in netscape releases.

    And how best to handle systems that cannot be upgraded because they run some "turn-key" or other application that prevents the OS from being upgrade, or because they run on unsupported hardware; just strip the OS.

    4.2) IP spoofing, why it is important to know about it.

    We'll talk about IP spoofing, the little that can be done about it. You'll need this further down.

    4.3) R* services: rsh (rdist, rdump), rlogin

    These services are open to gross misconfiguration or abuse by users. Why you should consider limiting access to these services.

    An important point here is; should I trust things beyond my control? (remote hosts, DNS, etc)

    At this point it should also be clear to the audience that IP address based authentication is vulnerable to spoofing.

    4.4) Passworded access services: telnetd, rexecd, ftpd

    The trend for the early nineties in hacking is "password snooping". Why reusable passwords over uncontrolled LANs and WANs are bad and what you can do about it.

    4.5) One time passwords

    How one time passwords help you to fight IP spoofing (you don't use IP addresses for authentication) and snooping (a password is used only once).

    We explain some of the options, ranging from free S/Key to for-money solutions as secure-id and Enigma DES Gold.

    Those solutions are still vulnerable to session hijacking.

    4.6) The alternative: SSH

    An alternative to the r* services and telnetd has been developed which has the easy of use of the r* commands, but much better security through the use of end-to-end encryption and publickey authentication.

    For SSH, all you need is two secure endpoints, as you can't hide data from the superuser at either end.

    4.7) Sun RPC (nfs, nis, nis+, secure RPC)

    Sun RPC suite of protocols is the most widely used set of protocols for remote procedures such as file access, name services etc.

    The protocol supports a number of authentication levels, unfortunately the most widely used one, AUTH_UNIX is easily faked. We'll discuss how you can make those services more secure and what the shortcomings are.

    And a peek in the future, how things will improve.

    4.8) A quick look at Kerberos

    A bird's eye view of Kerberos, its advantages and its drawbacks.

    4.9) Unauthenticated/guest services: anonymous ftp/WWW

    Dangers lurking with anonymous ftp and the web servers.

    5. Tools to help you do the job.

    5.1) Where to get the tools.

    We won't mention too many sites, but here's the main one to remember:

    The COAST Archive

    It a wealth of information.

    5.2) Auditing tools

    1) SATAN
    2) COPS
    3) ISS

    5.3) TCP wrappers/logdaemon, why you should use them

    1) access control - based on IP address
    2) logging - gives a lot of information.

    6. Logging/auditing

    6.1) Syslog configurations

    How can you use syslog most effectively and why it's sensible to centralize logging on a secure server.

    6.2) Other logfiles

    Syslog isn't the only mechanism used for logging. Many programs write to files.

    6.3) How to handle your logs.

    Of course, you'll need to inspect them on a regular basis.

    We'll explain where you should concentrate your efforts and why you shouldn't use Fred Cohen's headless chicken approach.

    Why you should watch for the unexpected, rather than the expected you know how to defend yourself against.

    6.4) Automate log reading.

    Logs should be pretty verbose, yet what you log is mostly noise.

    We'll explain how SWATCH allows you to be watch for interesting events. But we'll also give you a warning: the unexpected, unwatched events, may turn out to be the most interesting.

    7. How we do things on SWAN

    The final section sums up all most of what we've discussed using policies and implementations from SWAN as example.